/* RussNews user/admin UI v19
   Standalone design system for authenticated screens and modern auth forms.
   Legacy gallery/file pages keep their original style.css/adaptation.css and are not touched here. */

:root{
  --ui-bg:#050c14;
  --ui-bg-soft:#07111c;
  --ui-panel:#0a1723;
  --ui-panel-2:#0d1d2b;
  --ui-panel-3:#102538;
  --ui-line:rgba(151,195,225,.12);
  --ui-line-strong:rgba(120,201,249,.22);
  --ui-text:#f3f9fd;
  --ui-text-soft:#c7d7e2;
  --ui-muted:#7f96a7;
  --ui-muted-2:#5f778a;
  --ui-blue:#2aa7ff;
  --ui-cyan:#5bd8ff;
  --ui-green:#49d69a;
  --ui-red:#ff6f87;
  --ui-amber:#ffbf66;
  --ui-radius:22px;
  --ui-radius-sm:14px;
  --ui-shadow:0 24px 80px rgba(0,0,0,.28);
  --ui-max:1380px;
  --ui-header:74px;
}

/* ---------- Core authenticated shell ---------- */
body.rn-auth-body{
  margin:0;
  min-width:320px;
  background:
    radial-gradient(circle at 12% -10%,rgba(32,144,235,.13),transparent 32%),
    radial-gradient(circle at 90% 3%,rgba(70,215,255,.065),transparent 27%),
    var(--ui-bg);
  color:var(--ui-text);
  font-family:Inter,Manrope,"Segoe UI",Arial,sans-serif;
  font-size:15px;
  line-height:1.5;
  overflow-x:hidden;
}
body.rn-auth-body.rn-overlay-open{overflow:hidden}
body.rn-auth-body *{box-sizing:border-box}
body.rn-auth-body a{color:inherit;text-decoration:none}
body.rn-auth-body button,
body.rn-auth-body input,
body.rn-auth-body textarea,
body.rn-auth-body select{font:inherit}
body.rn-auth-body button{color:inherit}
body.rn-auth-body svg{display:block}
body.rn-auth-body img{display:block}
body.rn-auth-body code{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}
.rn-auth-main{min-height:calc(100vh - var(--ui-header));min-height:calc(100dvh - var(--ui-header))}
.rn-page-wrap{width:min(var(--ui-max),calc(100% - 48px));margin:0 auto;min-width:0}
.rn-page-wrap--narrow{width:min(980px,calc(100% - 48px))}
.rn-app-page{padding:42px 0 64px}
.rn-surface{background:linear-gradient(155deg,rgba(13,30,45,.97),rgba(7,18,29,.98));border:1px solid var(--ui-line);box-shadow:0 18px 55px rgba(0,0,0,.14)}
.rn-eyebrow{display:block;color:var(--ui-cyan);font-size:11px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}
.rn-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:28px}
.rn-page-heading>div{min-width:0}
.rn-page-heading h1{margin:7px 0 6px;color:#fff;font-size:clamp(31px,3vw,46px);line-height:1.03;letter-spacing:-.04em;font-weight:850}
.rn-page-heading p{margin:0;max-width:700px;color:var(--ui-muted);font-size:14px;line-height:1.65}
.rn-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:42px 0 18px}
.rn-section-heading h2{margin:5px 0 0;font-size:24px;letter-spacing:-.025em;color:#fff;font-weight:800}
.rn-section-heading p{margin:0;color:var(--ui-muted);font-size:13px}

/* ---------- Header ---------- */
body.rn-auth-body .rn-app-header{
  position:sticky;top:0;z-index:500;height:var(--ui-header);
  border-bottom:1px solid var(--ui-line);
  background:rgba(5,13,22,.86);
  backdrop-filter:blur(22px) saturate(135%);
}
body.rn-auth-body .rn-app-header__inner{width:min(var(--ui-max),calc(100% - 36px));height:100%;margin:0 auto;display:flex;align-items:center;gap:22px;min-width:0}
body.rn-auth-body .rn-app-brand{display:inline-flex;align-items:center;gap:9px;flex:0 0 auto}
body.rn-auth-body .rn-app-brand img{width:35px;height:44px;object-fit:contain}
body.rn-auth-body .rn-app-brand>span{font-size:23px;line-height:1;font-weight:870;letter-spacing:-.045em;white-space:nowrap}
body.rn-auth-body .rn-app-brand strong{font-weight:870;color:#fff}
body.rn-auth-body .rn-app-brand b{font-weight:870;color:var(--ui-blue)}
body.rn-auth-body .rn-app-nav{display:flex;align-items:center;justify-content:center;gap:5px;margin:auto;min-width:0}
body.rn-auth-body .rn-app-nav>a{position:relative;display:flex;align-items:center;gap:8px;height:44px;padding:0 13px;border:1px solid transparent;border-radius:14px;color:#8fa6b8;font-size:13px;font-weight:720;white-space:nowrap;transition:background .18s,border-color .18s,color .18s,transform .18s}
body.rn-auth-body .rn-app-nav>a svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body.rn-auth-body .rn-app-nav>a:hover{color:#edf9ff;background:rgba(255,255,255,.035);border-color:rgba(147,201,234,.10)}
body.rn-auth-body .rn-app-nav>a.active{color:#fff;background:linear-gradient(135deg,rgba(29,151,235,.18),rgba(74,214,255,.07));border-color:rgba(69,189,255,.22);box-shadow:inset 0 1px rgba(255,255,255,.025)}
body.rn-auth-body .rn-app-nav>a i,
body.rn-auth-body [data-unread-messages]{font-style:normal}
body.rn-auth-body .rn-app-nav>a i{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:linear-gradient(135deg,#168fea,#28b8f2);color:#fff;font-size:10px;font-weight:850;box-shadow:0 6px 16px rgba(26,151,232,.24)}
body.rn-auth-body .rn-app-actions{display:flex;align-items:center;gap:9px;flex:0 0 auto}
body.rn-auth-body .rn-app-icon{appearance:none;display:grid;place-items:center;width:43px;height:43px;padding:0;border:1px solid var(--ui-line);border-radius:14px;background:rgba(12,28,42,.88);color:#a9bdcc;cursor:pointer;transition:.18s}
body.rn-auth-body .rn-app-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
body.rn-auth-body .rn-app-icon:hover{color:#fff;border-color:rgba(71,193,255,.30);background:#10283a}
body.rn-auth-body .rn-user-chip{appearance:none;display:flex;align-items:center;gap:10px;height:48px;max-width:208px;padding:0 11px 0 6px;border:1px solid var(--ui-line);border-radius:16px;background:rgba(10,24,37,.92);color:#fff;cursor:pointer;min-width:0}
body.rn-auth-body .rn-user-chip__avatar,
body.rn-auth-body .rn-mobile-profile__avatar{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#157fdc,#35c7f4);color:#fff;font-size:14px;font-weight:850;box-shadow:0 8px 22px rgba(22,143,224,.22)}
body.rn-auth-body .rn-user-chip__text{display:flex;flex-direction:column;align-items:flex-start;min-width:0;max-width:125px}
body.rn-auth-body .rn-user-chip__text small{color:#688296;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
body.rn-auth-body .rn-user-chip__text strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:780}
body.rn-auth-body .rn-user-chip__chevron{width:15px;height:15px;fill:none;stroke:#6f8799;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- Internal mobile navigation ---------- */
body.rn-auth-body .rn-mobile-tabs{display:none}
body.rn-auth-body .rn-mobile-menu{display:none;position:fixed;z-index:900;inset:0;padding:12px;background:rgba(1,6,11,.74);backdrop-filter:blur(10px);align-items:flex-start;justify-content:flex-end}
body.rn-auth-body .rn-mobile-menu.open{display:flex}
body.rn-auth-body .rn-mobile-menu__panel{width:min(390px,100%);margin-top:7px;border:1px solid var(--ui-line-strong);border-radius:24px;background:#081522;box-shadow:0 30px 90px rgba(0,0,0,.52);overflow:hidden}
body.rn-auth-body .rn-mobile-menu__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border-bottom:1px solid var(--ui-line)}
body.rn-auth-body .rn-mobile-profile{display:flex;align-items:center;gap:11px;min-width:0}
body.rn-auth-body .rn-mobile-profile>div{display:flex;flex-direction:column;min-width:0}
body.rn-auth-body .rn-mobile-profile small{color:#6e8799;font-size:10px;font-weight:820;text-transform:uppercase}
body.rn-auth-body .rn-mobile-profile strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.rn-auth-body .rn-mobile-menu__close{appearance:none;position:relative;width:40px;height:40px;padding:0;border:1px solid var(--ui-line);border-radius:12px;background:#0d1e2d;cursor:pointer}
body.rn-auth-body .rn-mobile-menu__close span{position:absolute;left:11px;right:11px;top:19px;height:2px;border-radius:2px;background:#dce9f2}
body.rn-auth-body .rn-mobile-menu__close span:first-child{transform:rotate(45deg)}
body.rn-auth-body .rn-mobile-menu__close span:last-child{transform:rotate(-45deg)}
body.rn-auth-body .rn-mobile-nav{display:grid;gap:5px;padding:12px}
body.rn-auth-body .rn-mobile-nav a{display:flex;align-items:center;justify-content:space-between;min-height:50px;padding:0 14px;border-radius:13px;color:#a5bac9;font-weight:720}
body.rn-auth-body .rn-mobile-nav a.active{background:linear-gradient(135deg,rgba(24,142,230,.18),rgba(43,201,245,.07));color:#fff}
body.rn-auth-body .rn-mobile-nav i{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#168ee8;color:#fff;font-size:10px}
body.rn-auth-body .rn-mobile-menu__foot{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px 12px 14px;border-top:1px solid var(--ui-line)}
body.rn-auth-body .rn-mobile-secondary,
body.rn-auth-body .rn-mobile-logout{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:12px;font-size:12px;font-weight:760}
body.rn-auth-body .rn-mobile-secondary{background:#0d1e2d;color:#aac0d0}
body.rn-auth-body .rn-mobile-logout{background:rgba(255,88,110,.08);border:1px solid rgba(255,107,125,.18);color:#ff91a0}
body.rn-auth-body .rn-logout-form{display:block;width:100%;min-width:0;margin:0}
body.rn-auth-body .rn-logout-form .rn-mobile-logout{appearance:none;width:100%;margin:0;font-family:inherit;cursor:pointer}

/* ---------- Search modal inside authenticated area ---------- */
body.rn-auth-body .rn-search-modal{display:none;position:fixed;z-index:950;inset:0;align-items:flex-start;justify-content:center;padding:24px;background:rgba(1,6,11,.78);backdrop-filter:blur(14px)}
body.rn-auth-body .rn-search-modal.open{display:flex}
body.rn-auth-body .rn-search-dialog{position:relative;width:min(720px,100%);margin-top:min(13vh,110px);padding:32px;border:1px solid var(--ui-line-strong);border-radius:25px;background:linear-gradient(150deg,#0b1b29,#07131f);box-shadow:0 34px 100px rgba(0,0,0,.52)}
body.rn-auth-body .rn-search-close{appearance:none;position:absolute;right:20px;top:20px;width:42px;height:42px;border:1px solid var(--ui-line);border-radius:13px;background:#0d2131;cursor:pointer}
body.rn-auth-body .rn-search-close span{position:absolute;left:12px;right:12px;top:19px;height:2px;border-radius:2px;background:#d8e8f3}
body.rn-auth-body .rn-search-close span:first-child{transform:rotate(45deg)}
body.rn-auth-body .rn-search-close span:last-child{transform:rotate(-45deg)}
body.rn-auth-body .rn-kicker{display:block;color:var(--ui-cyan);font-size:11px;font-weight:850;letter-spacing:.14em}
body.rn-auth-body .rn-search-dialog h2{margin:7px 58px 23px 0;color:#fff;font-size:30px;line-height:1.1;font-weight:840;letter-spacing:-.035em}
body.rn-auth-body .rn-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}
body.rn-auth-body .rn-search-form input{appearance:none;width:100%;height:56px!important;min-height:56px!important;max-height:56px!important;margin:0!important;padding:0 17px!important;border:1px solid rgba(144,190,220,.16)!important;border-radius:14px!important;background:#071521!important;color:#f5fbff!important;font-size:16px!important;line-height:56px!important;outline:0!important;box-shadow:none!important}
body.rn-auth-body .rn-search-form input:focus{border-color:rgba(43,170,246,.65)!important;box-shadow:0 0 0 4px rgba(40,166,242,.10)!important}
body.rn-auth-body .rn-search-form button{height:56px;min-height:56px;padding:0 24px;border:0;border-radius:14px;background:linear-gradient(135deg,#147edb,#27b8ee);color:#fff;font-weight:800;cursor:pointer}
body.rn-auth-body .rn-search-links{display:grid;grid-template-columns:1fr;gap:10px;margin-top:20px}
body.rn-auth-body .rn-search-links__title{display:block;color:#6f8799;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
body.rn-auth-body .rn-search-links__items{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
body.rn-auth-body .rn-search-links__items a{display:flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid var(--ui-line);border-radius:11px;background:#0c2030;color:#bfd1de;font-size:12px;font-weight:700}

/* ---------- Footer ---------- */
body.rn-auth-body .rn-app-footer{padding:0 0 30px;color:#61798b}
body.rn-auth-body .rn-app-footer__inner{width:min(var(--ui-max),calc(100% - 48px));margin:0 auto;padding-top:20px;border-top:1px solid rgba(145,184,213,.09);display:flex;justify-content:center;align-items:center;gap:12px;font-size:11px;text-align:center}
body.rn-auth-body .rn-app-footer__inner>span{font-weight:860;letter-spacing:.08em;color:#849aab}
body.rn-auth-body .rn-app-footer__inner>span b{font-weight:860;color:#d7ebf8}
body.rn-auth-body .rn-app-footer__inner i{width:3px;height:3px;border-radius:50%;background:#365267}

/* ---------- Buttons, badges, messages ---------- */
.rn-button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 16px;border:1px solid var(--ui-line);border-radius:13px;background:#0c1f2f;color:#d8e8f3;font-size:12px;font-weight:800;line-height:1.2;cursor:pointer;transition:transform .17s,background .17s,border-color .17s,box-shadow .17s}
.rn-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rn-button:hover{transform:translateY(-1px);border-color:rgba(81,194,251,.27);background:#10283a}
.rn-button--primary{border-color:rgba(43,171,247,.34);background:linear-gradient(135deg,#137cd9,#24afea);color:#fff;box-shadow:0 12px 30px rgba(18,132,218,.18)}
.rn-button--primary:hover{background:linear-gradient(135deg,#1889e8,#2fc4f6);box-shadow:0 15px 34px rgba(18,144,225,.25)}
.rn-button--soft{background:rgba(39,155,226,.10);border-color:rgba(61,174,240,.18);color:#89dcff}
.rn-button--ghost{background:rgba(255,255,255,.018);color:#9db3c2}
.rn-button--danger{background:rgba(255,91,113,.09);border-color:rgba(255,107,125,.20);color:#ff91a0}
.rn-button--danger:hover{background:rgba(255,91,113,.15);border-color:rgba(255,107,125,.30)}
.rn-button--small{min-height:38px;padding:0 13px;font-size:11px}
.rn-button--wide{width:100%}
.rn-button[disabled],.rn-button.is-loading{opacity:.5;cursor:not-allowed;pointer-events:none}
.rn-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 9px;border:1px solid var(--ui-line);border-radius:999px;background:rgba(255,255,255,.025);color:#a6bdcc;font-size:10px;font-weight:800;white-space:nowrap}
.rn-badge--admin,.rn-badge--role{color:#82d9ff;border-color:rgba(77,192,249,.20);background:rgba(42,166,232,.08)}
.rn-badge--success,.rn-badge--online{color:#7fe6b9;border-color:rgba(73,214,154,.17);background:rgba(73,214,154,.07)}
.rn-badge--danger{color:#ff91a0;border-color:rgba(255,111,135,.18);background:rgba(255,111,135,.07)}
.rn-badge--wait{color:#ffd18c;border-color:rgba(255,191,102,.18);background:rgba(255,191,102,.07)}
.rn-badge--new{color:#fff;background:linear-gradient(135deg,#168bea,#25b9ee);border-color:transparent;box-shadow:0 7px 20px rgba(20,146,228,.22)}
.on,.active_on{color:var(--ui-green)!important}.off,.active_off{color:#73899a!important}.admin{color:#74d6ff!important}
.system_message,.system_message2,.rn-inline-message{display:none}
.system_message.is-visible,.system_message2.is-visible,.rn-inline-message.is-visible{display:block;padding:11px 13px;border:1px solid rgba(255,111,135,.17);border-radius:12px;background:rgba(255,91,113,.065);color:#ff9cac;font-size:12px;line-height:1.45}
.system_message.is-visible .on,.system_message2.is-visible .on,.rn-inline-message.is-visible .on{color:#78e6b8!important}
body.rn-auth-body .rn-system-toast,
body.rn-auth-body .system_messages{position:fixed;z-index:980;top:calc(var(--ui-header) + 14px);left:50%;display:none;width:min(560px,calc(100% - 28px));padding:13px 16px;transform:translateX(-50%);border:1px solid rgba(104,194,249,.18);border-radius:15px;background:rgba(8,22,34,.97);box-shadow:0 20px 70px rgba(0,0,0,.42);color:#e9f7ff;font-size:12px;text-align:center;backdrop-filter:blur(18px)}
body.rn-auth-body .rn-system-toast:not(:empty),body.rn-auth-body .system_messages:not(:empty){display:block}
.rn-copy-toast{position:fixed;z-index:1100;left:50%;bottom:30px;display:block;padding:10px 15px;transform:translate(-50%,18px);opacity:0;pointer-events:none;border:1px solid rgba(73,214,154,.19);border-radius:12px;background:rgba(8,25,31,.97);box-shadow:0 15px 45px rgba(0,0,0,.35);color:#8de8c1;font-size:11px;font-weight:800;transition:.2s}
.rn-copy-toast.is-visible{opacity:1;transform:translate(-50%,0)}

/* ---------- Push prompt and realtime message toasts ---------- */
.rn-push-card{position:fixed;z-index:750;right:22px;bottom:22px;width:min(500px,calc(100% - 44px));display:none;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px;border:1px solid rgba(102,198,250,.17);border-radius:19px;background:linear-gradient(145deg,rgba(10,27,41,.98),rgba(7,19,30,.98));box-shadow:0 24px 78px rgba(0,0,0,.43);backdrop-filter:blur(20px)}
.rn-push-card.is-visible{display:grid;animation:rnToastIn .25s ease-out}
.rn-push-card.is-denied{border-color:rgba(255,111,135,.17)}
.rn-push-card__icon{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:linear-gradient(135deg,rgba(27,145,224,.18),rgba(69,211,255,.08));color:#75d7ff}
.rn-push-card__icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.rn-push-card__copy{display:flex;flex-direction:column;min-width:0}
.rn-push-card__copy strong{font-size:12px;font-weight:800;color:#f4fbff}
.rn-push-card__copy span{margin-top:2px;color:#8098aa;font-size:10.5px;line-height:1.45}
.rn-push-card__close{appearance:none;display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:10px;background:transparent;color:#72899a;font-size:21px;cursor:pointer}
.rn-push-card__close:hover{background:rgba(255,255,255,.04);color:#fff}
.rn-toast-stack{position:fixed;z-index:1050;right:18px;top:calc(var(--ui-header) + 14px);width:min(380px,calc(100% - 36px));display:grid;gap:9px;pointer-events:none}
.rn-message-toast{position:relative;overflow:hidden;pointer-events:auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 12px 12px 11px;border:1px solid rgba(108,198,250,.22);border-radius:18px;background:linear-gradient(145deg,rgba(11,30,46,.995),rgba(7,20,32,.995));box-shadow:0 22px 70px rgba(0,0,0,.50);backdrop-filter:blur(18px);animation:rnToastIn .22s ease-out}
.rn-message-toast:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:2px;border-radius:2px;background:linear-gradient(var(--ui-cyan),var(--ui-blue))}
.rn-message-toast__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,#157edb,#26b8ed);color:#fff;box-shadow:0 8px 22px rgba(24,143,223,.2)}
.rn-message-toast__icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rn-message-toast__copy{min-width:0}
.rn-message-toast__copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f5fbff;font-size:13px;font-weight:820}
.rn-message-toast__copy span{display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#92abba;font-size:11px}
.rn-message-toast__close{appearance:none;position:relative;display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:10px;background:transparent;color:#6f8798;font-size:0;cursor:pointer;transition:background .16s,color .16s}
.rn-message-toast__close:before,.rn-message-toast__close:after{content:"";position:absolute;width:12px;height:1.5px;border-radius:2px;background:currentColor}
.rn-message-toast__close:before{transform:rotate(45deg)}.rn-message-toast__close:after{transform:rotate(-45deg)}
.rn-message-toast__close:hover{background:rgba(255,255,255,.04);color:#fff}
@keyframes rnToastIn{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:none}}

/* ---------- Profile / cabinet ---------- */
.rn-profile-overview{display:grid;grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr);gap:18px}
.rn-profile-identity{position:relative;display:flex;align-items:center;gap:18px;min-height:190px;padding:27px;border-radius:var(--ui-radius);overflow:hidden}
.rn-profile-identity:after{content:"";position:absolute;right:-50px;top:-70px;width:190px;height:190px;border-radius:50%;background:rgba(32,166,240,.08);filter:blur(2px);pointer-events:none}
.rn-profile-avatar-wrap{position:relative;flex:0 0 auto}
.rn-profile-avatar{position:relative;width:100px;height:100px;padding:4px;border:1px solid rgba(83,195,250,.24);border-radius:30px;background:linear-gradient(145deg,rgba(42,166,238,.14),rgba(70,218,255,.03));box-shadow:0 18px 38px rgba(0,0,0,.24)}
.rn-profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:25px}
.rn-online-dot{position:absolute;right:5px;bottom:5px;width:15px;height:15px;border:3px solid #0b1b29;border-radius:50%;background:var(--ui-green);box-shadow:0 0 0 3px rgba(73,214,154,.07)}
.rn-avatar-edit{appearance:none;position:absolute;right:-5px;top:-5px;display:grid;place-items:center;width:35px;height:35px;padding:0;border:1px solid rgba(87,194,250,.28);border-radius:12px;background:#10283a;color:#9de4ff;box-shadow:0 8px 25px rgba(0,0,0,.24);cursor:pointer}
.rn-avatar-edit svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-profile-identity__copy{position:relative;z-index:1;min-width:0}
.rn-profile-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:9px}
.rn-profile-identity__copy h2{margin:0;color:#fff;font-size:25px;line-height:1.1;letter-spacing:-.035em;font-weight:840;overflow-wrap:anywhere}
.rn-profile-identity__copy p{margin:6px 0 0;color:var(--ui-muted);font-size:12px}
.rn-profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rn-stat-card{display:flex;align-items:center;gap:13px;min-height:190px;padding:20px;border-radius:var(--ui-radius)}
.rn-stat-card__icon{display:grid;place-items:center;flex:0 0 auto;width:46px;height:46px;border-radius:14px;background:rgba(38,153,222,.09);color:#68cbff}
.rn-stat-card__icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-stat-card>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.rn-stat-card small{color:#698397;font-size:10px;font-weight:760;text-transform:uppercase;letter-spacing:.06em}
.rn-stat-card strong{color:#dff1fb;font-size:13px;font-weight:760;overflow-wrap:anywhere}
.rn-stat-card--link{position:relative;transition:.18s}
.rn-stat-card--link>b{margin-left:auto;color:#5fc9fc;font-size:18px;transition:.18s}
.rn-stat-card--link:hover{border-color:rgba(69,188,248,.22);background:linear-gradient(145deg,#102639,#091b2a)}
.rn-stat-card--link:hover>b{transform:translateX(3px)}
.rn-profile-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:18px;margin-top:18px}
.rn-settings-card{padding:25px;border-radius:var(--ui-radius)}
.rn-settings-card__head{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.rn-settings-card__head h2{margin:4px 0 0;color:#fff;font-size:20px;font-weight:800;letter-spacing:-.025em}
.rn-settings-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(36,151,221,.09);color:#68ccff}
.rn-settings-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-detail-list{display:grid;border-top:1px solid var(--ui-line)}
.rn-detail-list>div{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:14px;min-height:55px;border-bottom:1px solid var(--ui-line)}
.rn-detail-list span{color:#728b9c;font-size:11px}
.rn-detail-list strong{justify-self:end;color:#dcebf4;font-size:12px;font-weight:730;text-align:right;overflow-wrap:anywhere}
.rn-settings-hint{margin:15px 0 0;color:#6e8799;font-size:11px;line-height:1.6}


/* ---------- Backup status ---------- */
.rn-backup-card{position:relative;overflow:hidden;margin-top:18px;padding:23px 24px;border-radius:var(--ui-radius)}
.rn-backup-card:before{content:"";position:absolute;right:-70px;top:-105px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(37,170,238,.11),transparent 67%);pointer-events:none}
.rn-backup-card__head{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.rn-backup-card__title{display:flex;align-items:center;gap:12px;min-width:0}
.rn-backup-card__title h2{margin:4px 0 0;color:#f4fbff;font-size:20px;line-height:1.15;font-weight:820;letter-spacing:-.026em}
.rn-backup-card__icon{display:grid;place-items:center;flex:0 0 auto;width:43px;height:43px;border:1px solid rgba(82,195,249,.16);border-radius:14px;background:rgba(31,151,222,.09);color:#66cdfd}
.rn-backup-card__icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.rn-backup-status{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;min-height:31px;padding:0 11px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.025);color:#91a7b7;font-size:10px;font-weight:800;letter-spacing:.025em}
.rn-backup-status i{width:7px;height:7px;border-radius:50%;background:#718596;box-shadow:0 0 0 4px rgba(113,133,150,.08)}
.rn-backup-status.ok{border-color:rgba(73,214,154,.18);background:rgba(73,214,154,.055);color:#9fe8c3}.rn-backup-status.ok i{background:#49d69a;box-shadow:0 0 0 4px rgba(73,214,154,.09)}
.rn-backup-status.error{border-color:rgba(255,119,131,.18);background:rgba(255,98,116,.05);color:#ffb3bd}.rn-backup-status.error i{background:#ff6f82;box-shadow:0 0 0 4px rgba(255,111,130,.08)}
.rn-backup-metrics{position:relative;z-index:1;display:grid;grid-template-columns:1.5fr 1fr 1fr .72fr;gap:9px}
.rn-backup-metric{display:grid;align-content:center;gap:5px;min-height:78px;padding:13px 15px;border:1px solid rgba(137,184,214,.09);border-radius:15px;background:rgba(4,16,26,.42)}
.rn-backup-metric span{color:#6f8799;font-size:9.5px;font-weight:760;text-transform:uppercase;letter-spacing:.055em}
.rn-backup-metric strong{color:#dceef7;font-size:12px;font-weight:760;line-height:1.35;overflow-wrap:anywhere}
.rn-backup-alert{position:relative;z-index:1;display:flex;align-items:flex-start;gap:10px;margin-top:11px;padding:11px 13px;border:1px solid rgba(255,119,131,.14);border-radius:14px;background:rgba(255,91,111,.045)}
.rn-backup-alert__icon{display:grid;place-items:center;flex:0 0 auto;width:25px;height:25px;border-radius:9px;background:rgba(255,101,121,.10);color:#ff9dac;font-size:12px;font-weight:900}
.rn-backup-alert>div{display:grid;gap:2px;min-width:0}.rn-backup-alert strong{color:#ffc2ca;font-size:10.5px;font-weight:800}.rn-backup-alert span:not(.rn-backup-alert__icon){color:#8c9fac;font-size:9.5px;line-height:1.45}

/* ---------- Form controls ---------- */
.rn-form-grid{display:grid;gap:15px}
.rn-form-field{display:grid;gap:7px}
.rn-form-field>span{color:#8299aa;font-size:11px;font-weight:720}
.rn-form-field>span small{color:#576f82;font-size:10px;font-weight:600}
.rn-control{position:relative;display:flex;align-items:center;width:100%;height:54px;border:1px solid rgba(144,190,220,.14);border-radius:14px;background:#071521;transition:.18s}
.rn-control:focus-within{border-color:rgba(46,177,246,.54);box-shadow:0 0 0 4px rgba(37,157,230,.08)}
.rn-control.has-error{border-color:rgba(255,111,135,.45);box-shadow:0 0 0 4px rgba(255,92,115,.07)}
.rn-control input,.rn-control select{appearance:none;width:100%;height:52px!important;min-height:52px!important;margin:0!important;padding:0 48px 0 14px!important;border:0!important;border-radius:14px!important;background:transparent!important;color:#edf7fd!important;font-size:14px!important;line-height:52px!important;outline:0!important;box-shadow:none!important}
.rn-control input::placeholder{color:#526a7c}
.rn-password-toggle,.rn-eye{appearance:none;position:absolute!important;z-index:3;right:6px!important;top:50%!important;display:grid!important;place-items:center!important;width:42px!important;height:42px!important;margin:0!important;padding:0!important;transform:translateY(-50%)!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#6c8495!important;cursor:pointer!important;box-shadow:none!important}
.rn-password-toggle:before,.rn-eye:before{content:"";width:19px;height:13px;border:1.7px solid currentColor;border-radius:50% 50% 48% 48%/60% 60% 40% 40%;transform:rotate(0deg)}
.rn-password-toggle:after,.rn-eye:after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:currentColor}
.rn-password-toggle:hover,.rn-eye:hover{background:rgba(255,255,255,.035)!important;color:#a9dfff!important}
.rn-password-toggle.is-visible:before,.rn-eye.is-visible:before{opacity:.55}
.rn-password-toggle.is-visible:after,.rn-eye.is-visible:after{width:20px;height:1.5px;border-radius:2px;transform:rotate(-42deg);background:currentColor}

/* ---------- Users ---------- */
.rn-admin-list{display:grid;gap:13px}
.rn-user-card{display:grid;grid-template-columns:minmax(280px,1.1fr) minmax(390px,1.45fr) auto;align-items:center;gap:22px;padding:18px 20px;border-radius:19px}
.rn-user-card.is-blocked{opacity:.72}
.rn-user-card__main{display:flex;align-items:center;gap:13px;min-width:0}
.rn-user-card__avatar{position:relative;display:block;flex:0 0 auto;width:52px;height:52px}
.rn-user-card__avatar img{width:52px;height:52px;object-fit:cover;border-radius:17px}
.rn-user-card__avatar i{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border:3px solid #0b1a28;border-radius:50%;background:#617788}
.rn-user-card__avatar i.active_on{background:var(--ui-green)}
.rn-user-card__identity{min-width:0}
.rn-user-card__name-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.rn-user-card__name-row h2{margin:0;color:#f2f9fd;font-size:15px;font-weight:800;overflow-wrap:anywhere}
.rn-user-card__login{display:flex;align-items:center;gap:6px;margin-top:4px;color:#718a9b;font-size:10.5px}
.rn-user-card__login i{width:6px;height:6px;border-radius:50%;background:#647c8e}
.rn-user-card__login i.active_on{background:var(--ui-green)}
.rn-user-card__meta{display:grid;grid-template-columns:1.05fr 1fr .75fr;gap:10px;min-width:0}
.rn-user-card__meta>div{min-width:0;padding:10px 11px;border:1px solid rgba(146,188,217,.08);border-radius:12px;background:rgba(4,14,23,.35)}
.rn-user-card__meta span{display:block;color:#5f788b;font-size:9px;text-transform:uppercase;letter-spacing:.05em}
.rn-user-card__meta strong{display:block;margin-top:3px;color:#c7d9e5;font-size:10.5px;font-weight:720;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rn-mono{font-family:"SFMono-Regular",Consolas,monospace!important;letter-spacing:.04em}
.rn-user-card__actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}

/* v21.2.1 compact icon actions on Users page */
.rn-user-card__actions{align-items:center}
.rn-user-action-icon{appearance:none;position:relative;display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;margin:0;padding:0;border:1px solid rgba(145,188,217,.12);border-radius:12px;background:#0a1e2e;color:#7898ab;box-shadow:none;cursor:pointer;transition:background .16s,border-color .16s,color .16s,transform .16s}
.rn-user-action-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.rn-user-action-icon:hover,.rn-user-action-icon:focus-visible{border-color:rgba(68,190,247,.28);background:rgba(31,145,210,.11);color:#8bddff;outline:none}
.rn-user-action-icon:focus-visible{box-shadow:0 0 0 3px rgba(49,171,235,.10)}
.rn-user-action-icon:active{transform:translateY(1px)}
.rn-user-action-icon--devices.is-open{border-color:rgba(63,188,246,.30);background:rgba(36,154,220,.12);color:#82dcff}
.rn-user-action-icon--safe{color:#72cda1;background:rgba(55,181,119,.055);border-color:rgba(82,201,142,.13)}
.rn-user-action-icon--admin{color:#d9b66d;background:rgba(222,171,66,.055);border-color:rgba(224,176,73,.13)}
.rn-user-action-icon--danger{color:#ff8fa0;background:rgba(255,89,112,.045);border-color:rgba(255,105,126,.13)}
.rn-user-action-icon--danger-solid{color:#ff9aaa;background:rgba(255,82,108,.10);border-color:rgba(255,103,125,.20)}
.rn-user-action-icon--danger:hover,.rn-user-action-icon--danger:focus-visible,.rn-user-action-icon--danger-solid:hover,.rn-user-action-icon--danger-solid:focus-visible{color:#ffc0c9;background:rgba(255,83,108,.13);border-color:rgba(255,111,132,.30)}

/* v21.2.2 — same hover tooltip used by the chat sound control */
.rn-users-list .rn-user-card{overflow:visible}
.rn-users-list .rn-user-card:hover{z-index:5}
.rn-admin-page .rn-user-action-icon:hover::after{
  content:attr(data-tooltip);
  position:absolute;
  z-index:30;
  top:calc(100% + 8px);
  right:0;
  width:max-content;
  max-width:180px;
  padding:7px 9px;
  border:1px solid rgba(135,188,218,.14);
  border-radius:9px;
  background:#06131e;
  color:#cfe3ed;
  box-shadow:0 10px 28px rgba(0,0,0,.26);
  font-size:10px;
  line-height:1;
  font-weight:700;
  pointer-events:none;
}

/* ---------- Invites ---------- */
.rn-invite-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.rn-invite-card{display:grid;gap:16px;padding:20px;border-radius:20px}
.rn-invite-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.rn-invite-card__top h2{margin:4px 0 0;color:#fff;font-size:18px;font-weight:800}
.rn-invite-link{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:7px;padding:7px;border:1px solid rgba(144,190,220,.11);border-radius:14px;background:#071521}
.rn-invite-link code{padding-left:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#92b2c7;font-size:10.5px}
.rn-copy-invite{appearance:none;display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--ui-line);border-radius:11px;background:#0d2233;color:#79cffa;cursor:pointer}
.rn-copy-invite svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.rn-invite-card__meta{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rn-invite-card__meta>div{padding:10px;border:1px solid rgba(144,190,220,.08);border-radius:12px;background:rgba(4,14,23,.3)}
.rn-invite-card__meta span{display:block;color:#657e91;font-size:9px;text-transform:uppercase}
.rn-invite-card__meta strong{display:block;margin-top:3px;color:#c7d9e4;font-size:11px;font-weight:720}
.rn-invite-card__actions{display:flex;justify-content:flex-end}

/* ---------- Empty state ---------- */
.rn-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:330px;padding:44px 24px;border-radius:var(--ui-radius);text-align:center}
.rn-empty-state__icon{display:grid;place-items:center;width:62px;height:62px;margin-bottom:16px;border-radius:19px;background:rgba(35,151,223,.09);color:#66cbff}
.rn-empty-state__icon--success{background:rgba(73,214,154,.08);color:#7ce5b7}
.rn-empty-state__icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.rn-empty-state h2{margin:0;color:#fff;font-size:22px;font-weight:800}
.rn-empty-state p{max-width:480px;margin:7px 0 19px;color:#71899b;font-size:12px;line-height:1.6}

/* ---------- Media manager ---------- */
.rn-selection-bar{display:none;align-items:center;gap:12px;margin-bottom:18px;padding:12px 13px;border:1px solid rgba(255,111,135,.14);border-radius:16px;background:rgba(255,86,109,.045)}
.rn-selection-bar.is-visible{display:flex}
.rn-selection-bar__copy{display:flex;flex-direction:column;margin-right:auto}
.rn-selection-bar__copy strong{color:#f4f9fc;font-size:12px;font-weight:800}
.rn-selection-bar__copy span{color:#6f8799;font-size:10px}
.rn-check-all{display:flex;align-items:center;gap:8px;color:#839aaa;font-size:11px;cursor:pointer;white-space:nowrap}
.checkboxGallery,.checkboxGalleryAll{appearance:none!important;width:19px!important;height:19px!important;min-width:19px!important;margin:0!important;border:1px solid rgba(145,190,220,.24)!important;border-radius:6px!important;background:#071521!important;cursor:pointer!important;vertical-align:middle!important}
.checkboxGallery:checked,.checkboxGalleryAll:checked{border-color:#2eacf0!important;background:linear-gradient(135deg,#1787df,#29bff1)!important;box-shadow:inset 0 0 0 4px #071521!important}
.rn-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rn-media-card{min-width:0;overflow:hidden;border-radius:21px;transition:transform .18s,border-color .18s,box-shadow .18s}
.rn-media-card:hover{transform:translateY(-2px);border-color:rgba(83,192,248,.20);box-shadow:0 25px 65px rgba(0,0,0,.20)}
.rn-media-card__preview{position:relative;display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:2px;height:188px;background:#06121d;overflow:hidden}
.rn-media-card__thumb{min-width:0;height:100%;overflow:hidden;background:#0b1c2b}
.rn-media-card__thumb img{width:100%;height:100%;object-fit:cover}
.rn-media-card__thumb.is-video img{object-fit:contain;padding:24px;opacity:.8}
.rn-media-card__placeholder{grid-column:1/-1;display:grid;place-items:center;color:#31556d}
.rn-media-card__placeholder svg{width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:1.3}
.rn-media-card__count,.rn-media-card__new{position:absolute;top:11px;display:flex;align-items:center;height:28px;padding:0 9px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(4,13,22,.76);backdrop-filter:blur(10px);color:#dcebf4;font-size:9px;font-weight:800}
.rn-media-card__count{left:11px}.rn-media-card__new{left:auto;right:48px;color:#82e3ff;border-color:rgba(72,206,255,.18)}
.rn-media-select{position:absolute;right:11px;top:11px;display:grid;place-items:center;width:29px;height:29px;border-radius:10px;background:rgba(4,13,22,.76);backdrop-filter:blur(10px);cursor:pointer}
.rn-media-select input{position:absolute;opacity:0;pointer-events:none}
.rn-media-select span{width:17px;height:17px;border:1px solid rgba(222,240,251,.34);border-radius:6px;background:rgba(7,18,28,.8)}
.rn-media-select input:checked+span{border-color:#4dc9ff;background:linear-gradient(135deg,#1688df,#28bdec);box-shadow:inset 0 0 0 4px #0a1a28}
.rn-media-card__body{display:grid;gap:13px;padding:17px}
.rn-media-card__topline{display:flex;justify-content:space-between;gap:12px;color:#5f788b;font-size:9.5px;text-transform:uppercase;letter-spacing:.05em}
.rn-media-card__topline time{white-space:nowrap}
.rn-media-card__body h2{min-height:43px;margin:0;color:#edf7fc;font-size:15px;line-height:1.4;font-weight:780;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rn-media-link{display:grid;grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:5px;padding:5px;border:1px solid rgba(145,188,217,.09);border-radius:12px;background:#071521}
.rn-media-link code{padding-left:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7895a9;font-size:9.5px}
.rn-media-copy{appearance:none;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:9px;background:#0d2232;color:#6fcdf9;cursor:pointer}
.rn-media-copy svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7}
.rn-media-card__actions{display:flex;align-items:center;gap:7px;min-width:0}
.rn-media-card__actions .rn-button{min-height:39px;padding:0 11px;font-size:10.5px}
.rn-icon-danger{appearance:none;display:grid;place-items:center;flex:0 0 auto;width:39px;height:39px;margin-left:auto;border:1px solid rgba(255,111,135,.15);border-radius:12px;background:rgba(255,87,111,.055);color:#ff8295}
.rn-icon-danger svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-media-users__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rn-media-user{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:78px;padding:12px 14px;border-radius:17px;transition:.18s}
.rn-media-user:hover{transform:translateY(-1px);border-color:rgba(69,190,248,.21);background:linear-gradient(145deg,#102537,#091a28)}
.rn-media-user__index{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#0b2234;color:#5fc9fa;font-size:10px;font-weight:850}
.rn-media-user>div{display:flex;flex-direction:column;min-width:0}
.rn-media-user strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#eaf5fb;font-size:12px;font-weight:780}
.rn-media-user small{margin-top:2px;color:#698295;font-size:10px}
.rn-media-user__arrow{width:17px;height:17px;fill:none;stroke:#5f7b8f;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.rn-auth-body .pagination,body.rn-auth-body #pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:24px;flex-wrap:wrap}
body.rn-auth-body .pagination a,body.rn-auth-body .pagination span,body.rn-auth-body #pagination a,body.rn-auth-body #pagination span{display:grid;place-items:center;min-width:38px;height:38px;padding:0 8px;border:1px solid var(--ui-line);border-radius:11px;background:#0a1b29;color:#93aabb;font-size:11px;font-weight:750}
body.rn-auth-body .pagination span{border-color:rgba(53,177,244,.28);background:rgba(35,155,225,.12);color:#8ddcff}

/* ---------- Upload gallery ---------- */
.rn-upload-card{display:grid;gap:22px;padding:23px;border-radius:22px}
.rn-upload-caption{max-width:100%}
.rn-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:350px;padding:38px 22px;border:1px dashed rgba(99,192,242,.28);border-radius:20px;background:linear-gradient(145deg,rgba(31,139,206,.055),rgba(5,16,26,.28));text-align:center;outline:0;cursor:pointer;transition:.18s}
.rn-dropzone:hover,.rn-dropzone:focus,.rn-dropzone.is-drag{border-color:rgba(76,200,255,.55);background:linear-gradient(145deg,rgba(31,154,226,.10),rgba(7,22,34,.42));box-shadow:inset 0 0 0 4px rgba(43,175,239,.045)}
.rn-dropzone__icon{display:grid;place-items:center;width:66px;height:66px;margin-bottom:17px;border-radius:21px;background:linear-gradient(145deg,rgba(28,148,224,.17),rgba(73,216,255,.07));color:#70d3ff}
.rn-dropzone__icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-dropzone strong{color:#f2f9fd;font-size:19px;font-weight:820}
.rn-dropzone p{margin:5px 0 17px;color:#7891a3;font-size:12px}
.rn-dropzone small{margin-top:12px;color:#526c80;font-size:10px}
.rn-upload-preview{display:none;gap:15px}.rn-upload-preview.is-visible{display:grid}
.rn-upload-summary{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--ui-line);border-radius:16px;background:#081725}
.rn-upload-summary>div{display:flex;flex-direction:column;padding:0 8px}
.rn-upload-summary span{color:#607a8d;font-size:9px;text-transform:uppercase}
.rn-upload-summary strong{margin-top:2px;color:#dcebf4;font-size:12px;font-weight:800}.rn-upload-summary strong.is-error{color:#ff8ca0}
.rn-upload-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rn-upload-item{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;align-items:center;padding:10px;border:1px solid rgba(145,188,217,.09);border-radius:15px;background:#071521}
.rn-upload-item__preview{width:84px;height:72px;overflow:hidden;border-radius:11px;background:#0c2030}
.rn-upload-item__preview img{width:100%;height:100%;object-fit:cover}
.rn-upload-item__copy{display:grid;gap:3px;min-width:0}
.rn-upload-item__copy>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dcebf4;font-size:11px;font-weight:760}
.rn-upload-item__type{color:#667f91;font-size:9px}
.add_files_block_preview_item_name_system_message{color:#ff8499;font-size:9px;line-height:1.35}
.rn-upload-item progress{appearance:none;width:100%;height:5px;margin:5px 0 1px;border:0;border-radius:999px;overflow:hidden;background:#10293a}
.rn-upload-item progress::-webkit-progress-bar{background:#10293a}.rn-upload-item progress::-webkit-progress-value{background:linear-gradient(90deg,#168ce7,#43cef6)}.rn-upload-item progress::-moz-progress-bar{background:linear-gradient(90deg,#168ce7,#43cef6)}
.rn-upload-item small{color:#5d7689;font-size:9px}.rn-upload-item small b{font-weight:800;color:#74d5ff}
.rn-upload-submit{display:flex;justify-content:flex-end}.rn-upload-submit .rn-button{max-width:260px}

/* ---------- Duplicate review ---------- */
.rn-review-list{display:grid;gap:16px}
.rn-review-card{display:grid;grid-template-columns:290px minmax(0,1fr);gap:22px;padding:18px;border-radius:21px}
.rn-review-source{display:grid;gap:10px;align-content:start}.rn-review-source>a{display:block;overflow:hidden;border-radius:15px;background:#06131e}.rn-review-source img{width:100%;height:220px;object-fit:cover}.rn-review-source>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8aa2b3;font-size:10px;font-weight:700}
.rn-review-duplicates{min-width:0}.rn-review-duplicates__head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:13px}.rn-review-duplicates__head h2{margin:4px 0 0;color:#f1f9fd;font-size:18px;font-weight:800}
.rn-review-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.rn-review-thumb{position:relative;overflow:hidden;aspect-ratio:1;border-radius:13px;background:#06131e}.rn-review-thumb>a:first-child{display:block;width:100%;height:100%}.rn-review-thumb img{width:100%;height:100%;object-fit:cover}.rn-review-thumb__delete{position:absolute;right:6px;top:6px;display:grid;place-items:center;width:27px;height:27px;border:1px solid rgba(255,255,255,.14);border-radius:9px;background:rgba(4,10,16,.8);color:#ff899b;font-size:17px;font-weight:500;backdrop-filter:blur(8px)}

/* ---------- Messenger ---------- */
body.rn-messenger-body{overflow:hidden}
body.rn-messenger-body .rn-auth-main{height:calc(100vh - var(--ui-header));height:calc(100dvh - var(--ui-header));min-height:0}
body.rn-messenger-body .rn-app-footer{display:none}
.rn-messenger-page{height:100%;padding:14px 16px 16px}
.rn-messenger-page>.container3{width:min(1560px,100%);height:100%;margin:0 auto}
.rn-messenger-page #messages_block{display:grid;grid-template-columns:360px minmax(0,1fr);height:100%;min-height:0;overflow:hidden;border:1px solid var(--ui-line);border-radius:23px;background:#071521;box-shadow:0 28px 85px rgba(0,0,0,.25)}
.rn-messenger-sidebar{display:flex;flex-direction:column;min-width:0;min-height:0;border-right:1px solid var(--ui-line);background:linear-gradient(180deg,#091a28,#071521)}
.rn-messenger-sidebar-head{height:78px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 18px}
.rn-messenger-sidebar-head h1{margin:3px 0 0;color:#f4fbff;font-size:22px;line-height:1;font-weight:840;letter-spacing:-.035em}
.rn-chat-create{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(70,183,243,.18);border-radius:14px;background:rgba(33,151,220,.08);color:#72d1ff;transition:.18s}
.rn-chat-create:hover{background:rgba(38,165,235,.14);border-color:rgba(78,197,255,.28)}
.rn-chat-create svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
.rn-chat-search{position:relative;display:flex;align-items:center;height:50px;margin:0 13px 12px;border:1px solid rgba(146,190,219,.11);border-radius:15px;background:#06131e;color:#617b8e}
.rn-chat-search:focus-within{border-color:rgba(54,177,242,.35);box-shadow:0 0 0 4px rgba(38,158,228,.06)}
.rn-chat-search>svg{position:absolute;left:14px;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;pointer-events:none}
.rn-chat-search input{appearance:none;width:100%;height:48px!important;min-height:48px!important;max-height:48px!important;margin:0!important;padding:0 14px 0 42px!important;border:0!important;border-radius:15px!important;background:transparent!important;color:#e9f5fb!important;font-size:13px!important;line-height:48px!important;outline:0!important;box-shadow:none!important}
.rn-chat-search input::placeholder{color:#526b7d}
.rn-messenger-page #addChatBlock{display:none!important}
.rn-messenger-page #messages_block_chats{flex:1;min-height:0;overflow:hidden}
.rn-messenger-page #messages_block_chats_content{height:100%;padding:0 8px 10px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#18364b transparent}
.messages_block_chats_content_item{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:11px;min-height:76px;padding:9px 10px;margin:2px 0;border:1px solid transparent;border-radius:16px;cursor:pointer;transition:background .16s,border-color .16s}
.messages_block_chats_content_item:hover{background:rgba(255,255,255,.025)}
.messages_block_chats_content_item.active{background:linear-gradient(135deg,rgba(27,142,219,.16),rgba(56,204,244,.045));border-color:rgba(60,177,238,.15)}
.messages_block_chats_content_item_name_img{position:relative;width:48px;height:48px;flex:0 0 auto}
.messages_block_chats_content_item_name_img_photo{position:absolute;display:grid;place-items:center;border:2px solid #091a28;overflow:hidden;background:#102637;box-shadow:0 2px 8px rgba(0,0,0,.16)}
.messages_block_chats_content_item_name_img_photo:nth-child(n+4){display:none}
.rn-chat-avatars--1 .messages_block_chats_content_item_name_img_photo{width:46px;height:46px;left:1px;top:1px;border-radius:14px;z-index:2}
.rn-chat-avatars--2 .messages_block_chats_content_item_name_img_photo{width:38px;height:38px;border-radius:14px}
.rn-chat-avatars--2 .messages_block_chats_content_item_name_img_photo:nth-child(1){left:0;top:0;z-index:2}
.rn-chat-avatars--2 .messages_block_chats_content_item_name_img_photo:nth-child(2){right:0;bottom:0;z-index:3}
.rn-chat-avatars--3 .messages_block_chats_content_item_name_img_photo{width:29px;height:29px;border-radius:10px}
.rn-chat-avatars--3 .messages_block_chats_content_item_name_img_photo:nth-child(1){left:0;top:0;z-index:2}
.rn-chat-avatars--3 .messages_block_chats_content_item_name_img_photo:nth-child(2){right:0;top:0;z-index:3}
.rn-chat-avatars--3 .messages_block_chats_content_item_name_img_photo:nth-child(3){left:10px;bottom:0;z-index:4}
.messages_block_chats_content_item_name_img_photo img{width:100%;height:100%;object-fit:cover}
.messages_block_chats_content_item_name_img_photo .rn-avatar-fallback{width:100%;height:100%;border-radius:inherit;font-size:11px}
.rn-chat-avatars--1 .messages_block_chats_content_item_name_img_photo .rn-avatar-fallback{font-size:15px}
.rn-chat-row-copy{min-width:0;display:grid;gap:5px}
.rn-chat-row-top,.rn-chat-row-bottom{display:flex;align-items:center;gap:8px;min-width:0}
.messages_block_chats_content_item_name_text{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dcebf4;font-size:13px;font-weight:780}
.messages_block_chats_content_item_date{flex:0 0 auto;color:#587285;font-size:9.5px;white-space:nowrap}
.rn-chat-preview{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#698396;font-size:10.5px}
.messages_block_chats_content_item_name_alert{display:grid;place-items:center;flex:0 0 auto;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:linear-gradient(135deg,#168bea,#2bbdf0);color:#fff;font-size:9px;font-weight:850;box-shadow:0 5px 15px rgba(22,139,226,.23)}
.notes_alert{display:inline-flex;margin-right:4px;color:#f4bd6f;vertical-align:middle}.notes_alert svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}
.rn-chat-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:260px;padding:22px;text-align:center}.rn-chat-list-empty>span{display:grid;place-items:center;width:52px;height:52px;margin-bottom:12px;border-radius:16px;background:rgba(34,146,213,.08);color:#5ebde9}.rn-chat-list-empty svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6}.rn-chat-list-empty strong{color:#dbeaf3;font-size:13px;font-weight:780}.rn-chat-list-empty small{margin-top:4px;color:#60798c;font-size:10px}

.rn-messenger-page #messages_block_content{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;background:linear-gradient(180deg,#081724,#06121d)}
.rn-messenger-page #messages_block_content:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;background-image:radial-gradient(rgba(91,178,226,.13) 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent)}
.rn-messenger-page #messages_block_content_back{display:none}
.rn-messenger-page #messages_block_content_header{position:relative;z-index:4;flex:0 0 auto;padding:11px 16px 10px;border-bottom:1px solid var(--ui-line);background:rgba(8,23,36,.91);backdrop-filter:blur(18px)}
.rn-chat-head-main{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px}
.rn-messenger-page #messages_block_content_header_text{display:flex;flex-direction:column;min-width:0}
.rn-messenger-page #messages_block_content_header_text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f1f9fd;font-size:15px;font-weight:810}
.rn-messenger-page #messages_block_content_header_text span{margin-top:2px;color:#668093;font-size:10px}
.rn-messenger-page #messages_block_content_header_text span.is-typing{color:#57c8fa}
.rn-chat-head-actions{display:flex;align-items:center;gap:6px}
.rn-chat-icon-button{appearance:none;display:none;place-items:center;width:38px;height:38px;padding:0;border:1px solid var(--ui-line);border-radius:12px;background:#0b1d2c;color:#7893a5;cursor:pointer}
.rn-chat-icon-button.active{display:grid}
.rn-chat-icon-button:hover{color:#dff4ff;border-color:rgba(66,185,244,.22)}
.rn-chat-icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.rn-messenger-page #messages_block_content_chat_users{display:flex;align-items:center;gap:10px;min-width:0;margin-top:7px}
.rn-chat-participants{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto;scrollbar-width:none}.rn-chat-participants::-webkit-scrollbar{display:none}
.rn-chat-participant{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-height:31px;padding:3px 7px 3px 4px;border:1px solid rgba(145,188,217,.09);border-radius:999px;background:rgba(5,17,27,.55);color:#88a0b1;font-size:9.5px}
.rn-chat-participant>i{display:grid;place-items:center;width:22px;height:22px;border-radius:8px;background:#102c40;color:#67cef9;font-size:9px;font-style:normal;font-weight:850}
.rn-chat-participant>b{font-weight:700}.rn-chat-participant .delete_user_in_chat{appearance:none;display:grid;place-items:center;width:19px;height:19px;padding:0;border:0;border-radius:7px;background:rgba(255,95,118,.07);color:#ff8296;font-size:14px;line-height:1;cursor:pointer}
.rn-chat-admin-actions{display:flex;align-items:center;gap:5px;margin-left:auto;flex:0 0 auto}
.rn-chat-admin-actions>a{display:grid;place-items:center;width:31px;height:31px;border:1px solid var(--ui-line);border-radius:10px;background:#0b1e2d;color:#728da0}
.rn-chat-admin-actions>a:hover{color:#8bdefe;border-color:rgba(65,188,247,.22)}.rn-chat-admin-actions>a.is-danger{color:#ff7e93;border-color:rgba(255,108,129,.13);background:rgba(255,79,105,.04)}
.rn-chat-admin-actions svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-chat-notes{display:grid;gap:7px;margin-top:8px;max-height:190px;padding-right:2px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(95,171,211,.28) transparent}.rn-chat-notes .notes_block_item{display:grid;grid-template-columns:minmax(0,1fr) 22px;align-items:start;gap:9px;width:100%;min-width:0;padding:9px 10px;border:1px solid rgba(255,191,102,.13);border-radius:11px;background:rgba(255,177,76,.045);color:#c8ad86;font-size:10px;line-height:1.5}.rn-chat-notes .notes_block_item>span{display:block;min-width:0;overflow:visible;text-overflow:clip;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.rn-chat-notes .delete_note{appearance:none;display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;border-radius:7px;background:rgba(255,103,126,.06);color:#ff8296;font-size:15px;line-height:1;cursor:pointer}.rn-chat-notes .delete_note:hover{background:rgba(255,103,126,.12);color:#ff9aaa}

.rn-messenger-page #messages_block_content_header_content{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.rn-chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}
.rn-chat-empty>span{display:grid;place-items:center;width:66px;height:66px;margin-bottom:14px;border:1px solid rgba(79,190,246,.13);border-radius:21px;background:rgba(31,142,210,.07);color:#61c7f5}.rn-chat-empty>span svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.rn-chat-empty strong{color:#eef8fd;font-size:18px;font-weight:810}.rn-chat-empty p{max-width:360px;margin:5px 0 17px;color:#698294;font-size:11px}
.rn-messenger-page #messages_block_content_header_content_chat{flex:1;min-height:0;padding:22px 26px 18px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#17354a transparent}
.messages_block_content_header_content_chat_item{position:relative;display:grid;grid-template-columns:38px minmax(0,auto);align-items:end;gap:8px;width:max-content;max-width:min(76%,760px);margin:8px 0}
.messages_block_content_header_content_chat_item.self{grid-template-columns:minmax(0,auto);margin-left:auto}
.messages_block_content_header_content_chat_item_avatar{width:36px;height:36px;align-self:end}.messages_block_content_header_content_chat_item_avatar img{width:36px;height:36px;object-fit:cover;border-radius:13px}
.messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_avatar,.messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_avatar_active{display:none}
.messages_block_content_header_content_chat_item_avatar_active{position:absolute;left:27px;bottom:0;z-index:2}.messages_block_content_header_content_chat_item_avatar_active span{display:block;width:10px;height:10px;border:2px solid #071521;border-radius:50%;background:#687f90}.messages_block_content_header_content_chat_item_avatar_active_on{background:var(--ui-green)!important}.messages_block_content_header_content_chat_item_avatar_active_off{background:#647b8c!important}
.messages_block_content_header_content_chat_item_text{position:relative;min-width:90px;padding:10px 12px 7px;border:1px solid rgba(149,191,220,.09);border-radius:17px 17px 17px 5px;background:#0d2131;box-shadow:0 10px 28px rgba(0,0,0,.10);overflow-wrap:anywhere}
.messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_text{border-color:rgba(53,175,235,.13);border-radius:17px 17px 5px 17px;background:linear-gradient(145deg,#0f5d91,#0c4e7b)}
.messages_block_content_header_content_chat_item_display_name{margin-bottom:3px;color:#74cff8;font-size:9.5px;font-weight:750}.messages_block_content_header_content_chat_item_display_name span{font-weight:800}.messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_display_name{color:#a8e5ff}
.messages_block_content_header_content_chat_item_text__desc{color:#e7f2f8;font-size:13px;line-height:1.48;white-space:pre-wrap;word-break:normal;overflow-wrap:anywhere}
.messages_block_content_header_content_chat_item_date{margin-top:5px;color:#668497;font-size:8.5px;text-align:right}.messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_date{color:rgba(215,240,252,.56)}
.messages_block_content_header_content_chat_item_photo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:7px;max-width:420px}.messages_block_content_header_content_chat_item_photo a{overflow:hidden;border-radius:9px}.messages_block_content_header_content_chat_item_photo img{width:100%;height:160px;object-fit:cover}
.messages_block_content_header_content_chat_item_system{grid-column:1/-1;justify-self:center;margin:5px auto;padding:6px 10px;border:1px solid rgba(145,188,217,.08);border-radius:999px;background:rgba(5,17,27,.68);color:#6c8597;font-size:9.5px;text-align:center}
.messages_block_content_header_content_chat_item:has(.messages_block_content_header_content_chat_item_system){display:flex;width:100%;max-width:100%;justify-content:center}
.delete_mess,.edit_mess{position:absolute;z-index:4;top:8px;display:grid;place-items:center;width:25px;height:25px;border:1px solid rgba(145,188,217,.08);border-radius:8px;background:#081725;color:#668194;opacity:0;cursor:pointer;transition:.15s}.delete_mess{right:-31px;color:#ff7e92}.edit_mess{right:-61px}.messages_block_content_header_content_chat_item.self .delete_mess{right:auto;left:-31px}.messages_block_content_header_content_chat_item.self .edit_mess{right:auto;left:-61px}.messages_block_content_header_content_chat_item:hover .delete_mess,.messages_block_content_header_content_chat_item:hover .edit_mess{opacity:1}.delete_mess svg,.edit_mess svg{width:12px!important;height:12px!important;fill:currentColor!important}.edit_mess svg{width:13px!important;height:13px!important}
.editMessTextarea{width:100%;min-width:240px;min-height:70px;padding:9px;border:1px solid rgba(97,199,247,.22);border-radius:10px;background:rgba(4,17,27,.35);color:#eef8fd;outline:0;resize:vertical}.editMessTextareaBtn{display:flex;gap:7px;margin-top:7px}.editMessTextareaBtnSave,.editMessTextareaBtnCansel{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-radius:8px;background:rgba(255,255,255,.06);color:#9ec0d2;font-size:9px;cursor:pointer}.editMessTextareaBtnSave{background:rgba(52,176,239,.14);color:#7cd7ff}
.loader{display:flex;justify-content:center;height:32px}.loader svg{width:52px;height:32px}

.rn-typing-bubble{position:absolute;z-index:5;left:24px;bottom:76px;display:flex;align-items:center;gap:8px;padding:7px 10px;opacity:0;transform:translateY(6px);pointer-events:none;border:1px solid rgba(91,191,240,.12);border-radius:12px;background:rgba(8,25,38,.94);color:#72c9ef;font-size:9.5px;transition:.16s}.rn-typing-bubble.is-visible{opacity:1;transform:none}.rn-typing-dots{display:flex;gap:2px}.rn-typing-dots i{width:4px;height:4px;border-radius:50%;background:#5bcafa;animation:rnTyping 1.1s infinite ease-in-out}.rn-typing-dots i:nth-child(2){animation-delay:.14s}.rn-typing-dots i:nth-child(3){animation-delay:.28s}@keyframes rnTyping{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}
.rn-messenger-page #messages_block_content_header_content_chat_input{position:relative;z-index:6;flex:0 0 auto;padding:9px 13px 11px;border-top:1px solid var(--ui-line);background:rgba(8,22,34,.95);backdrop-filter:blur(16px)}
.rn-messenger-page #error_message{display:none;margin:0 0 7px;padding:8px 10px;border:1px solid rgba(255,111,135,.15);border-radius:10px;background:rgba(255,82,108,.05);color:#ff91a1;font-size:9.5px}
.rn-messenger-page #messages_block_content_header_content_chat_input form{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;align-items:end;gap:8px}
.rn-messenger-page #messages_block_content_header_content_chat_input_photos input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.rn-messenger-page #messages_block_content_header_content_chat_input_photos label,
.rn-messenger-page #Layer_1{appearance:none;display:grid;place-items:center;width:46px;height:46px;padding:0;border:1px solid rgba(145,188,217,.11);border-radius:15px;background:#0b1e2d;color:#7591a4;cursor:pointer;transition:.16s}
.rn-messenger-page #messages_block_content_header_content_chat_input_photos label:hover{color:#87dafe;border-color:rgba(70,189,247,.22);background:#10283a}
.rn-messenger-page #messages_block_content_header_content_chat_input_photos label svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea{position:relative;display:flex;align-items:flex-end;min-height:46px;border:1px solid rgba(145,188,217,.11);border-radius:16px;background:#071521;padding:2px 44px 2px 13px}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea:focus-within{border-color:rgba(55,176,239,.28)}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea_text{appearance:none;display:block;width:100%;min-height:40px!important;max-height:132px!important;margin:0!important;padding:10px 0 8px!important;border:0!important;outline:0!important;resize:none!important;background:transparent!important;color:#eef8fd!important;font-size:13px!important;line-height:1.45!important;box-shadow:none!important}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea_text::placeholder{color:#526b7d}
.rn-messenger-page #emojiBtn{appearance:none;position:absolute;right:6px;bottom:5px;display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:11px;background:transparent;color:#688497;cursor:pointer}.rn-messenger-page #emojiBtn:hover{background:rgba(255,255,255,.035);color:#95dfff}.rn-messenger-page #emojiBtn>svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-messenger-page #Layer_1{border:0;background:linear-gradient(135deg,#1688e1,#26b8ed);color:#fff;box-shadow:0 9px 24px rgba(19,142,220,.22)}.rn-messenger-page #Layer_1:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(20,150,226,.28)}.rn-messenger-page #Layer_1 svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.rn-messenger-page #Layer_1.blocked,.rn-messenger-page #Layer_1.blocked2{opacity:.48;pointer-events:none}
.rn-messenger-page #emojiPicker{position:absolute;z-index:20;right:0;bottom:52px;display:none;width:min(340px,78vw);max-height:280px;border:1px solid rgba(145,188,217,.14);border-radius:18px;background:#091a28;box-shadow:0 24px 70px rgba(0,0,0,.46);overflow:hidden}.rn-messenger-page #emojiPickerEnter{max-height:280px;display:flex;flex-wrap:wrap;gap:3px;padding:10px;overflow-y:auto}.rn-messenger-page .emoji{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;font-size:18px;cursor:pointer}.rn-messenger-page .emoji:hover{background:#10283a}
.rn-messenger-page #uploadPhotos{display:flex;gap:6px;flex-wrap:wrap;padding:7px 54px 0}.rn-messenger-page #uploadPhotos:empty{display:none!important}.rn-messenger-page .uploadPhotosImg{position:relative;width:58px;height:58px}.rn-messenger-page .uploadPhotosImg img{width:58px;height:58px;object-fit:cover;border-radius:11px}

/* ---------- JS-created messenger popups ---------- */
body.rn-auth-body.block{overflow:hidden}
body.rn-auth-body #popupWindow{position:fixed!important;z-index:1300!important;inset:0!important;display:grid!important;place-items:center!important;padding:18px!important;background:rgba(1,6,11,.76)!important;backdrop-filter:blur(12px)!important}
body.rn-auth-body #popupWindowCon{width:min(490px,100%)!important;max-height:min(720px,92dvh)!important;border:1px solid rgba(145,188,217,.16)!important;border-radius:24px!important;background:linear-gradient(150deg,#0b1b29,#07131f)!important;box-shadow:0 34px 100px rgba(0,0,0,.58)!important;overflow:auto!important;color:#eaf4fb!important}
body.rn-auth-body #popupWindowConHeader{min-height:70px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:0 18px!important;border-bottom:1px solid rgba(145,188,217,.10)!important;background:transparent!important}
body.rn-auth-body #popupWindowConHeaderText{font-size:18px!important;font-weight:820!important;color:#f4fbff!important}
body.rn-auth-body #popupWindowConHeaderBtn{display:grid!important;place-items:center!important;width:37px!important;height:37px!important;border:1px solid var(--ui-line)!important;border-radius:12px!important;background:#0d2131!important;color:#8399aa!important;cursor:pointer!important}
body.rn-auth-body #popupWindowConHeaderBtn span{font-size:0!important}body.rn-auth-body #popupWindowConHeaderBtn span:before{content:"×";font-size:20px}
body.rn-auth-body #popupWindowConText{padding:18px!important}.popupWindowConTextItem{display:grid!important;gap:7px!important;margin:0 0 14px!important;color:#839aaa!important;font-size:11px!important}.popupWindowConTextItem p{margin:0!important}.popupWindowConTextItem input,.popupWindowConTextItem textarea,.popupWindowConTextItem select{appearance:none;width:100%!important;min-height:50px!important;margin:0!important;padding:10px 12px!important;border:1px solid rgba(145,188,217,.12)!important;border-radius:13px!important;background:#071521!important;color:#edf7fd!important;outline:0!important}.popupWindowConTextItem textarea{min-height:120px!important;resize:vertical!important}.popupWindowConTextItem select{appearance:none!important;-webkit-appearance:none!important;height:50px!important;padding:0 48px 0 13px!important;line-height:48px!important;cursor:pointer!important;background-color:#071521!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2389a8bb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 9 5 5 5-5'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 15px center!important;background-size:18px 18px!important}.popupWindowConTextItem select:hover{border-color:rgba(93,190,237,.24)!important}.popupWindowConTextItem select option{background:#071521;color:#edf7fd}.popupWindowConTextItem input:focus,.popupWindowConTextItem textarea:focus,.popupWindowConTextItem select:focus{border-color:rgba(58,184,245,.4)!important;box-shadow:0 0 0 4px rgba(42,164,231,.07)!important}.popupWindowConTextItemErr{display:none;margin-bottom:12px!important;padding:10px 12px!important;border:1px solid rgba(255,107,125,.18)!important;border-radius:11px!important;background:rgba(255,107,125,.06)!important;color:#ff8f9c!important;font-size:10px!important}.popupWindowConTextItem .btn,.popupWindowConTextItem .btn2{appearance:none;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:47px!important;margin:0!important;padding:0 14px!important;border:0!important;border-radius:13px!important;background:linear-gradient(135deg,#147edb,#27b8ee)!important;color:#fff!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important}

/* ---------- Public authentication / recovery / invite forms ---------- */
.rn-auth-screen{position:relative;isolation:isolate;min-height:calc(100vh - 86px);display:grid;place-items:center;padding:48px 24px;background:#050d17;overflow:hidden;font-family:Inter,Manrope,"Segoe UI",Arial,sans-serif}
.rn-auth-screen:before{content:"";position:absolute;z-index:-2;inset:-2%;background:url('/tmp/img/russnews/red-square-hero.png') center 45%/cover no-repeat;transform:scale(1.02)}
.rn-auth-screen:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(2,8,14,.88),rgba(3,10,17,.47) 48%,rgba(3,10,17,.88)),linear-gradient(0deg,rgba(3,9,16,.87),rgba(3,9,16,.12) 58%,rgba(3,9,16,.62));backdrop-filter:blur(2px)}
.rn-auth-stage{width:min(1000px,100%);min-height:580px;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr);overflow:hidden;border:1px solid rgba(154,207,238,.18);border-radius:30px;background:rgba(4,14,23,.58);box-shadow:0 38px 110px rgba(0,0,0,.50);backdrop-filter:blur(20px) saturate(115%)}
.rn-auth-intro{position:relative;display:flex;align-items:flex-end;overflow:hidden;padding:48px;border-right:1px solid rgba(153,205,237,.10);background:linear-gradient(155deg,rgba(11,36,56,.42),rgba(4,15,25,.18))}
.rn-auth-intro:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--ui-blue),var(--ui-cyan),transparent 74%)}
.rn-auth-intro__orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.rn-auth-intro__orb--one{width:260px;height:260px;left:-95px;top:-85px;background:rgba(27,139,226,.09)}.rn-auth-intro__orb--two{width:190px;height:190px;right:-70px;bottom:55px;background:rgba(71,219,255,.05)}
.rn-auth-intro__content{position:relative;z-index:1;max-width:460px}
.rn-auth-chip{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border:1px solid rgba(89,201,251,.20);border-radius:999px;background:rgba(18,113,174,.10);color:#81dcff;font-size:10px;font-weight:820;letter-spacing:.08em;text-transform:uppercase}
.rn-auth-intro h1{margin:18px 0 14px;color:#fff;font-size:clamp(36px,4.4vw,57px);line-height:1.02;letter-spacing:-.045em;font-weight:860}
.rn-auth-intro p{max-width:440px;margin:0;color:#a9bfce;font-size:14px;line-height:1.7}
.rn-auth-intro__status{display:flex;align-items:center;gap:8px;margin-top:28px;color:#7f9caf;font-size:10.5px}.rn-auth-intro__status i{width:8px;height:8px;border-radius:50%;background:var(--ui-green);box-shadow:0 0 0 4px rgba(73,214,154,.08)}
.rn-auth-panel{display:flex;flex-direction:column;justify-content:center;padding:46px 48px;background:linear-gradient(165deg,rgba(7,21,33,.90),rgba(5,16,26,.88))}
.rn-auth-panel__head{margin-bottom:26px}.rn-auth-eyebrow{display:block;color:#63cfff;font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.rn-auth-panel__head h2{margin:7px 0 7px;color:#fff;font-size:30px;line-height:1.08;letter-spacing:-.04em;font-weight:850}.rn-auth-panel__head p{margin:0;color:#7791a4;font-size:11.5px;line-height:1.6}
.rn-auth-form{display:grid;gap:16px}.rn-input-group{display:grid;gap:7px}.rn-input-label{color:#879dab;font-size:10.5px;font-weight:720}.rn-input-shell{position:relative;display:flex;align-items:center;width:100%;height:56px;border:1px solid rgba(144,190,220,.15);border-radius:15px;background:rgba(4,16,26,.74);transition:.18s}.rn-input-shell:focus-within{border-color:rgba(53,181,246,.55);box-shadow:0 0 0 4px rgba(39,158,228,.08)}.rn-input-shell.has-error{border-color:rgba(255,111,135,.46);box-shadow:0 0 0 4px rgba(255,90,115,.06)}
.rn-input-shell>svg{position:absolute;left:15px;width:19px;height:19px;fill:none;stroke:#637f92;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.rn-input-shell input{appearance:none;width:100%;height:54px!important;min-height:54px!important;max-height:54px!important;margin:0!important;padding:0 50px 0 46px!important;border:0!important;border-radius:15px!important;background:transparent!important;color:#f0f8fc!important;font-size:14px!important;line-height:54px!important;outline:0!important;box-shadow:none!important}.rn-input-shell input::placeholder{color:#4f687a}
.rn-auth-form__meta{display:flex;justify-content:flex-end;margin-top:-3px}.rn-auth-form__meta a,.rn-auth-back{color:#77cffa;font-size:10.5px;font-weight:700}.rn-auth-submit{appearance:none;display:flex;align-items:center;justify-content:space-between;width:100%;height:54px;margin-top:2px;padding:0 15px 0 18px;border:0;border-radius:15px;background:linear-gradient(135deg,#147edb,#27b8ee);color:#fff;font-size:12px;font-weight:820;box-shadow:0 13px 34px rgba(18,139,221,.22);cursor:pointer;transition:.18s}.rn-auth-submit:hover{transform:translateY(-1px);box-shadow:0 17px 42px rgba(18,147,228,.29)}.rn-auth-submit b{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:rgba(255,255,255,.10);font-size:16px;font-weight:700}.rn-auth-back{display:inline-flex;justify-content:center;margin-top:1px}.rn-auth-panel__foot{margin-top:20px;color:#526d80;font-size:9.5px;text-align:center}
.rn-form-message{display:none!important}.rn-form-message.is-visible{display:block!important;margin:0;padding:10px 12px;border:1px solid rgba(255,111,135,.17);border-radius:11px;background:rgba(255,91,113,.06);color:#ff95a5;font-size:10.5px;line-height:1.45}

/* ---------- Responsive ---------- */
@media(max-width:1180px){
  body.rn-auth-body .rn-app-nav{display:none}
  .rn-user-card{grid-template-columns:minmax(240px,.9fr) minmax(350px,1.25fr)}
  .rn-user-card__actions{grid-column:1/-1;justify-content:flex-start;padding-left:65px}
  .rn-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rn-media-users__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1000px){
  .rn-profile-overview,.rn-profile-grid{grid-template-columns:1fr}
  .rn-profile-stats{min-height:0}.rn-stat-card{min-height:128px}
  .rn-user-card{grid-template-columns:1fr}.rn-user-card__actions{grid-column:auto;padding-left:0;justify-content:flex-start}.rn-user-card__meta{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rn-review-card{grid-template-columns:230px minmax(0,1fr)}.rn-review-source img{height:190px}.rn-review-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rn-messenger-page{padding:0}.rn-messenger-page>.container3{width:100%}.rn-messenger-page #messages_block{grid-template-columns:1fr;border:0;border-radius:0}.rn-messenger-sidebar{grid-column:1;border-right:0}.rn-messenger-page #messages_block_content{grid-column:1}.rn-messenger-page #messages_block_content_back{display:flex;position:absolute;z-index:15;left:12px;top:13px}.rn-messenger-page #messages_block_content_back_block a{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--ui-line);border-radius:12px;background:#0c1f2f;color:#8ba5b7}.rn-messenger-page #messages_block_content_back_block svg{width:19px;height:19px;fill:currentColor}.rn-messenger-page #messages_block_content_back_block span{display:none}.rn-messenger-page #messages_block_content_header{padding-left:62px}.rn-messenger-page #messages_block_content_chat_users{max-width:calc(100vw - 78px)}
  .rn-messenger-page #messages_block.is-mobile-chat .rn-messenger-sidebar{display:none}.rn-messenger-page #messages_block.is-mobile-chat #messages_block_content{display:flex}.rn-messenger-page #messages_block.is-mobile-list .rn-messenger-sidebar{display:flex}.rn-messenger-page #messages_block.is-mobile-list #messages_block_content{display:none}
  body.rn-messenger-body .rn-toast-stack{top:auto;right:14px;bottom:120px;left:auto;width:min(360px,calc(100% - 28px))}
}
@media(max-width:900px){
  .rn-backup-metrics{grid-template-columns:1fr 1fr}
  .rn-auth-stage{grid-template-columns:1fr;min-height:0;max-width:560px}.rn-auth-intro{display:none}.rn-auth-panel{padding:42px}
  .rn-invite-list{grid-template-columns:1fr}
  .rn-media-grid{grid-template-columns:1fr 1fr}.rn-media-users__grid{grid-template-columns:1fr 1fr}
  .rn-review-card{grid-template-columns:1fr}.rn-review-source{grid-template-columns:150px minmax(0,1fr);align-items:center}.rn-review-source .rn-eyebrow{grid-column:1/-1}.rn-review-source>a{grid-row:2/4}.rn-review-source img{height:120px}.rn-review-source>strong{white-space:normal}
}
@media(max-width:760px){
  :root{--ui-header:66px}
  body.rn-auth-body .rn-app-header{height:66px}.rn-auth-main{min-height:calc(100dvh - 66px)}
  body.rn-auth-body .rn-app-header__inner{width:calc(100% - 26px);gap:12px}.rn-page-wrap,.rn-page-wrap--narrow{width:calc(100% - 26px)}
  body.rn-auth-body .rn-app-brand img{width:31px;height:39px}body.rn-auth-body .rn-app-brand>span{font-size:20px}
  body.rn-auth-body .rn-user-chip{display:none}body.rn-auth-body .rn-app-actions{margin-left:auto}
  body.rn-auth-body .rn-mobile-tabs{position:fixed;z-index:650;left:9px;right:9px;bottom:calc(8px + env(safe-area-inset-bottom));height:62px;display:grid;grid-template-columns:repeat(4,1fr);padding:5px;border:1px solid rgba(145,188,217,.15);border-radius:20px;background:rgba(7,20,31,.95);box-shadow:0 18px 55px rgba(0,0,0,.43);backdrop-filter:blur(20px)}
  body.rn-auth-body .rn-mobile-tabs a,body.rn-auth-body .rn-mobile-tabs button{appearance:none;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0;border:0;border-radius:15px;background:transparent;color:#6f8799;font-size:8px;font-weight:760;cursor:pointer}body.rn-auth-body .rn-mobile-tabs a.active{background:rgba(29,153,228,.09);color:#69cdff}body.rn-auth-body .rn-mobile-tabs svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.rn-mobile-tab-icon{position:relative;display:block}.rn-mobile-tab-icon i{position:absolute;right:-10px;top:-6px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#168fe9;color:#fff;font-size:8px}
  body.rn-auth-body .rn-auth-main{padding-bottom:80px}body.rn-auth-body .rn-app-footer{padding-bottom:92px}
  body.rn-messenger-body .rn-auth-main{height:calc(100dvh - 66px);padding-bottom:0}body.rn-messenger-body .rn-mobile-tabs{display:none}
  .rn-app-page{padding:28px 0 42px}.rn-page-heading{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:21px}.rn-page-heading h1{font-size:32px}.rn-page-heading p{font-size:12px}.rn-page-heading>.rn-button{width:100%}
  .rn-profile-identity{min-height:0;padding:20px}.rn-profile-avatar{width:82px;height:82px;border-radius:25px}.rn-profile-avatar img{border-radius:20px}.rn-profile-identity__copy h2{font-size:21px}.rn-profile-stats{grid-template-columns:1fr}.rn-stat-card{min-height:82px}.rn-settings-card{padding:19px}
  .rn-user-card{padding:15px}.rn-user-card__meta{grid-template-columns:1fr}.rn-user-card__actions{display:grid;grid-template-columns:1fr}.rn-user-card__actions .rn-button{width:100%}
  .rn-media-grid,.rn-media-users__grid{grid-template-columns:1fr}.rn-media-card__preview{height:210px}.rn-selection-bar{align-items:stretch;flex-direction:column}.rn-selection-bar__copy{margin-right:0}.rn-check-all{min-height:35px}.rn-selection-bar .rn-button{width:100%}
  .rn-upload-card{padding:15px}.rn-dropzone{min-height:300px;padding:30px 15px}.rn-upload-summary{grid-template-columns:1fr 1fr}.rn-upload-summary .rn-button{grid-column:1/-1}.rn-upload-items{grid-template-columns:1fr}.rn-upload-submit .rn-button{max-width:none}
  .rn-review-duplicates__head{align-items:flex-start;flex-direction:column}.rn-review-duplicates__head .rn-button{width:100%}.rn-review-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.rn-auth-body .rn-search-modal{padding:13px}body.rn-auth-body .rn-search-dialog{margin-top:7vh;padding:24px 17px 18px;border-radius:21px}body.rn-auth-body .rn-search-close{right:14px;top:14px;width:40px;height:40px}body.rn-auth-body .rn-search-dialog h2{font-size:26px;margin-bottom:19px}body.rn-auth-body .rn-search-form{grid-template-columns:1fr}body.rn-auth-body .rn-search-form input{height:56px!important;min-height:56px!important;max-height:56px!important;line-height:56px!important}body.rn-auth-body .rn-search-form button{width:100%;height:52px;min-height:52px}
  .rn-push-card{left:12px;right:12px;bottom:84px;width:auto;grid-template-columns:minmax(0,1fr) auto;padding:12px}.rn-push-card__icon{display:none}.rn-push-card .rn-button{grid-column:1;justify-self:start}.rn-push-card__close{grid-column:2;grid-row:1}.rn-toast-stack{left:12px;right:12px;top:76px;width:auto}body.rn-messenger-body .rn-toast-stack{top:auto;right:10px;bottom:calc(126px + env(safe-area-inset-bottom));left:10px;width:auto}
  .rn-auth-screen{min-height:calc(100dvh - 72px);padding:24px 13px 36px}.rn-auth-stage{border-radius:24px}.rn-auth-panel{padding:31px 24px}.rn-auth-panel__head h2{font-size:27px}.rn-auth-form{gap:15px}.rn-input-shell{height:56px}.rn-input-shell input{height:54px!important;min-height:54px!important;max-height:54px!important;line-height:54px!important}.rn-password-toggle,.rn-eye{width:42px!important;height:42px!important}
  .rn-messenger-page #messages_block_content_header{padding-top:9px;padding-bottom:8px}.rn-chat-head-main{min-height:46px}.rn-messenger-page #messages_block_content_chat_users{margin-top:5px}.rn-messenger-page #messages_block_content_header_content_chat{padding:16px 11px 13px}.messages_block_content_header_content_chat_item{max-width:89%;grid-template-columns:32px minmax(0,auto);gap:6px}.messages_block_content_header_content_chat_item_avatar,.messages_block_content_header_content_chat_item_avatar img{width:30px;height:30px}.messages_block_content_header_content_chat_item_avatar img{border-radius:10px}.messages_block_content_header_content_chat_item_text{padding:9px 10px 6px}.messages_block_content_header_content_chat_item_text__desc{font-size:13px}.delete_mess,.edit_mess{display:none!important}.rn-messenger-page #messages_block_content_header_content_chat_input{padding:7px 8px calc(7px + env(safe-area-inset-bottom))}.rn-messenger-page #messages_block_content_header_content_chat_input form{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px}.rn-messenger-page #messages_block_content_header_content_chat_input_photos label,.rn-messenger-page #Layer_1{width:44px;height:44px;border-radius:14px}.rn-messenger-page #messages_block_content_header_content_chat_input_textarea{min-height:44px;border-radius:15px}.rn-messenger-page #messages_block_content_header_content_chat_input_textarea_text{font-size:16px!important;min-height:40px!important}.rn-typing-bubble{left:10px;bottom:68px}.rn-messenger-page #emojiPicker{position:fixed;left:9px;right:9px;bottom:68px;width:auto;max-height:250px}.rn-messenger-page #uploadPhotos{padding-left:50px;padding-right:50px}
}
@media(max-width:520px){
  .rn-backup-card{padding:18px}.rn-backup-card__head{align-items:flex-start;flex-direction:column}.rn-backup-status{align-self:flex-start}.rn-backup-metrics{grid-template-columns:1fr}.rn-backup-metric{min-height:67px}
  body.rn-auth-body .rn-mobile-menu{padding:0}body.rn-auth-body .rn-mobile-menu__panel{width:100%;height:100%;margin:0;border:0;border-radius:0;display:flex;flex-direction:column}body.rn-auth-body .rn-mobile-nav{flex:1;align-content:start;padding:12px 14px}body.rn-auth-body .rn-mobile-menu__foot{padding-bottom:calc(14px + env(safe-area-inset-bottom))}
  .rn-profile-identity{align-items:flex-start;flex-direction:column}.rn-profile-avatar{width:88px;height:88px}.rn-profile-badges{margin-top:2px}.rn-detail-list>div{grid-template-columns:95px minmax(0,1fr)}
  .rn-invite-card{padding:16px}.rn-invite-card__top{align-items:flex-start;flex-direction:column}.rn-invite-card__meta{grid-template-columns:1fr}.rn-invite-card__actions .rn-button{width:100%}
  .rn-media-card__preview{height:185px}.rn-media-card__actions{display:grid;grid-template-columns:1fr 1fr auto}.rn-media-card__actions .rn-button{width:100%}.rn-media-card__body h2{min-height:auto}.rn-media-user{grid-template-columns:auto minmax(0,1fr) auto}.rn-media-user .rn-badge{grid-column:2}.rn-media-user__arrow{grid-column:3;grid-row:1/3}
  .rn-upload-summary{grid-template-columns:1fr}.rn-upload-summary .rn-button{grid-column:auto}.rn-upload-item{grid-template-columns:68px minmax(0,1fr)}.rn-upload-item__preview{width:68px;height:64px}
  .rn-review-source{grid-template-columns:110px minmax(0,1fr)}.rn-review-source img{height:100px}.rn-review-thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rn-messenger-sidebar-head{height:72px;padding:0 14px}.rn-messenger-sidebar-head h1{font-size:20px}.rn-chat-search{margin-left:10px;margin-right:10px}.messages_block_chats_content_item{min-height:70px;padding:8px}.rn-messenger-page #messages_block_content_header_text strong{font-size:13px}.rn-chat-participant{max-width:150px}.rn-chat-participant>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messages_block_content_header_content_chat_item{max-width:94%}.messages_block_content_header_content_chat_item_photo img{height:120px}
  .rn-message-toast{grid-template-columns:auto minmax(0,1fr) auto;padding:10px}.rn-message-toast__icon{width:36px;height:36px}.rn-message-toast__copy strong{font-size:11.5px}.rn-message-toast__copy span{font-size:10px}
  .rn-auth-panel{padding:28px 18px}.rn-auth-panel__head{margin-bottom:22px}.rn-auth-panel__head h2{font-size:25px}.rn-auth-panel__head p{font-size:11px}
}
@media(hover:none){
  .rn-button:hover,.rn-auth-submit:hover,.rn-media-card:hover,.rn-media-user:hover,.rn-messenger-page #Layer_1:hover{transform:none}
  .messages_block_chats_content_item:hover{background:transparent}.messages_block_chats_content_item.active:hover{background:linear-gradient(135deg,rgba(27,142,219,.16),rgba(56,204,244,.045))}
}

/* v20 polish: messenger actions + upload feedback */
.rn-messenger-page #error_message .admin{color:#ff91a1!important}
.rn-messenger-page .delete_mess,.rn-messenger-page .edit_mess{appearance:none;-webkit-appearance:none;font:inherit}


/* ---------- v19.3 messenger/media quality pass ---------- */
/* Dialog list: real links + separators */
.messages_block_chats_content_item{color:inherit;text-decoration:none!important;border-radius:0;margin:0;padding:10px 10px;min-height:78px;border:0;border-bottom:1px solid rgba(145,188,217,.075)}
.messages_block_chats_content_item:first-child{border-top:1px solid rgba(145,188,217,.045)}
.messages_block_chats_content_item:hover{background:rgba(255,255,255,.026)}
.messages_block_chats_content_item.active{border-bottom-color:rgba(67,179,236,.13);background:linear-gradient(90deg,rgba(25,139,211,.17),rgba(38,184,232,.035));box-shadow:inset 3px 0 0 #2aaeea}
.messages_block_chats_content_item:focus-visible{outline:2px solid rgba(77,196,250,.55);outline-offset:-2px}

/* RussNews fallback avatars */
.rn-avatar-fallback{display:grid;width:100%;height:100%;place-items:center;border-radius:inherit;background:radial-gradient(circle at 30% 22%,rgba(90,215,255,.23),transparent 42%),linear-gradient(145deg,#123b57,#0a2438);color:#8ee3ff;font-size:13px;font-weight:900;letter-spacing:-.02em;text-transform:uppercase;box-shadow:inset 0 0 0 1px rgba(96,205,253,.10)}
.rn-avatar-fallback--message{width:36px;height:36px;border-radius:13px;font-size:12px}

/* Message alignment, identity and blocked state */
.messages_block_content_header_content_chat_item{justify-self:start;text-align:left}
.messages_block_content_header_content_chat_item.self{justify-self:end;text-align:left}
.messages_block_content_header_content_chat_item_text{margin:0;text-align:left}
.messages_block_content_header_content_chat_item_display_name{display:flex;align-items:center;gap:7px;margin-bottom:5px;font-size:12.5px;line-height:1.2;font-weight:800}
.messages_block_content_header_content_chat_item_display_name>span{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.rn-blocked-badge{display:inline-flex;align-items:center;min-height:18px;padding:0 6px;border:1px solid rgba(255,104,125,.20);border-radius:999px;background:rgba(255,80,107,.08);color:#ff91a1;font-size:8.5px;line-height:16px;font-style:normal;font-weight:800;letter-spacing:.025em}
.rn-user-card.is-blocked{opacity:1;border-color:rgba(255,105,126,.16);background:linear-gradient(150deg,rgba(255,76,105,.035),rgba(8,23,35,.92))}
.rn-user-card.is-blocked:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:0 3px 3px 0;background:#ff758b}

/* System events and top alerts */
.messages_block_content_header_content_chat_item:has(.messages_block_content_header_content_chat_item_system){display:block;width:min(620px,calc(100% - 44px));max-width:none;margin:10px 0 10px 44px}
.messages_block_content_header_content_chat_item_system{position:relative;display:block;width:100%;justify-self:start;margin:0;padding:10px 13px 10px 36px;border:1px solid rgba(92,185,233,.14);border-radius:13px;background:linear-gradient(135deg,rgba(21,76,108,.22),rgba(7,27,41,.78));color:#a7c2d2;font-size:11.5px;line-height:1.5;text-align:left}
.messages_block_content_header_content_chat_item_system:before{content:"i";position:absolute;left:11px;top:10px;display:grid;place-items:center;width:17px;height:17px;border-radius:6px;background:rgba(52,179,238,.12);color:#72d1fb;font-size:10px;font-weight:900}
.rn-system-toast{left:50%!important;transform:translateX(-50%);display:none;align-items:center;justify-content:center;width:min(620px,calc(100% - 28px));min-height:54px!important;padding:10px 14px!important;border:1px solid rgba(145,188,217,.16)!important;border-radius:16px!important;background:rgba(7,23,35,.97)!important;box-shadow:0 18px 55px rgba(0,0,0,.42)!important;text-align:center!important}
.rn-system-toast:has(span:not(:empty)){display:flex}
.rn-system-toast span{display:flex;align-items:center;justify-content:center;min-height:30px;padding:3px 8px;color:#dbeaf2!important;font-size:12.5px!important;line-height:1.45!important;font-weight:720!important;text-align:center!important}
.rn-system-toast span.admin{color:#ff9aaa!important}.rn-system-toast span.on{color:#7ce2b6!important}

/* Stronger realtime notification cards */
.rn-message-toast{min-height:72px;padding:12px 13px!important;border-color:rgba(69,184,239,.23)!important;background:linear-gradient(145deg,rgba(12,39,57,.98),rgba(7,23,35,.98))!important;box-shadow:0 20px 55px rgba(0,0,0,.42),inset 3px 0 0 #27aee9!important}
.rn-message-toast__icon{width:42px!important;height:42px!important;border-radius:13px!important;background:rgba(35,162,224,.12)!important;color:#70d5ff!important}
.rn-message-toast__copy{gap:3px!important}.rn-message-toast__copy strong{font-size:13.5px!important;line-height:1.25!important}.rn-message-toast__copy span{font-size:11.5px!important;line-height:1.4!important;color:#91a9b8!important}
.rn-message-toast__close{width:30px!important;height:30px!important;border-radius:9px!important;font-size:18px!important}

/* Compact emoji palette */
.rn-messenger-page #emojiPicker{right:0;bottom:56px;width:292px;max-height:none;border-radius:16px;background:rgba(8,24,37,.985);box-shadow:0 24px 65px rgba(0,0,0,.52)}
.rn-emoji-picker__head{display:flex;align-items:center;justify-content:space-between;height:42px;padding:0 10px 0 13px;border-bottom:1px solid rgba(145,188,217,.09)}
.rn-emoji-picker__head strong{color:#9db4c3;font-size:10.5px;font-weight:820;letter-spacing:.04em;text-transform:uppercase}
#emojiPickerClose{appearance:none;display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:9px;background:transparent;color:#7690a1;font-size:18px;cursor:pointer}
#emojiPickerClose:hover{background:rgba(255,255,255,.05);color:#daf2fc}
.rn-messenger-page #emojiPickerEnter{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;max-height:188px;padding:8px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(82,173,218,.42) transparent}
.rn-messenger-page #emojiPickerEnter::-webkit-scrollbar{width:6px}.rn-messenger-page #emojiPickerEnter::-webkit-scrollbar-track{background:transparent}.rn-messenger-page #emojiPickerEnter::-webkit-scrollbar-thumb{border:1px solid transparent;border-radius:10px;background:rgba(82,173,218,.34);background-clip:padding-box}.rn-messenger-page #emojiPickerEnter::-webkit-scrollbar-thumb:hover{background:rgba(82,173,218,.52);background-clip:padding-box}
.rn-messenger-page .emoji{width:34px;height:34px;border-radius:10px;font-size:18px}

/* Composer: every control shares one baseline and height */
.rn-messenger-page #messages_block_content_header_content_chat_input form{grid-template-columns:50px minmax(0,1fr) 50px;align-items:end;gap:8px}
.rn-messenger-page #messages_block_content_header_content_chat_input_photos{height:50px}
.rn-messenger-page #messages_block_content_header_content_chat_input_photos label,.rn-messenger-page #Layer_1{width:50px;height:50px;border-radius:16px}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea{min-height:50px;padding:3px 47px 3px 14px;border-radius:16px;align-items:center}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea_text{min-height:42px!important;padding:10px 0!important;line-height:1.45!important}
.rn-messenger-page #emojiBtn{right:6px;bottom:6px;width:38px;height:38px;border-radius:12px}
.rn-messenger-page #Layer_1{align-self:end}

/* Editing */
.editMessTextarea{min-width:min(320px,65vw);border:1px solid rgba(97,199,247,.22)!important}.editMessTextarea.is-error{border-color:rgba(255,96,120,.65)!important;box-shadow:0 0 0 3px rgba(255,80,105,.07)}
.editMessTextareaBtnSave,.editMessTextareaBtnCansel{appearance:none;border:0;font:inherit;font-size:10px;cursor:pointer}.editMessTextareaBtnSave.blocked{opacity:.6;cursor:wait}

/* Media: copied gallery is unmistakable */
.rn-media-card{transition:border-color .18s,box-shadow .18s,transform .18s}
.rn-media-card.is-copied{border-color:rgba(75,211,171,.42)!important;box-shadow:0 0 0 3px rgba(67,210,169,.07),0 22px 65px rgba(0,0,0,.22)!important}
.rn-media-link{transition:border-color .18s,background .18s,box-shadow .18s}.rn-media-link.is-copied{border-color:rgba(73,218,173,.46)!important;background:rgba(48,179,140,.085)!important;box-shadow:0 0 0 3px rgba(56,201,159,.055)}
.rn-media-copy.is-copied{background:rgba(56,201,159,.16)!important;color:#75e2bd!important;border-color:rgba(75,219,177,.28)!important}
.rn-media-copy.is-copied:after{content:"✓";position:absolute;right:-5px;top:-5px;display:grid;place-items:center;width:17px;height:17px;border:2px solid #0b1b28;border-radius:50%;background:#45cfa4;color:#052018;font-size:10px;font-weight:900}
.rn-media-copy{position:relative}

@media(max-width:760px){
  .messages_block_content_header_content_chat_item:has(.messages_block_content_header_content_chat_item_system){width:calc(100% - 10px);margin:9px 0 9px 10px}
  .messages_block_content_header_content_chat_item_system{padding:9px 11px 9px 34px;font-size:11px}
  .rn-messenger-page #messages_block_content_header_content_chat_input form{grid-template-columns:48px minmax(0,1fr) 48px;gap:7px}
  .rn-messenger-page #messages_block_content_header_content_chat_input_photos{height:48px}
  .rn-messenger-page #messages_block_content_header_content_chat_input_photos label,.rn-messenger-page #Layer_1{width:48px;height:48px;border-radius:15px}
  .rn-messenger-page #messages_block_content_header_content_chat_input_textarea{min-height:48px}
  .rn-messenger-page #emojiPicker{position:fixed;left:10px;right:10px;bottom:calc(72px + env(safe-area-inset-bottom));width:auto;max-height:none}
  .rn-messenger-page #emojiPickerEnter{grid-template-columns:repeat(8,1fr);max-height:170px}
  .rn-messenger-page .emoji{width:100%;height:32px}
  .rn-message-toast__copy strong{font-size:13px!important}.rn-message-toast__copy span{font-size:11px!important}
}
@media(max-width:420px){.rn-messenger-page #emojiPickerEnter{grid-template-columns:repeat(7,1fr)}}
body.rn-auth-body .rn-system-toast:not(:empty),body.rn-auth-body .system_messages:not(:empty){display:flex!important;align-items:center;justify-content:center}
.rn-messenger-page #error_message{padding:11px 13px!important;border-color:rgba(255,111,135,.22)!important;background:rgba(255,82,108,.075)!important;color:#ff9aaa!important;font-size:12px!important;line-height:1.45!important;text-align:left!important}
body.rn-auth-body #popupWindow .popupWindowConTextItemErr{padding:11px 13px!important;font-size:12px!important;line-height:1.45!important;text-align:left!important}

/* ========================================================================== 
   RussNews UI v19.4 — chat polish / alerts / notes / emoji consistency
   ========================================================================== */

/* Global auth notices: centered horizontally, small top inset, 7s lifecycle is in script.js. */
body.rn-auth-body .rn-system-toast,
body.rn-auth-body .system_messages.rn-system-toast{
  position:fixed!important;
  z-index:1250!important;
  top:18px!important;
  right:auto!important;
  bottom:auto!important;
  left:50%!important;
  width:min(620px,calc(100vw - 28px))!important;
  min-height:54px!important;
  margin:0!important;
  transform:translateX(-50%)!important;
  text-align:center!important;
}
body.rn-auth-body .rn-system-toast.is-leaving{pointer-events:none}

/* Realtime chat notifications use the same visual axis instead of floating at the side/bottom. */
body.rn-auth-body .rn-toast-stack,
body.rn-messenger-body .rn-toast-stack{
  position:fixed!important;
  z-index:1240!important;
  top:82px!important;
  right:auto!important;
  bottom:auto!important;
  left:50%!important;
  width:min(430px,calc(100vw - 28px))!important;
  transform:translateX(-50%)!important;
}
.rn-message-toast{text-align:left}

/* Normal user text always starts from the left edge of its bubble. */
.messages_block_content_header_content_chat_item_text,
.messages_block_content_header_content_chat_item_text__desc{
  text-align:left!important;
}
.messages_block_content_header_content_chat_item_text__desc{
  display:block;
  width:100%;
}

/* Chat/system events are centered in the message timeline. */
.messages_block_content_header_content_chat_item:has(.messages_block_content_header_content_chat_item_system){
  display:flex!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  margin:10px 0!important;
}
.messages_block_content_header_content_chat_item_system{
  width:auto!important;
  max-width:min(620px,calc(100% - 34px))!important;
  margin:0 auto!important;
  padding:10px 15px 10px 38px!important;
  text-align:center!important;
}
.messages_block_content_header_content_chat_item_system:before{top:50%!important;transform:translateY(-50%)}

/* Styled scrolling in compose/edit textareas. */
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea_text,
.editMessTextarea{
  scrollbar-width:thin;
  scrollbar-color:rgba(79,174,221,.42) transparent;
}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea_text::-webkit-scrollbar,
.editMessTextarea::-webkit-scrollbar{width:6px}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea_text::-webkit-scrollbar-track,
.editMessTextarea::-webkit-scrollbar-track{background:transparent}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea_text::-webkit-scrollbar-thumb,
.editMessTextarea::-webkit-scrollbar-thumb{
  border:1px solid transparent;
  border-radius:10px;
  background:rgba(79,174,221,.34);
  background-clip:padding-box;
}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea_text::-webkit-scrollbar-thumb:hover,
.editMessTextarea::-webkit-scrollbar-thumb:hover{background:rgba(79,174,221,.52);background-clip:padding-box}

/* Twemoji SVG: same emoji artwork in Chrome/Firefox/Safari/Windows/macOS/Android/iOS. */
img.rn-twemoji{
  display:inline-block;
  width:1.12em;
  height:1.12em;
  margin:0 .035em;
  vertical-align:-.18em;
  object-fit:contain;
}
.rn-messenger-page #emojiPickerEnter .emoji{
  display:grid;
  place-items:center;
  line-height:1;
}
.rn-messenger-page #emojiPickerEnter img.rn-twemoji{
  width:21px;
  height:21px;
  margin:0;
  vertical-align:middle;
  pointer-events:none;
}

/* Message edit keeps the original bubble footprint; larger new text may still expand naturally. */
.messages_block_content_header_content_chat_item_text[data-edit-min-width]{max-width:100%}
.editMessTextarea{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  max-height:190px;
  resize:vertical!important;
  text-align:left!important;
}

/* New message history loader — no legacy purple SVG. */
.loader.rn-chat-loader{
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:max-content;
  max-width:calc(100% - 28px);
  min-height:38px;
  height:auto!important;
  margin:4px auto 10px;
  padding:8px 12px;
  border:1px solid rgba(87,188,237,.13);
  border-radius:999px;
  background:rgba(8,27,41,.90);
  box-shadow:0 10px 28px rgba(0,0,0,.18);
  color:#7996a8;
}
.rn-chat-loader__mark{display:flex;align-items:center;gap:4px;height:16px}
.rn-chat-loader__mark i{
  display:block;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#53c7f5;
  animation:rnLoaderDot 1s ease-in-out infinite;
}
.rn-chat-loader__mark i:nth-child(2){animation-delay:.13s}.rn-chat-loader__mark i:nth-child(3){animation-delay:.26s}
.rn-chat-loader__text{font-size:10px;font-weight:760;letter-spacing:.01em}
@keyframes rnLoaderDot{0%,70%,100%{opacity:.35;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}

/* Chats with notes are recognizable without an intrusive document icon. */
.messages_block_chats_content_item.has-note{
  border-color:rgba(245,184,91,.10);
  background:linear-gradient(90deg,rgba(245,177,70,.035),transparent 42%);
  box-shadow:inset 2px 0 0 rgba(245,184,91,.42);
}
.messages_block_chats_content_item.has-note.active{
  border-color:rgba(74,183,239,.18);
  background:linear-gradient(135deg,rgba(27,142,219,.16),rgba(245,177,70,.05));
  box-shadow:inset 3px 0 0 #2aaeea;
}
.rn-chat-note-badge{
  display:inline-flex;
  align-items:center;
  gap:5px;
  flex:0 0 auto;
  min-height:19px;
  padding:0 7px;
  border:1px solid rgba(245,184,91,.15);
  border-radius:999px;
  background:rgba(245,177,70,.065);
  color:#d7ad70;
  font-size:8.5px;
  font-weight:820;
  white-space:nowrap;
}
.rn-chat-note-badge__dot{width:5px;height:5px;border-radius:50%;background:#f0b45b;box-shadow:0 0 0 3px rgba(240,180,91,.08)}

/* Persistent copied state intentionally remains until another link is copied or page reloads. */
.rn-media-card.is-copied{transform:translateY(-1px)}

@media(max-width:760px){
  body.rn-auth-body .rn-system-toast,
  body.rn-auth-body .system_messages.rn-system-toast{top:10px!important;width:calc(100vw - 20px)!important;min-height:50px!important}
  body.rn-auth-body .rn-toast-stack,
  body.rn-messenger-body .rn-toast-stack{top:68px!important;width:calc(100vw - 20px)!important}
  .messages_block_content_header_content_chat_item_system{max-width:calc(100% - 18px)!important;font-size:11px!important}
  .rn-chat-note-badge{padding:0 6px;font-size:8px}
}

/* v19.4 QA follow-up: every chat error uses the same centered top notification. */
body.rn-auth-body .rn-messenger-page #error_message,
body.rn-messenger-body .rn-messenger-page #error_message{
  position:fixed!important;
  z-index:1265!important;
  top:18px!important;
  right:auto!important;
  bottom:auto!important;
  left:50%!important;
  width:min(620px,calc(100vw - 28px))!important;
  min-height:54px!important;
  margin:0!important;
  padding:12px 16px!important;
  transform:translateX(-50%)!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(255,111,135,.24)!important;
  border-radius:15px!important;
  background:rgba(44,18,28,.96)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.015) inset!important;
  color:#ffabb8!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.45!important;
  text-align:center!important;
  backdrop-filter:blur(16px);
}
body.rn-auth-body .rn-messenger-page #error_message .admin,
body.rn-messenger-body .rn-messenger-page #error_message .admin{color:inherit!important;text-align:center!important}

/* Explicit edit footprint: prevents a cancelled edit from collapsing to text width. */
.messages_block_content_header_content_chat_item_text[data-edit-width]{
  box-sizing:border-box;
  max-width:100%!important;
}

@media(max-width:760px){
  body.rn-auth-body .rn-messenger-page #error_message,
  body.rn-messenger-body .rn-messenger-page #error_message{
    top:10px!important;
    width:calc(100vw - 20px)!important;
    min-height:50px!important;
    padding:10px 13px!important;
  }
}

/* ========================================================================== 
   RussNews UI v19.7 — Telegram-inspired messenger refinement
   ========================================================================== */

/* --------------------------------------------------------------------------
   Message stream / bubbles
   -------------------------------------------------------------------------- */
.rn-messenger-page #messages_block_content_header_content_chat{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:0!important;
  overflow-x:hidden!important;
  container-type:inline-size;
  container-name:rn-chat-stream;
}

.rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row){
  position:relative!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  gap:9px!important;
  width:fit-content!important;
  max-width:min(78%,800px)!important;
  margin:5px 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  text-align:left!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self:not(.rn-system-message-row){
  justify-content:flex-end!important;
  max-width:min(70%,720px)!important;
  margin-left:auto!important;
}

.rn-messenger-page .messages_block_content_header_content_chat_item_avatar{
  flex:0 0 34px!important;
  width:34px!important;
  height:34px!important;
  margin:0 0 2px!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item_avatar img,
.rn-messenger-page .messages_block_content_header_content_chat_item_avatar > .rn-avatar-fallback,
.rn-messenger-page .rn-avatar-fallback--message{
  width:34px!important;
  height:34px!important;
  border-radius:11px!important;
  object-fit:cover!important;
}
.rn-messenger-page .rn-avatar-fallback--message{
  background:radial-gradient(circle at 30% 22%,rgba(90,215,255,.23),transparent 42%),linear-gradient(145deg,#123b57,#0a2438)!important;
  color:#8ee3ff!important;
  box-shadow:inset 0 0 0 1px rgba(96,205,253,.10)!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_avatar,
.rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_avatar_active{display:none!important}
.rn-messenger-page .messages_block_content_header_content_chat_item_avatar_active{left:25px!important;bottom:0!important}

/* Telegram-like bubble geometry, adapted to RussNews navy/cyan palette. */
.rn-messenger-page .messages_block_content_header_content_chat_item_text{
  position:relative!important;
  box-sizing:border-box!important;
  display:inline-block!important;
  width:auto!important;
  min-width:50cqw!important;
  max-width:calc(100% - 43px)!important;
  margin:0!important;
  padding:9px 12px 7px!important;
  overflow:visible!important;
  border:1px solid rgba(132,181,209,.10)!important;
  border-radius:18px 18px 18px 6px!important;
  background:#0d2536!important;
  color:#eaf4f8!important;
  box-shadow:0 6px 18px rgba(0,0,0,.12)!important;
  text-align:left!important;
  vertical-align:bottom!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_text{
  min-width:50cqw!important;
  max-width:100%!important;
  border-color:rgba(76,190,238,.13)!important;
  border-radius:18px 18px 6px 18px!important;
  background:linear-gradient(145deg,#0d638f 0%,#0a5178 100%)!important;
  box-shadow:0 7px 20px rgba(2,32,48,.20)!important;
}

/* Small Telegram-style tail. */
.rn-messenger-page .messages_block_content_header_content_chat_item_text::after{
  content:""!important;
  position:absolute!important;
  left:-6px!important;
  bottom:-1px!important;
  width:10px!important;
  height:13px!important;
  background:#0d2536!important;
  clip-path:polygon(100% 0,100% 100%,0 100%,60% 65%)!important;
  pointer-events:none!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_text::after{
  right:-6px!important;
  left:auto!important;
  background:#0a5178!important;
  transform:scaleX(-1)!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item_text::before{display:none!important}

.rn-messenger-page .messages_block_content_header_content_chat_item_display_name{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  min-height:16px!important;
  margin:0 0 4px!important;
  padding:0!important;
  color:#62ccf7!important;
  font-size:13.5px!important;
  line-height:1.18!important;
  font-weight:820!important;
  letter-spacing:-.01em!important;
  text-align:left!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_display_name{color:#c0ecff!important}
.rn-messenger-page .messages_block_content_header_content_chat_item_display_name,
.rn-messenger-page .messages_block_content_header_content_chat_item_display_name *{text-align:left!important}

/* Critical: message text is never centered. The PHP template also has no whitespace around the value. */
body.rn-auth-body .rn-messenger-page #messages_block_content_header_content_chat .messages_block_content_header_content_chat_item_text__desc,
body.rn-messenger-body .rn-messenger-page #messages_block_content_header_content_chat .messages_block_content_header_content_chat_item_text__desc{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#edf6fa!important;
  font-size:14px!important;
  line-height:1.48!important;
  font-weight:460!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  text-align:left!important;
  text-align-last:left!important;
  text-indent:0!important;
  direction:ltr!important;
  unicode-bidi:plaintext!important;
}
body.rn-auth-body .rn-messenger-page #messages_block_content_header_content_chat .messages_block_content_header_content_chat_item_text__desc *,
body.rn-messenger-body .rn-messenger-page #messages_block_content_header_content_chat .messages_block_content_header_content_chat_item_text__desc *{
  text-align:left!important;
  text-align-last:left!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item_date{
  display:block!important;
  margin:5px 0 0!important;
  padding:0!important;
  color:#607e91!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:650!important;
  text-align:right!important;
  white-space:nowrap!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_date{color:rgba(222,244,252,.62)!important}
.rn-messenger-page .messages_block_content_header_content_chat_item_photo{margin-top:7px!important;gap:4px!important;border-radius:13px!important}
.rn-messenger-page .messages_block_content_header_content_chat_item_photo a,
.rn-messenger-page .messages_block_content_header_content_chat_item_photo img{border-radius:12px!important}

/* --------------------------------------------------------------------------
   Message admin actions
   -------------------------------------------------------------------------- */
.rn-messenger-page .edit_mess,
.rn-messenger-page .delete_mess{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:absolute!important;
  z-index:8!important;
  top:50%!important;
  display:grid!important;
  place-items:center!important;
  width:31px!important;
  height:31px!important;
  margin:0!important;
  padding:0!important;
  transform:translateY(-50%)!important;
  border:1px solid rgba(126,178,205,.13)!important;
  border-radius:10px!important;
  background:rgba(7,22,33,.97)!important;
  color:#7e9aaa!important;
  box-shadow:0 7px 20px rgba(0,0,0,.18)!important;
  opacity:0!important;
  visibility:hidden!important;
  cursor:pointer!important;
  transition:opacity .14s,visibility .14s,background .14s,color .14s,border-color .14s!important;
}
/* Incoming message: actions live to the right of the bubble row. */
.rn-messenger-page .edit_mess{right:auto!important;left:calc(100% + 47px)!important}
.rn-messenger-page .delete_mess{right:auto!important;left:calc(100% + 9px)!important;color:#d27d8d!important}
/* Own message: actions live to the left with a clear gap from the bubble. */
.rn-messenger-page .messages_block_content_header_content_chat_item.self .edit_mess{left:auto!important;right:calc(100% + 47px)!important}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .delete_mess{left:auto!important;right:calc(100% + 9px)!important}
.rn-messenger-page .messages_block_content_header_content_chat_item:hover>.edit_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item:hover>.delete_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item:focus-within>.edit_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item:focus-within>.delete_mess{
  opacity:1!important;
  visibility:visible!important;
}
.rn-messenger-page .edit_mess:hover{border-color:rgba(86,202,248,.24)!important;background:#102c3e!important;color:#86ddff!important}
.rn-messenger-page .delete_mess:hover{border-color:rgba(255,119,142,.20)!important;background:rgba(91,28,40,.96)!important;color:#ff9bad!important}
.rn-messenger-page .edit_mess svg,
.rn-messenger-page .delete_mess svg{width:15px!important;height:15px!important;fill:currentColor!important}

/* --------------------------------------------------------------------------
   Edit state
   -------------------------------------------------------------------------- */
.rn-messenger-page .messages_block_content_header_content_chat_item_text.is-editing{
  border-color:rgba(87,201,246,.28)!important;
  box-shadow:0 0 0 3px rgba(66,188,240,.05),0 8px 24px rgba(0,0,0,.14)!important;
}
.rn-messenger-page .editMessTextarea{display:none!important}
.rn-messenger-page .rn-edit-composer{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:66px!important;
  max-height:190px!important;
  margin:0!important;
  padding:9px 10px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  border:1px solid rgba(88,190,236,.20)!important;
  border-radius:12px!important;
  outline:0!important;
  background:rgba(4,18,27,.72)!important;
  color:#edf7fb!important;
  font-size:14px!important;
  line-height:1.5!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
  text-align:left!important;
  caret-color:#68d2ff!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(79,174,221,.42) transparent!important;
}
.rn-messenger-page .rn-edit-composer:focus{border-color:rgba(88,202,248,.38)!important;box-shadow:0 0 0 3px rgba(61,185,240,.055)!important}
.rn-messenger-page .rn-edit-composer::-webkit-scrollbar{width:6px}
.rn-messenger-page .rn-edit-composer::-webkit-scrollbar-track{background:transparent}
.rn-messenger-page .rn-edit-composer::-webkit-scrollbar-thumb{border:1px solid transparent;border-radius:999px;background:rgba(79,174,221,.38);background-clip:padding-box}
.rn-messenger-page .editMessTextareaBtn{display:flex!important;justify-content:flex-end!important;gap:7px!important;margin-top:8px!important}
.rn-messenger-page .editMessTextareaBtnSave,
.rn-messenger-page .editMessTextareaBtnCansel{
  appearance:none!important;
  min-height:31px!important;
  padding:0 12px!important;
  border:1px solid rgba(126,179,207,.13)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.025)!important;
  color:#92aab8!important;
  font-size:10px!important;
  font-weight:760!important;
  cursor:pointer!important;
}
.rn-messenger-page .editMessTextareaBtnSave{border-color:rgba(60,190,244,.20)!important;background:rgba(32,142,196,.14)!important;color:#8addff!important}
.rn-messenger-page .editMessTextareaBtnSave:hover{background:rgba(32,142,196,.22)!important}
.rn-messenger-page .editMessTextareaBtnCansel:hover{background:rgba(255,255,255,.05)!important;color:#c5d8e1!important}

/* --------------------------------------------------------------------------
   Unified Twemoji: picker + composer + edit field + delivered messages
   -------------------------------------------------------------------------- */
.rn-messenger-page img.rn-twemoji{
  display:inline-block!important;
  width:1.16em!important;
  height:1.16em!important;
  margin:0 .20em!important;
  vertical-align:-.18em!important;
  object-fit:contain!important;
  pointer-events:none!important;
}
.rn-messenger-page #emojiPickerEnter img.rn-twemoji{width:21px!important;height:21px!important;margin:0!important;vertical-align:middle!important}
.rn-rich-caret-marker{display:inline!important;width:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important}

/* --------------------------------------------------------------------------
   Composer — attachment / field / send have one baseline and one height
   -------------------------------------------------------------------------- */
.rn-messenger-page #messages_block_content_header_content_chat_input form{
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr) 50px!important;
  align-items:end!important;
  gap:8px!important;
}
.rn-messenger-page #messages_block_content_header_content_chat_input_photos{height:50px!important;align-self:end!important}
.rn-messenger-page #messages_block_content_header_content_chat_input_photos label,
.rn-messenger-page #Layer_1{
  box-sizing:border-box!important;
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  min-height:50px!important;
  max-width:50px!important;
  max-height:50px!important;
  border-radius:16px!important;
  align-self:end!important;
}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea{
  box-sizing:border-box!important;
  position:relative!important;
  display:flex!important;
  align-items:stretch!important;
  min-height:50px!important;
  margin:0!important;
  padding:3px 48px 3px 14px!important;
  border:1px solid rgba(145,188,217,.11)!important;
  border-radius:16px!important;
  background:#071521!important;
}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea:focus-within{border-color:rgba(55,176,239,.30)!important;box-shadow:0 0 0 3px rgba(49,170,230,.045)!important}
.rn-messenger-page .rn-message-composer-source{display:none!important}
.rn-messenger-page .rn-message-composer{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-height:44px!important;
  max-height:132px!important;
  margin:0!important;
  padding:11px 11px 9px 0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:#eef8fd!important;
  font-size:14px!important;
  line-height:1.5!important;
  white-space:pre-wrap!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  text-align:left!important;
  text-align-last:left!important;
  caret-color:#64d0fb!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(77,169,214,.40) transparent!important;
}
.rn-messenger-page .rn-message-composer:empty::before{content:attr(data-placeholder);color:#526b7d;pointer-events:none}
.rn-messenger-page .rn-message-composer::-webkit-scrollbar{width:6px}
.rn-messenger-page .rn-message-composer::-webkit-scrollbar-track{background:transparent}
.rn-messenger-page .rn-message-composer::-webkit-scrollbar-thumb{border:1px solid transparent;border-radius:999px;background:rgba(77,169,214,.36);background-clip:padding-box}
.rn-messenger-page .rn-message-composer::-webkit-scrollbar-thumb:hover{background:rgba(77,169,214,.54);background-clip:padding-box}
.rn-messenger-page #emojiBtn{right:6px!important;bottom:5px!important;width:40px!important;height:40px!important;border-radius:12px!important}

/* --------------------------------------------------------------------------
   Sound state: icon is the current state, not the action
   -------------------------------------------------------------------------- */
.rn-messenger-page .rn-chat-icon-button{position:relative!important}
.rn-messenger-page .rn-chat-icon-button.active{display:grid!important}
.rn-messenger-page .rn-chat-icon-button:not(.active){display:none!important}
.rn-messenger-page .rn-chat-icon-button.active:hover::after{
  content:attr(data-tooltip);
  position:absolute;
  z-index:30;
  top:calc(100% + 8px);
  right:0;
  width:max-content;
  max-width:180px;
  padding:7px 9px;
  border:1px solid rgba(135,188,218,.14);
  border-radius:9px;
  background:#06131e;
  color:#cfe3ed;
  box-shadow:0 10px 28px rgba(0,0,0,.26);
  font-size:10px;
  line-height:1;
  font-weight:700;
  pointer-events:none;
}

/* System events remain centered; ordinary user messages above never inherit this. */
.rn-messenger-page .rn-system-message-row{
  display:flex!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  margin:7px 0!important;
  text-align:center!important;
}

/* --------------------------------------------------------------------------
   Mobile messenger navigation
   The bottom app tabs stay visible; messenger height ends above them.
   -------------------------------------------------------------------------- */
@media(max-width:760px){
  body.rn-messenger-body .rn-mobile-tabs{display:grid!important}
  body.rn-messenger-body .rn-auth-main{
    box-sizing:border-box!important;
    height:calc(100dvh - 66px - 78px)!important;
    min-height:0!important;
    padding-bottom:0!important;
  }
  body.rn-messenger-body .rn-messenger-page{height:100%!important;padding-bottom:4px!important}
  body.rn-messenger-body .rn-toast-stack{bottom:calc(150px + env(safe-area-inset-bottom))!important}

  .rn-messenger-page #messages_block_content_header{padding-top:9px!important;padding-bottom:8px!important}
  .rn-messenger-page #messages_block_content_header_content_chat{padding:15px 10px 12px!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row){gap:7px!important;margin:5px 0!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item_avatar{flex-basis:30px!important;width:30px!important;height:30px!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item_avatar img,
  .rn-messenger-page .messages_block_content_header_content_chat_item_avatar > .rn-avatar-fallback,
  .rn-messenger-page .rn-avatar-fallback--message{width:30px!important;height:30px!important;border-radius:10px!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row){max-width:78%!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self:not(.rn-system-message-row){max-width:76%!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item_text{max-width:calc(100% - 37px)!important;padding:8px 11px 7px!important;border-radius:17px 17px 17px 6px!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_text{max-width:100%!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_text{border-radius:17px 17px 6px 17px!important}
  body.rn-auth-body .rn-messenger-page #messages_block_content_header_content_chat .messages_block_content_header_content_chat_item_text__desc,
  body.rn-messenger-body .rn-messenger-page #messages_block_content_header_content_chat .messages_block_content_header_content_chat_item_text__desc{font-size:13.5px!important;line-height:1.48!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item_display_name{font-size:12.5px!important}

  /* Keep admin actions usable on touch, vertically aligned to the bubble. */
  .rn-messenger-page .edit_mess,
  .rn-messenger-page .delete_mess{width:29px!important;height:29px!important;opacity:.88!important;visibility:visible!important}
  .rn-messenger-page .edit_mess{right:auto!important;left:calc(100% + 43px)!important}
  .rn-messenger-page .delete_mess{right:auto!important;left:calc(100% + 8px)!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .edit_mess{left:auto!important;right:calc(100% + 43px)!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .delete_mess{left:auto!important;right:calc(100% + 8px)!important}

  .rn-messenger-page #messages_block_content_header_content_chat_input{padding:7px 8px 8px!important}
  .rn-messenger-page #messages_block_content_header_content_chat_input form{grid-template-columns:48px minmax(0,1fr) 48px!important;gap:7px!important}
  .rn-messenger-page #messages_block_content_header_content_chat_input_photos{height:48px!important}
  .rn-messenger-page #messages_block_content_header_content_chat_input_photos label,
  .rn-messenger-page #Layer_1{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;max-width:48px!important;max-height:48px!important;border-radius:15px!important}
  .rn-messenger-page #messages_block_content_header_content_chat_input_textarea{min-height:48px!important;padding:2px 45px 2px 13px!important;border-radius:15px!important}
  .rn-messenger-page .rn-message-composer{min-height:44px!important;padding:10px 10px 8px 0!important;font-size:16px!important}
  .rn-messenger-page #emojiBtn{right:4px!important;bottom:4px!important;width:40px!important;height:40px!important}
  .rn-messenger-page #emojiPicker{position:fixed!important;left:9px!important;right:9px!important;bottom:calc(145px + env(safe-area-inset-bottom))!important;width:auto!important;max-height:250px!important}
}

@media(max-width:430px){
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row){max-width:76%!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self:not(.rn-system-message-row){max-width:74%!important}
}


/* v19.8: comfortable minimum bubble width + restored no-photo avatar */
@supports not (width:1cqw){
  .rn-messenger-page .messages_block_content_header_content_chat_item_text{min-width:clamp(210px,38vw,420px)!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_text{min-width:clamp(210px,38vw,420px)!important}
}
@media (max-width:600px){
  .rn-messenger-page .messages_block_content_header_content_chat_item_text,
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .messages_block_content_header_content_chat_item_text{min-width:50cqw!important}
}

/* ========================================================================== 
   RussNews UI v19.9 — chat action alignment + deleted accounts
   ========================================================================== */

/* Message actions align with the TOP edge of the bubble, not its vertical center. */
.rn-messenger-page .edit_mess,
.rn-messenger-page .delete_mess{
  top:0!important;
  transform:none!important;
}

/* Deleted account is visually distinct from a temporary block. */
.rn-deleted-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:18px;
  padding:0 6px;
  border:1px solid rgba(148,164,178,.20);
  border-radius:999px;
  background:rgba(124,143,158,.10);
  color:#aebfca;
  font-size:8.5px;
  line-height:16px;
  font-style:normal;
  font-weight:820;
  letter-spacing:.025em;
  vertical-align:middle;
}
.rn-chat-participant.is-deleted{
  border-color:rgba(142,160,173,.12);
  background:rgba(98,119,134,.06);
  color:#91a5b2;
}
.rn-chat-participant.is-deleted>i{
  background:#152632;
  color:#94a9b5;
}
.rn-chat-participant .rn-deleted-badge{min-height:16px;padding:0 5px;font-size:7.5px;line-height:14px}

.rn-badge--deleted{
  color:#b6c4cd;
  border-color:rgba(151,169,181,.18);
  background:rgba(124,143,158,.09);
}
.rn-user-card.is-deleted{
  opacity:1;
  border-color:rgba(142,160,173,.13);
  background:linear-gradient(150deg,rgba(116,137,151,.035),rgba(8,23,35,.92));
}
.rn-user-card.is-deleted:before{
  content:"";
  position:absolute;
  left:0;
  top:16px;
  bottom:16px;
  width:3px;
  border-radius:0 3px 3px 0;
  background:#7c93a2;
}
.rn-user-card.is-deleted .rn-user-card__avatar{filter:saturate(.55)}
.rn-user-delete-form{display:inline-flex;margin:0}
.rn-button--danger-solid{
  border-color:rgba(255,101,125,.25)!important;
  background:rgba(118,31,46,.58)!important;
  color:#ffb0bd!important;
}
.rn-button--danger-solid:hover{background:rgba(145,38,55,.72)!important;border-color:rgba(255,119,141,.38)!important;color:#ffd5dc!important}
.rn-user-deleted-note{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border:1px solid rgba(145,166,180,.10);border-radius:11px;background:rgba(104,126,141,.055);color:#8198a7;font-size:10px;font-weight:700}

@media(max-width:760px){
  .rn-messenger-page .edit_mess,
  .rn-messenger-page .delete_mess{top:0!important;transform:none!important}
}

/* Account delete confirmation */
body.rn-modal-open{overflow:hidden}
.rn-confirm-modal{position:fixed;inset:0;z-index:1600;display:none;place-items:center;padding:18px}
.rn-confirm-modal.is-open{display:grid}
.rn-confirm-modal__backdrop{position:absolute;inset:0;background:rgba(2,9,15,.76);backdrop-filter:blur(8px)}
.rn-confirm-modal__dialog{position:relative;width:min(470px,100%);padding:24px;border:1px solid rgba(159,193,213,.14);border-radius:23px;background:linear-gradient(155deg,#0c2131,#071824);box-shadow:0 34px 100px rgba(0,0,0,.55)}
.rn-confirm-modal__icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:16px;border:1px solid rgba(255,112,134,.21);border-radius:14px;background:rgba(255,84,110,.08);color:#ff9daf;font-size:18px;font-weight:900}
.rn-confirm-modal__copy h2{margin:6px 0 0;color:#f3f9fc;font-size:22px;line-height:1.15;letter-spacing:-.035em}
.rn-confirm-modal__copy p{margin:11px 0 0;color:#8da4b3;font-size:12.5px;line-height:1.65}
.rn-confirm-modal__copy p strong{color:#dcebf2;font-weight:800}
.rn-confirm-modal__actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}
@media(max-width:520px){.rn-confirm-modal{padding:12px}.rn-confirm-modal__dialog{padding:20px;border-radius:20px}.rn-confirm-modal__actions{display:grid;grid-template-columns:1fr 1fr}.rn-confirm-modal__actions .rn-button{width:100%}}
.rn-user-card{position:relative;overflow:hidden}


/* ========================================================================== 
   RussNews UI v20.1 — unified confirms, header anchoring & message replies
   ========================================================================== */

/* Header uses three explicit columns, so the user chip never drifts into the
   center when the middle navigation disappears on tablet widths. */
body.rn-auth-body .rn-app-header__inner{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
}
body.rn-auth-body .rn-app-brand{grid-column:1!important;justify-self:start!important}
body.rn-auth-body .rn-app-nav{grid-column:2!important;justify-self:center!important;margin:0!important}
body.rn-auth-body .rn-app-actions{grid-column:3!important;justify-self:end!important;margin-left:0!important}

/* One visual language for the reusable confirmation modal. */
.rn-confirm-modal--global:not(.is-danger) .rn-confirm-modal__icon{
  border-color:rgba(72,197,250,.22);background:rgba(32,154,222,.10);color:#7ddcff;
}
.rn-confirm-modal--global:not(.is-danger) .rn-confirm-modal__dialog{
  border-color:rgba(91,195,239,.15);
}

/* Telegram-style flat reply preview inside a bubble. It references only the
   selected source message, never recursively renders that message's own reply. */
.rn-messenger-page .rn-message-reply-ref{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:relative!important;
  display:grid!important;
  grid-template-columns:3px minmax(0,1fr)!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  margin:0 0 7px!important;
  padding:6px 8px 6px 0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:9px!important;
  outline:0!important;
  background:rgba(1,13,22,.22)!important;
  color:inherit!important;
  text-align:left!important;
  cursor:pointer!important;
}
.rn-messenger-page .rn-message-reply-ref__bar{
  display:block!important;width:3px!important;height:100%!important;min-height:34px!important;
  border-radius:99px!important;background:#52caf8!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .rn-message-reply-ref__bar{background:#91e4ff!important}
.rn-messenger-page .rn-message-reply-ref__copy{display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;text-align:left!important}
.rn-messenger-page .rn-message-reply-ref__copy strong{
  overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  color:#69d1fb!important;font-size:11.5px!important;line-height:1.2!important;font-weight:820!important;text-align:left!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .rn-message-reply-ref__copy strong{color:#c2efff!important}
.rn-messenger-page .rn-message-reply-ref__copy small{
  display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  margin-top:3px!important;color:#8ea6b5!important;font-size:10.5px!important;line-height:1.25!important;font-weight:560!important;text-align:left!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .rn-message-reply-ref__copy small{color:rgba(229,247,253,.72)!important}
.rn-messenger-page .rn-message-reply-ref.is-missing{opacity:.58!important;cursor:default!important}

/* Reply/Edit/Delete are one compact action rail aligned to the bubble's top. */
.rn-messenger-page .reply_mess,
.rn-messenger-page .edit_mess,
.rn-messenger-page .delete_mess{
  appearance:none!important;-webkit-appearance:none!important;position:absolute!important;z-index:9!important;
  top:0!important;display:grid!important;place-items:center!important;width:31px!important;height:31px!important;
  margin:0!important;padding:0!important;transform:none!important;border:1px solid rgba(126,178,205,.13)!important;
  border-radius:10px!important;background:rgba(7,22,33,.97)!important;color:#7e9aaa!important;
  box-shadow:0 7px 20px rgba(0,0,0,.18)!important;opacity:0!important;visibility:hidden!important;
  cursor:pointer!important;transition:opacity .14s,visibility .14s,background .14s,color .14s,border-color .14s!important;
}
.rn-messenger-page .reply_mess{right:auto!important;left:calc(100% + 9px)!important;color:#69c8f0!important}
.rn-messenger-page .edit_mess{right:auto!important;left:calc(100% + 47px)!important}
.rn-messenger-page .delete_mess{right:auto!important;left:calc(100% + 85px)!important;color:#d27d8d!important}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .reply_mess{left:auto!important;right:calc(100% + 9px)!important}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .edit_mess{left:auto!important;right:calc(100% + 47px)!important}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .delete_mess{left:auto!important;right:calc(100% + 85px)!important}
.rn-messenger-page .messages_block_content_header_content_chat_item:hover>.reply_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item:hover>.edit_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item:hover>.delete_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item:focus-within>.reply_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item:focus-within>.edit_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item:focus-within>.delete_mess{opacity:1!important;visibility:visible!important}
.rn-messenger-page .reply_mess:hover{border-color:rgba(79,197,246,.25)!important;background:#102c3e!important;color:#9ce6ff!important}
.rn-messenger-page .reply_mess svg,
.rn-messenger-page .edit_mess svg,
.rn-messenger-page .delete_mess svg{width:15px!important;height:15px!important;fill:currentColor!important}

/* Composer reply strip, like Telegram but in RussNews palette. */
.rn-messenger-page .rn-reply-composer-bar{
  box-sizing:border-box!important;display:grid!important;grid-template-columns:3px minmax(0,1fr) 34px!important;align-items:center!important;gap:10px!important;
  width:100%!important;min-height:48px!important;margin:0 0 8px!important;padding:6px 7px 6px 0!important;
  border:1px solid rgba(92,190,232,.13)!important;border-radius:13px!important;background:rgba(6,25,38,.88)!important;
}
.rn-messenger-page .rn-reply-composer-bar[hidden]{display:none!important}
.rn-messenger-page .rn-reply-composer-bar__accent{display:block!important;width:3px!important;height:31px!important;border-radius:99px!important;background:linear-gradient(#52cdf9,#258fd4)!important}
.rn-messenger-page .rn-reply-composer-bar__copy{display:flex!important;flex-direction:column!important;min-width:0!important}
.rn-messenger-page .rn-reply-composer-bar__copy strong{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#72d5fb!important;font-size:11px!important;line-height:1.2!important;font-weight:830!important}
.rn-messenger-page .rn-reply-composer-bar__copy small{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;margin-top:3px!important;color:#829aa9!important;font-size:10.5px!important;line-height:1.2!important}
.rn-messenger-page #rn_reply_cancel{appearance:none!important;display:grid!important;place-items:center!important;width:32px!important;height:32px!important;padding:0!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#7992a2!important;font-size:20px!important;line-height:1!important;cursor:pointer!important}
.rn-messenger-page #rn_reply_cancel:hover{background:rgba(255,255,255,.045)!important;color:#d8ecf5!important}

/* Source-message jump feedback. */
.rn-messenger-page .messages_block_content_header_content_chat_item.rn-message-jump-focus .messages_block_content_header_content_chat_item_text{
  animation:rnReplyJump 1.8s ease!important;
}
@keyframes rnReplyJump{
  0%,100%{box-shadow:0 6px 18px rgba(0,0,0,.12)}
  18%,55%{box-shadow:0 0 0 3px rgba(72,199,249,.26),0 10px 30px rgba(2,110,164,.22)}
}

@media(max-width:760px){
  body.rn-auth-body .rn-app-header__inner{grid-template-columns:auto minmax(0,1fr) auto!important}
  /* Touch devices must still expose Reply. Admin actions remain compact enough
     to fit in the free side of a 70–76% message row. */
  .rn-messenger-page .reply_mess,
  .rn-messenger-page .edit_mess,
  .rn-messenger-page .delete_mess{display:grid!important;width:28px!important;height:28px!important;opacity:.9!important;visibility:visible!important}
  .rn-messenger-page .reply_mess{left:calc(100% + 7px)!important;right:auto!important}
  .rn-messenger-page .edit_mess{left:calc(100% + 39px)!important;right:auto!important}
  .rn-messenger-page .delete_mess{left:calc(100% + 71px)!important;right:auto!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .reply_mess{right:calc(100% + 7px)!important;left:auto!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .edit_mess{right:calc(100% + 39px)!important;left:auto!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .delete_mess{right:calc(100% + 71px)!important;left:auto!important}
  .rn-messenger-page .rn-reply-composer-bar{min-height:45px!important;margin-bottom:7px!important}
}
@media(max-width:760px){
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row){max-width:72%!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self:not(.rn-system-message-row){max-width:72%!important}
}
@media(max-width:430px){
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row),
  .rn-messenger-page .messages_block_content_header_content_chat_item.self:not(.rn-system-message-row){max-width:70%!important}
}

/* ========================================================================== 
   RussNews UI v20.2 — realtime reply sync, password spacing & voice messages
   ========================================================================== */

/* Password validation must breathe below the explanatory hint. */
body.rn-auth-body .rn-settings-card--security .rn-form-grid{margin-top:14px!important}
body.rn-auth-body .rn-settings-card--security .rn-inline-message.is-visible{margin:0 0 1px!important}

/* Composer gets two inline actions: microphone + emoji. */
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea{
  padding-right:91px!important;
}
.rn-messenger-page #voiceBtn,
.rn-messenger-page #emojiBtn{
  position:absolute!important;
  bottom:5px!important;
  display:grid!important;
  place-items:center!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  padding:0!important;
  border:0!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#6d8799!important;
  cursor:pointer!important;
  transition:background .15s,color .15s,transform .15s!important;
}
.rn-messenger-page #voiceBtn{right:47px!important}
.rn-messenger-page #emojiBtn{right:5px!important}
.rn-messenger-page #voiceBtn:hover,
.rn-messenger-page #emojiBtn:hover{background:rgba(53,173,231,.09)!important;color:#7fdcff!important}
.rn-messenger-page #voiceBtn.is-recording{background:rgba(255,91,113,.10)!important;color:#ff8498!important}
.rn-messenger-page #voiceBtn svg,
.rn-messenger-page #emojiBtn svg{width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.rn-messenger-page #voiceBtn svg rect{fill:none!important}

/* Voice draft replaces the visible text editor without changing composer height. */
.rn-messenger-page .rn-voice-draft[hidden]{display:none!important}
.rn-messenger-page .rn-voice-draft{
  position:absolute!important;
  z-index:6!important;
  inset:3px 5px 3px 10px!important;
  display:grid!important;
  grid-template-columns:auto auto minmax(54px,1fr) 36px!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
  padding:0 3px!important;
  border-radius:13px!important;
  background:#071521!important;
}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea.is-voice-mode .rn-message-composer{visibility:hidden!important;pointer-events:none!important}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea.is-voice-mode #voiceBtn,
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea.is-voice-mode #emojiBtn{display:none!important}
.rn-messenger-page .rn-voice-draft__live{display:flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important;color:#ff8da0!important;font-size:10.5px!important;font-weight:800!important}
.rn-messenger-page .rn-voice-draft__live>i{width:7px!important;height:7px!important;border-radius:50%!important;background:#ff5d78!important;box-shadow:0 0 0 4px rgba(255,93,120,.09)!important}
.rn-messenger-page .rn-voice-draft.is-ready .rn-voice-draft__live{color:#79d9ff!important}
.rn-messenger-page .rn-voice-draft.is-ready .rn-voice-draft__live>i{background:#35b7ef!important;box-shadow:0 0 0 4px rgba(53,183,239,.08)!important}
.rn-messenger-page #rn_voice_draft_timer{min-width:33px!important;color:#b5c9d5!important;font-size:10.5px!important;font-variant-numeric:tabular-nums!important;font-weight:760!important}
.rn-messenger-page .rn-voice-draft__wave{display:flex!important;align-items:center!important;gap:2px!important;height:27px!important;overflow:hidden!important;opacity:.72!important}
.rn-messenger-page .rn-voice-draft__wave i{display:block!important;width:2px!important;border-radius:99px!important;background:#319ed0!important}
.rn-messenger-page .rn-voice-draft__wave i:nth-child(4n+1){height:8px!important}.rn-messenger-page .rn-voice-draft__wave i:nth-child(4n+2){height:17px!important}.rn-messenger-page .rn-voice-draft__wave i:nth-child(4n+3){height:11px!important}.rn-messenger-page .rn-voice-draft__wave i:nth-child(4n){height:22px!important}
.rn-messenger-page .rn-voice-draft.is-recording .rn-voice-draft__wave i{animation:rnVoicePulse .85s ease-in-out infinite alternate!important}
.rn-messenger-page .rn-voice-draft.is-recording .rn-voice-draft__wave i:nth-child(3n){animation-delay:.18s!important}
@keyframes rnVoicePulse{from{opacity:.35;transform:scaleY(.65)}to{opacity:1;transform:scaleY(1)}}
.rn-messenger-page #rn_voice_stop,
.rn-messenger-page #rn_voice_delete,
.rn-messenger-page #rn_voice_preview_play{
  display:grid!important;place-items:center!important;width:34px!important;height:34px!important;padding:0!important;border:1px solid rgba(123,185,213,.13)!important;border-radius:10px!important;background:rgba(255,255,255,.025)!important;color:#82a1b3!important;cursor:pointer!important
}
.rn-messenger-page #rn_voice_stop[hidden],.rn-messenger-page #rn_voice_delete[hidden],.rn-messenger-page #rn_voice_preview_play[hidden]{display:none!important}
.rn-messenger-page #rn_voice_stop{color:#ff8195!important}.rn-messenger-page #rn_voice_delete{color:#ff8195!important}.rn-messenger-page #rn_voice_preview_play{color:#79d9ff!important}
.rn-messenger-page #rn_voice_stop svg,.rn-messenger-page #rn_voice_delete svg,.rn-messenger-page #rn_voice_preview_play svg{width:16px!important;height:16px!important;fill:currentColor!important;stroke:none!important}
.rn-messenger-page #rn_voice_preview_play .rn-voice-icon-pause{display:none!important}.rn-messenger-page #rn_voice_preview_play.is-playing .rn-voice-icon-play{display:none!important}.rn-messenger-page #rn_voice_preview_play.is-playing .rn-voice-icon-pause{display:block!important}
.rn-messenger-page #rn_voice_preview_audio{display:none!important}

/* Delivered voice message — Telegram-like control, RussNews palette. */
.rn-messenger-page .rn-voice-message{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  margin:2px 0 0!important;
  text-align:left!important;
}
.rn-messenger-page .rn-voice-play{
  display:grid!important;place-items:center!important;width:42px!important;height:42px!important;padding:0!important;border:0!important;border-radius:50%!important;
  background:linear-gradient(135deg,#1598dc,#3ac7ee)!important;color:#fff!important;box-shadow:0 8px 20px rgba(29,157,220,.20)!important;cursor:pointer!important
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .rn-voice-play{background:rgba(225,249,255,.94)!important;color:#107fae!important;box-shadow:none!important}
.rn-messenger-page .rn-voice-play svg{width:18px!important;height:18px!important;fill:currentColor!important;stroke:none!important}.rn-messenger-page .rn-voice-play .rn-voice-icon-pause{display:none!important}.rn-messenger-page .rn-voice-play.is-playing .rn-voice-icon-play{display:none!important}.rn-messenger-page .rn-voice-play.is-playing .rn-voice-icon-pause{display:block!important}
.rn-messenger-page .rn-voice-main{display:flex!important;flex-direction:column!important;gap:5px!important;min-width:0!important}
.rn-messenger-page .rn-voice-track{position:relative!important;display:block!important;width:100%!important;height:27px!important;padding:0!important;overflow:hidden!important;border:0!important;background:transparent!important;cursor:pointer!important}
.rn-messenger-page .rn-voice-wave{position:absolute!important;inset:2px 0!important;display:flex!important;align-items:center!important;gap:2px!important;overflow:hidden!important}
.rn-messenger-page .rn-voice-wave i{display:block!important;flex:1 1 auto!important;min-width:2px!important;max-width:3px!important;border-radius:99px!important;background:rgba(83,176,217,.42)!important}
.rn-messenger-page .rn-voice-wave i:nth-child(4n+1){height:8px!important}.rn-messenger-page .rn-voice-wave i:nth-child(4n+2){height:18px!important}.rn-messenger-page .rn-voice-wave i:nth-child(4n+3){height:12px!important}.rn-messenger-page .rn-voice-wave i:nth-child(4n){height:23px!important}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .rn-voice-wave i{background:rgba(225,249,255,.38)!important}
.rn-messenger-page .rn-voice-track__fill{position:absolute!important;z-index:2!important;top:0!important;bottom:0!important;left:0!important;width:0;pointer-events:none!important;background:rgba(83,211,255,.11)!important;border-right:1px solid rgba(103,220,255,.55)!important}
.rn-messenger-page .rn-voice-meta{display:flex!important;align-items:center!important;justify-content:space-between!important;color:#708b9c!important;font-size:9.5px!important;font-weight:720!important;font-variant-numeric:tabular-nums!important}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .rn-voice-meta{color:rgba(232,249,255,.65)!important}
.rn-messenger-page .rn-voice-transcript[hidden]{display:none!important}
.rn-messenger-page .rn-voice-transcript{
  display:block!important;margin:9px 0 2px!important;padding:9px 10px!important;border:1px solid rgba(87,190,234,.12)!important;border-radius:11px!important;background:rgba(2,14,22,.20)!important;color:#b8ccd7!important;font-size:11.5px!important;line-height:1.5!important;text-align:left!important;white-space:pre-wrap!important
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .rn-voice-transcript{border-color:rgba(225,249,255,.14)!important;background:rgba(1,28,42,.16)!important;color:#e6f6fb!important}

/* Voice transcription action occupies the edit slot. */
.rn-messenger-page .transcribe_voice{
  appearance:none!important;-webkit-appearance:none!important;position:absolute!important;z-index:9!important;top:0!important;display:grid!important;place-items:center!important;width:31px!important;height:31px!important;margin:0!important;padding:0!important;transform:none!important;border:1px solid rgba(126,178,205,.13)!important;border-radius:10px!important;background:rgba(7,22,33,.97)!important;color:#70c9ed!important;box-shadow:0 7px 20px rgba(0,0,0,.18)!important;opacity:0!important;visibility:hidden!important;cursor:pointer!important;transition:.14s!important
}
.rn-messenger-page .transcribe_voice{left:calc(100% + 47px)!important;right:auto!important}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .transcribe_voice{left:auto!important;right:calc(100% + 47px)!important}
.rn-messenger-page .messages_block_content_header_content_chat_item:hover>.transcribe_voice,.rn-messenger-page .messages_block_content_header_content_chat_item:focus-within>.transcribe_voice{opacity:1!important;visibility:visible!important}
.rn-messenger-page .transcribe_voice:hover{border-color:rgba(79,197,246,.25)!important;background:#102c3e!important;color:#9ce6ff!important}
.rn-messenger-page .transcribe_voice svg{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}

@media(max-width:760px){
  .rn-messenger-page #messages_block_content_header_content_chat_input_textarea{padding-right:87px!important}
  .rn-messenger-page #voiceBtn,.rn-messenger-page #emojiBtn{width:38px!important;height:38px!important;bottom:5px!important}
  .rn-messenger-page #voiceBtn{right:45px!important}.rn-messenger-page #emojiBtn{right:5px!important}
  .rn-messenger-page .rn-voice-draft{grid-template-columns:auto auto minmax(34px,1fr) 32px!important;gap:6px!important;inset:3px 4px 3px 8px!important}
  .rn-messenger-page .rn-voice-draft__wave i:nth-child(n+12){display:none!important}
  .rn-messenger-page #rn_voice_stop,.rn-messenger-page #rn_voice_delete,.rn-messenger-page #rn_voice_preview_play{width:32px!important;height:32px!important}
  .rn-messenger-page .transcribe_voice{display:grid!important;width:28px!important;height:28px!important;opacity:.9!important;visibility:visible!important;left:calc(100% + 39px)!important;right:auto!important}
  .rn-messenger-page .messages_block_content_header_content_chat_item.self .transcribe_voice{right:calc(100% + 39px)!important;left:auto!important}
}

/* ========================================================================
   RussNews v20.3 — hold-to-send voice, locked voice preview, send progress,
   and scroll-safe compact profile menu in short landscape viewports.
   ======================================================================== */
body.rn-auth-body .rn-mobile-menu__panel{
  display:flex!important;
  flex-direction:column!important;
  max-height:calc(100dvh - 24px)!important;
}
body.rn-auth-body .rn-mobile-menu__head,
body.rn-auth-body .rn-mobile-menu__foot{flex:0 0 auto!important}
body.rn-auth-body .rn-mobile-nav{
  min-height:0!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(68,177,226,.48) rgba(255,255,255,.035);
}
body.rn-auth-body .rn-mobile-nav::-webkit-scrollbar{width:6px}
body.rn-auth-body .rn-mobile-nav::-webkit-scrollbar-track{background:rgba(255,255,255,.025);border-radius:10px}
body.rn-auth-body .rn-mobile-nav::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(45,177,234,.64),rgba(29,113,175,.58));border-radius:10px}
@media(max-height:520px) and (orientation:landscape){
  body.rn-auth-body .rn-mobile-menu{padding:7px!important}
  body.rn-auth-body .rn-mobile-menu__panel{margin-top:0!important;max-height:calc(100dvh - 14px)!important;border-radius:18px!important}
  body.rn-auth-body .rn-mobile-menu__head{padding:11px 14px!important}
  body.rn-auth-body .rn-mobile-nav{padding:7px 10px!important}
  body.rn-auth-body .rn-mobile-nav a{min-height:42px!important}
  body.rn-auth-body .rn-mobile-menu__foot{padding:8px 10px 10px!important}
}

.rn-messenger-page #messages_block_content_header_content_chat_input{position:relative!important}
.rn-messenger-page .rn-message-send-progress{
  position:absolute!important;
  z-index:35!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:2px!important;
  overflow:hidden!important;
  pointer-events:none!important;
  opacity:0!important;
  transition:opacity .14s ease!important;
  background:rgba(34,159,224,.08)!important;
}
.rn-messenger-page .rn-message-send-progress.is-active{opacity:1!important}
.rn-messenger-page .rn-message-send-progress span{
  display:block!important;
  width:100%!important;
  height:100%!important;
  border-radius:99px!important;
  background:linear-gradient(90deg,#209fdc,#66dcff)!important;
  box-shadow:0 0 12px rgba(65,202,255,.46)!important;
  transform:scaleX(0);
  transform-origin:left center!important;
  transition:transform .24s cubic-bezier(.2,.72,.28,1)!important;
  will-change:transform;
}
.rn-messenger-page .rn-message-send-progress.is-complete span{
  box-shadow:0 0 15px rgba(86,221,255,.65)!important;
  transition-duration:.14s!important;
}

.rn-messenger-page #voiceBtn{
  touch-action:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  -webkit-touch-callout:none!important;
  -webkit-tap-highlight-color:transparent!important;
  -webkit-user-drag:none!important;
}
.rn-messenger-page #voiceBtn *,
.rn-messenger-page #voiceBtn svg,
.rn-messenger-page #voiceBtn path{
  user-select:none!important;
  -webkit-user-select:none!important;
  -webkit-touch-callout:none!important;
  -webkit-user-drag:none!important;
  pointer-events:none!important;
}
.rn-messenger-page #voiceBtn.is-locked{
  background:rgba(40,177,234,.13)!important;
  color:#8be2ff!important;
  box-shadow:0 0 0 1px rgba(71,197,245,.14) inset!important;
}
.rn-messenger-page .rn-voice-draft{
  grid-template-columns:auto auto minmax(90px,1fr) auto!important;
  gap:10px!important;
  overflow:visible!important;
}
.rn-messenger-page .rn-voice-draft__wave{
  width:100%!important;
  min-width:0!important;
}
.rn-messenger-page .rn-voice-draft__wave i{
  flex:1 1 2px!important;
  width:auto!important;
  min-width:1px!important;
  max-width:3px!important;
}
.rn-messenger-page .rn-voice-draft__actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  flex:0 0 auto!important;
  min-width:34px!important;
}
.rn-messenger-page .rn-voice-draft.is-ready .rn-voice-draft__actions{min-width:74px!important}
.rn-messenger-page .rn-voice-gesture-hint{
  position:absolute!important;
  right:8px!important;
  bottom:calc(100% + 8px)!important;
  display:none!important;
  max-width:min(340px,calc(100vw - 42px))!important;
  padding:6px 9px!important;
  border:1px solid rgba(106,190,229,.15)!important;
  border-radius:10px!important;
  background:rgba(6,21,32,.96)!important;
  color:#91aabd!important;
  box-shadow:0 9px 28px rgba(0,0,0,.28)!important;
  font-size:10px!important;
  line-height:1.3!important;
  font-weight:700!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}
.rn-messenger-page .rn-voice-draft.is-recording .rn-voice-gesture-hint{display:block!important}
.rn-messenger-page .rn-voice-draft.is-locked .rn-voice-gesture-hint{color:#90e2ff!important;border-color:rgba(73,197,243,.24)!important}
.rn-messenger-page .rn-voice-draft.is-auto-sending .rn-voice-draft__wave{opacity:.46!important}

@media(max-width:760px){
  .rn-messenger-page .rn-voice-draft{grid-template-columns:auto auto minmax(54px,1fr) auto!important;gap:7px!important;inset:3px 4px 3px 7px!important}
  .rn-messenger-page .rn-voice-draft__wave i:nth-child(n){display:block!important}
  .rn-messenger-page .rn-voice-draft__wave i:nth-child(n+21){display:none!important}
  .rn-messenger-page .rn-voice-draft__live strong{display:none!important}
  .rn-messenger-page .rn-voice-draft__live{width:12px!important;min-width:12px!important}
  .rn-messenger-page .rn-voice-draft.is-ready .rn-voice-draft__actions{min-width:68px!important}
  .rn-messenger-page #rn_voice_stop,.rn-messenger-page #rn_voice_delete,.rn-messenger-page #rn_voice_preview_play{width:31px!important;height:31px!important}
  .rn-messenger-page .rn-voice-gesture-hint{right:2px!important;bottom:calc(100% + 7px)!important;font-size:9.5px!important}
}
.rn-messenger-page .rn-voice-draft.is-ready .rn-voice-draft__live{display:none!important}

/* ========================================================================
   RussNews v20.5 — voice lock gesture + full-width seekable wave
   ======================================================================== */
.rn-messenger-page .rn-voice-draft{
  grid-template-columns:auto minmax(0,1fr) auto!important;
  gap:9px!important;
}
.rn-messenger-page .rn-voice-draft__info{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
  flex:0 0 auto!important;
}
.rn-messenger-page #rn_voice_draft_timer{
  min-width:38px!important;
  white-space:nowrap!important;
  color:#b5c9d5!important;
  font-size:10.5px!important;
  font-weight:780!important;
  font-variant-numeric:tabular-nums!important;
}
.rn-messenger-page .rn-voice-draft.is-ready #rn_voice_draft_timer{
  min-width:70px!important;
  color:#c9dce7!important;
}
.rn-messenger-page .rn-voice-draft__wave{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  height:31px!important;
  margin:0!important;
  padding:2px 0!important;
  gap:2px!important;
  overflow:hidden!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  opacity:.9!important;
  cursor:pointer!important;
  touch-action:none!important;
}
.rn-messenger-page .rn-voice-draft__wave:disabled{
  cursor:default!important;
  opacity:.72!important;
}
.rn-messenger-page .rn-voice-draft__wave i{
  display:block!important;
  flex:1 1 0!important;
  width:auto!important;
  min-width:1px!important;
  max-width:4px!important;
  border-radius:999px!important;
  background:rgba(65,137,172,.46)!important;
  transition:background .08s ease,opacity .08s ease!important;
}
.rn-messenger-page .rn-voice-draft__wave i.is-played{
  background:#62dcff!important;
  box-shadow:0 0 6px rgba(84,210,255,.2)!important;
}
.rn-messenger-page .rn-voice-draft.is-recording .rn-voice-draft__wave i.is-played{box-shadow:none!important}
.rn-messenger-page .rn-voice-draft__actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  min-width:0!important;
  flex:0 0 auto!important;
}
.rn-messenger-page .rn-voice-draft.is-ready .rn-voice-draft__actions{min-width:74px!important}

/* Sent voice: the bars themselves visually show seek progress. */
.rn-messenger-page .rn-voice-wave i.is-played{
  background:#55d2ff!important;
  box-shadow:0 0 6px rgba(72,205,255,.28)!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self .rn-voice-wave i.is-played{
  background:#72dcff!important;
  box-shadow:0 0 6px rgba(72,205,255,.24)!important;
}
.rn-messenger-page .rn-voice-track{touch-action:none!important}

/* Telegram-like swipe-up lock rail. The visible microphone travels to the lock. */
.rn-messenger-page .rn-voice-gesture-rail{
  --rn-voice-lift:0px;
  position:absolute!important;
  z-index:12!important;
  right:47px!important;
  bottom:5px!important;
  display:none!important;
  width:40px!important;
  height:108px!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.rn-messenger-page .rn-voice-gesture-rail.is-active{display:block!important}
.rn-messenger-page .rn-voice-gesture-rail__lock,
.rn-messenger-page .rn-voice-gesture-rail__mic{
  position:absolute!important;
  left:0!important;
  display:grid!important;
  place-items:center!important;
  width:40px!important;
  height:40px!important;
  border-radius:14px!important;
}
.rn-messenger-page .rn-voice-gesture-rail__lock{
  top:0!important;
  border:1px solid rgba(84,196,240,.18)!important;
  background:rgba(5,24,36,.94)!important;
  color:#7195a8!important;
  box-shadow:0 10px 26px rgba(0,0,0,.26)!important;
  opacity:.72!important;
  transform:scale(.92)!important;
  transition:.14s ease!important;
}
.rn-messenger-page .rn-voice-gesture-rail__mic{
  bottom:0!important;
  background:linear-gradient(145deg,#ff617b,#dd4764)!important;
  color:white!important;
  box-shadow:0 9px 24px rgba(226,66,94,.28)!important;
  transform:translateY(calc(-1 * var(--rn-voice-lift)))!important;
  transition:box-shadow .12s ease,background .12s ease!important;
}
.rn-messenger-page .rn-voice-gesture-rail.is-locked .rn-voice-gesture-rail__lock{
  border-color:rgba(89,214,255,.42)!important;
  background:#0b3045!important;
  color:#8ee7ff!important;
  opacity:1!important;
  transform:scale(1)!important;
  box-shadow:0 0 0 3px rgba(56,189,240,.08),0 12px 30px rgba(0,0,0,.3)!important;
}
.rn-messenger-page .rn-voice-gesture-rail.is-locked .rn-voice-gesture-rail__mic{
  background:linear-gradient(145deg,#1da9e3,#55d9ff)!important;
  box-shadow:0 0 0 3px rgba(71,206,255,.1),0 12px 28px rgba(22,157,212,.26)!important;
}
.rn-messenger-page .rn-voice-gesture-rail svg{
  width:19px!important;
  height:19px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.rn-messenger-page #messages_block_content_header_content_chat_input_textarea.is-voice-mode #voiceBtn{display:none!important}

@media(max-width:760px){
  .rn-messenger-page .rn-voice-draft{
    grid-template-columns:auto minmax(0,1fr) auto!important;
    gap:7px!important;
  }
  .rn-messenger-page .rn-voice-draft__info{gap:5px!important}
  .rn-messenger-page .rn-voice-draft__live strong{display:none!important}
  .rn-messenger-page .rn-voice-draft__live{width:10px!important;min-width:10px!important}
  .rn-messenger-page .rn-voice-draft.is-ready .rn-voice-draft__live{display:none!important}
  .rn-messenger-page .rn-voice-draft__wave i:nth-child(n){display:block!important}
  .rn-messenger-page .rn-voice-draft__wave{gap:1.5px!important}
  .rn-messenger-page .rn-voice-gesture-rail{right:45px!important;bottom:5px!important;width:38px!important}
  .rn-messenger-page .rn-voice-gesture-rail__lock,
  .rn-messenger-page .rn-voice-gesture-rail__mic{width:38px!important;height:38px!important;border-radius:13px!important}
}

/* ========================================================================
   RussNews v20.6 — true full-width voice waveform + precise seek
   ======================================================================== */
.rn-messenger-page .rn-voice-draft{
  width:auto!important;
  min-width:0!important;
  grid-template-columns:max-content minmax(0,1fr) max-content!important;
}
.rn-messenger-page .rn-voice-draft__info{
  width:max-content!important;
  max-width:max-content!important;
}
.rn-messenger-page .rn-voice-draft__wave{
  justify-self:stretch!important;
  align-self:center!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.rn-messenger-page .rn-voice-draft__wave i,
.rn-messenger-page .rn-voice-wave i{
  flex:1 1 0!important;
  width:0!important;
  min-width:1px!important;
  max-width:none!important;
}
.rn-messenger-page .rn-voice-draft__actions{
  width:max-content!important;
  min-width:0!important;
  flex:0 0 auto!important;
}
.rn-messenger-page .rn-voice-draft.is-ready .rn-voice-draft__actions{min-width:0!important}
.rn-messenger-page .rn-voice-draft__wave,
.rn-messenger-page .rn-voice-track{cursor:pointer!important;user-select:none!important;-webkit-user-select:none!important}
@media(max-width:760px){
  .rn-messenger-page .rn-voice-draft{grid-template-columns:max-content minmax(0,1fr) max-content!important}
  .rn-messenger-page .rn-voice-draft__wave i:nth-child(n){display:block!important}
}


/* ========================================================================
   RussNews v20.6.1 — fixed-width adaptive waveform bars
   ======================================================================== */
.rn-messenger-page .rn-voice-draft__wave,
.rn-messenger-page .rn-voice-wave{
  justify-content:flex-start!important;
  align-content:center!important;
  gap:2px!important;
}
.rn-messenger-page .rn-voice-draft__wave i,
.rn-messenger-page .rn-voice-wave i{
  flex:0 0 2px!important;
  width:2px!important;
  min-width:2px!important;
  max-width:2px!important;
}
@media(max-width:760px){
  .rn-messenger-page .rn-voice-draft__wave,
  .rn-messenger-page .rn-voice-wave{gap:1.5px!important}
  .rn-messenger-page .rn-voice-draft__wave i,
  .rn-messenger-page .rn-voice-wave i{
    flex-basis:2px!important;
    width:2px!important;
    min-width:2px!important;
    max-width:2px!important;
  }
}


/* ========================================================================
   RussNews v20.7.1 — encrypted voice UI stabilization
   ======================================================================== */
/* The reply action does not exist for own messages on desktop or touch UI. */
.rn-messenger-page .messages_block_content_header_content_chat_item.self>.reply_mess{
  display:none!important;
}

/* Keep the voice control optically centered and give the waveform the whole
   measured track width. Dynamic bar count is handled in script.js. */
.rn-messenger-page .rn-voice-message{
  align-items:center!important;
}
.rn-messenger-page .rn-voice-play{
  place-self:center!important;
  box-sizing:border-box!important;
  margin:0!important;
  line-height:0!important;
  font-size:0!important;
}
.rn-messenger-page .rn-voice-play svg{
  display:block!important;
  margin:auto!important;
  flex:none!important;
}
.rn-messenger-page .rn-voice-play .rn-voice-icon-play{
  transform:translateX(1px)!important;
  transform-origin:center!important;
}
.rn-messenger-page .rn-voice-main,
.rn-messenger-page .rn-voice-track,
.rn-messenger-page .rn-voice-wave{
  min-width:0!important;
  box-sizing:border-box!important;
}
.rn-messenger-page .rn-voice-main{width:100%!important}

/* While the finger/mouse is still holding the microphone, reserve the same
   horizontal area occupied by the floating lock/microphone rail. Otherwise
   a freshly recalculated waveform can temporarily continue underneath it. */
.rn-messenger-page .rn-voice-draft.is-recording:not(.is-locked) .rn-voice-draft__actions{
  min-width:82px!important;
}
@media(max-width:760px){
  .rn-messenger-page .rn-voice-draft.is-recording:not(.is-locked) .rn-voice-draft__actions{
    min-width:78px!important;
  }
}

/* Mouse clicks must not leave the action rail pinned open through :focus-within.
   Keyboard focus remains visible through :focus-visible. */
@media(hover:hover) and (pointer:fine){
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(:hover)>.reply_mess:not(:focus-visible),
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(:hover)>.edit_mess:not(:focus-visible),
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(:hover)>.delete_mess:not(:focus-visible),
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(:hover)>.transcribe_voice:not(:focus-visible){
    opacity:0!important;
    visibility:hidden!important;
  }
}

/* v21 sessions + realtime badges */
.rn-settings-card--sessions{grid-column:1/-1}.rn-session-message{margin-top:14px}.rn-session-list{display:grid;gap:10px;margin-top:18px}.rn-session-row{display:flex;align-items:center;gap:13px;padding:14px 15px;border:1px solid rgba(120,144,170,.18);border-radius:16px;background:rgba(255,255,255,.025)}.rn-session-row.is-current{border-color:rgba(74,181,255,.32)}.rn-session-device-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:rgba(88,151,215,.10);flex:none}.rn-session-device-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}.rn-session-copy{min-width:0;display:flex;flex:1;flex-direction:column;gap:4px}.rn-session-copy strong{font-size:14px}.rn-session-copy strong em{font-style:normal;font-size:10px;padding:3px 6px;border-radius:999px;background:rgba(53,180,118,.13);color:#64cf99;margin-left:5px}.rn-session-copy span,.rn-session-empty{font-size:12px;opacity:.67}.rn-session-copy .rn-session-meta{opacity:.9;color:#a8c5d8}.rn-session-revoke-form{margin-left:auto;flex:none}.rn-session-remove{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,105,120,.18);border-radius:12px;background:rgba(255,84,104,.07);color:#f18a98;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.rn-session-remove:hover{background:rgba(255,84,104,.14);border-color:rgba(255,105,120,.32);transform:translateY(-1px)}.rn-session-remove:focus-visible{outline:2px solid rgba(90,177,255,.65);outline-offset:2px}.rn-session-remove svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}.rn-session-actions{margin-top:16px}.rn-nav-alert[hidden],[data-rn-badge][hidden]{display:none!important}

/* ========================================================================
   RussNews v21 — messenger precision/realtime UI
   ======================================================================== */
.rn-messenger-page .rn-voice-message{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr)!important;
  grid-template-rows:42px auto!important;
  column-gap:10px!important;
  align-items:center!important;
}
.rn-messenger-page .rn-voice-message>.rn-voice-play{
  grid-column:1!important;grid-row:1!important;
  width:40px!important;height:40px!important;
  align-self:center!important;justify-self:center!important;
}
.rn-messenger-page .rn-voice-message>.rn-voice-main{display:contents!important}
.rn-messenger-page .rn-voice-message .rn-voice-track{
  grid-column:2!important;grid-row:1!important;
  width:100%!important;align-self:center!important;
}
.rn-messenger-page .rn-voice-message .rn-voice-meta{
  grid-column:2!important;grid-row:2!important;
  margin-top:2px!important;
}
.rn-messenger-page .rn-voice-message>audio{display:none!important}
.rn-messenger-page .messages_block_content_header_content_chat_item.self>.edit_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item.self>.transcribe_voice{
  left:auto!important;
  right:calc(100% + 9px)!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self>.delete_mess{
  left:auto!important;
  right:calc(100% + 47px)!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self>.edit_mess + .delete_mess,
.rn-messenger-page .messages_block_content_header_content_chat_item.self>.transcribe_voice + .delete_mess{
  right:calc(100% + 47px)!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item_text.is-editing .messages_block_content_header_content_chat_item_date,
.rn-messenger-page .messages_block_content_header_content_chat_item_text__desc .editMessTextareaBtn{
  margin-top:12px!important;
}
.rn-messenger-page .editMessTextareaBtn{margin-bottom:10px!important}
.rn-chat-empty-state{margin:auto;padding:28px 22px;text-align:center;display:flex;flex-direction:column;gap:7px;max-width:360px;opacity:.7}
.rn-chat-empty-state strong{font-size:15px}.rn-chat-empty-state span{font-size:12px;line-height:1.45}
#rn_chat_jump_bottom{position:absolute;right:22px;bottom:90px;width:44px;height:44px;border:0;border-radius:50%;display:grid;place-items:center;z-index:20;box-shadow:0 8px 28px rgba(0,0,0,.18);cursor:pointer}
#rn_chat_jump_bottom[hidden]{display:none!important}
#rn_chat_jump_bottom svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}
#rn_chat_jump_bottom .rn-jump-count{position:absolute;right:-4px;top:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;display:grid;place-items:center;font-size:10px;font-weight:700}

/* RUSSNEWS v21 media management */
.rn-heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.rn-media-range{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 18px;padding:18px 20px}
.rn-media-range__copy{display:flex;flex-direction:column;gap:4px;min-width:220px}
.rn-media-range__copy strong{font-size:16px;line-height:1.3}
.rn-media-range__copy small{opacity:.68;line-height:1.45}
.rn-media-range__form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.rn-media-range__form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700}
.rn-media-range__form input[type="date"]{min-height:42px;border:1px solid rgba(127,127,127,.25);border-radius:12px;padding:0 12px;background:#0b1b29;color:#eaf3f8!important;font:inherit;color-scheme:dark}.rn-media-range__form input[type="date"]::-webkit-datetime-edit{color:#eaf3f8}.rn-media-range__form input[type="date"]::-webkit-calendar-picker-indicator{opacity:.85;cursor:pointer}
.rn-media-card.is-unread{box-shadow:0 0 0 1px rgba(34,113,255,.20),var(--rn-shadow,0 12px 32px rgba(0,0,0,.08))}
.add_files_block_preview_item_name_system_message.is-error{color:#c93434}
@media(max-width:760px){.rn-heading-actions{width:100%;justify-content:stretch}.rn-heading-actions .rn-button{flex:1}.rn-media-range{align-items:stretch;flex-direction:column}.rn-media-range__form{display:grid;grid-template-columns:1fr 1fr}.rn-media-range__form .rn-button{grid-column:1/-1}.rn-media-range__form input[type="date"]{width:100%;box-sizing:border-box}}
@media(max-width:420px){.rn-media-range__form{grid-template-columns:1fr}}

/* ========================================================================
   RussNews v21.2 — media cleanup, video tiles, admin session history
   ======================================================================== */
.rn-media-range{display:block!important;padding:0!important;overflow:hidden}
.rn-media-range__toggle{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:72px;padding:14px 18px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.rn-media-range__toggle:hover{background:rgba(255,255,255,.018)}
.rn-media-range__toggle .rn-media-range__copy{flex:1}
.rn-media-range__chevron{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border:1px solid rgba(145,188,217,.11);border-radius:11px;background:#0a1c2b;color:#7897aa;transition:transform .2s,border-color .2s,color .2s}
.rn-media-range__chevron svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rn-media-range.is-open .rn-media-range__chevron{transform:rotate(180deg);border-color:rgba(68,190,247,.22);color:#70d2ff}
.rn-media-range__panel{padding:0 18px 18px;border-top:1px solid rgba(145,188,217,.07)}
.rn-media-range__panel[hidden]{display:none!important}
.rn-media-range__panel .rn-media-range__form{padding-top:15px}

.rn-media-video-thumb{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;background:radial-gradient(circle at 50% 38%,rgba(35,174,236,.18),transparent 34%),linear-gradient(145deg,#0e2a3e,#07131f 72%);color:#8edcff}
.rn-media-video-thumb:before,.rn-media-video-thumb:after{content:"";position:absolute;inset:auto;border-radius:50%;border:1px solid rgba(90,204,255,.08)}
.rn-media-video-thumb:before{width:112px;height:112px}.rn-media-video-thumb:after{width:72px;height:72px}
.rn-media-video-thumb__icon{position:relative;z-index:2;display:grid;place-items:center;width:50px;height:50px;border:1px solid rgba(106,215,255,.24);border-radius:17px;background:rgba(10,34,49,.84);box-shadow:0 16px 35px rgba(0,0,0,.25),inset 0 0 0 4px rgba(255,255,255,.015)}
.rn-media-video-thumb__icon svg{width:22px;height:22px;fill:currentColor;stroke:none;margin-left:2px}
.rn-media-video-thumb__label{position:absolute;z-index:2;left:50%;bottom:14px;transform:translateX(-50%);color:#6f9eb7;font-size:8px;font-weight:850;letter-spacing:.16em}
.rn-media-card__thumb.is-video{padding:0!important}
.rn-media-card__thumb.is-video img{display:none!important}

.rn-user-session-panel{grid-column:1/-1;margin-top:-5px;padding-top:15px;border-top:1px solid rgba(145,188,217,.08)}
.rn-user-session-panel[hidden]{display:none!important}
.rn-admin-session-loading,.rn-admin-session-empty{padding:14px;border:1px dashed rgba(145,188,217,.12);border-radius:14px;color:#748da0;font-size:11px;text-align:center}
.rn-admin-session-loading.is-error{border-color:rgba(255,111,135,.18);color:#ff9aaa}
.rn-admin-session-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}
.rn-admin-session-head>div{display:flex;flex-direction:column;gap:3px;min-width:0}.rn-admin-session-head strong{color:#edf7fc;font-size:14px}.rn-admin-session-head small{color:#6d8799;font-size:10px;line-height:1.45}
.rn-admin-session-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rn-admin-session-columns section{min-width:0;padding:13px;border:1px solid rgba(145,188,217,.08);border-radius:16px;background:rgba(5,17,27,.38)}
.rn-admin-session-columns h3{display:flex;align-items:center;gap:7px;margin:0 0 10px;color:#a9bfcc;font-size:10px;font-weight:820;text-transform:uppercase;letter-spacing:.045em}
.rn-admin-session-columns h3 span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:rgba(55,170,229,.10);color:#69cdfb;font-size:9px}
.rn-admin-session-list{display:grid;gap:8px}
.rn-admin-session-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid rgba(145,188,217,.075);border-radius:13px;background:rgba(9,28,42,.72)}
.rn-admin-session-row .rn-session-device-icon{width:38px;height:38px;border-radius:12px}.rn-admin-session-row .rn-session-device-icon svg{width:19px;height:19px}
.rn-admin-session-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.rn-admin-session-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dcebf4;font-size:11.5px}.rn-admin-session-copy strong em{font-style:normal;font-size:8px;padding:2px 5px;border-radius:999px;background:rgba(53,180,118,.13);color:#64cf99}.rn-admin-session-copy span{color:#7893a5;font-size:9.5px}.rn-admin-session-copy small{color:#60798b;font-size:8.8px;line-height:1.4}
.rn-admin-session-status{display:inline-flex;align-items:center;min-height:24px;padding:0 7px;border-radius:999px;font-size:8px;font-weight:850;white-space:nowrap}.rn-admin-session-status.is-active{background:rgba(57,192,131,.11);color:#72d8a7}.rn-admin-session-status.is-expired{background:rgba(151,169,183,.08);color:#8fa6b5}.rn-admin-session-status.is-revoked{background:rgba(255,105,126,.09);color:#ff9aaa}
.rn-user-sessions-toggle.is-open{border-color:rgba(63,188,246,.22)!important;color:#7fd7ff!important}

@media(max-width:1000px){.rn-admin-session-columns{grid-template-columns:1fr}}
@media(max-width:760px){
  .rn-media-range__toggle{min-height:66px;padding:13px 14px}.rn-media-range__panel{padding:0 14px 14px}.rn-media-range__form{display:grid!important;grid-template-columns:1fr 1fr!important}.rn-media-range__form .rn-button{grid-column:1/-1}.rn-media-range__form input[type="date"]{width:100%;box-sizing:border-box}
  .rn-admin-session-head{align-items:flex-start;flex-direction:column}.rn-admin-session-head .rn-button{width:100%}.rn-admin-session-row{grid-template-columns:38px minmax(0,1fr)}.rn-admin-session-status{grid-column:2;justify-self:start}.rn-user-session-panel{margin-top:4px}
}
@media(max-width:420px){.rn-media-range__form{grid-template-columns:1fr!important}}

/* v21.2.1 keep user row actions compact on every viewport */
@media(max-width:760px){
  .rn-user-card__actions{display:flex!important;grid-template-columns:none!important;align-items:center;justify-content:flex-start;gap:7px;flex-wrap:wrap}
  .rn-user-card__actions .rn-user-action-icon{width:42px!important;height:42px!important}
}

@media(hover:none){
  .rn-admin-page .rn-user-action-icon::after{display:none!important}
}


/* ========================================================================
   RussNews v21.2.3 — chat jump control + compact sliding media cleanup
   ======================================================================== */
.rn-messenger-page #rn_chat_jump_bottom{
  appearance:none;
  position:absolute;
  right:22px;
  bottom:calc(var(--rn-chat-input-height, 90px) + 12px);
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  padding:0;
  border:1px solid rgba(73,194,247,.28);
  border-radius:15px;
  background:linear-gradient(145deg,rgba(11,39,57,.98),rgba(6,22,34,.98));
  color:#78d8ff;
  box-shadow:0 14px 38px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  cursor:pointer;
  z-index:20;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.rn-messenger-page #rn_chat_jump_bottom[hidden]{display:none!important}
.rn-messenger-page #rn_chat_jump_bottom:hover{
  transform:translateY(-2px);
  border-color:rgba(96,211,255,.42);
  background:linear-gradient(145deg,rgba(15,50,71,.99),rgba(8,29,43,.99));
  color:#c8f2ff;
  box-shadow:0 17px 42px rgba(0,0,0,.38),0 0 0 4px rgba(45,171,230,.055);
}
.rn-messenger-page #rn_chat_jump_bottom:active{transform:translateY(0)}
.rn-messenger-page #rn_chat_jump_bottom:focus-visible{outline:0;box-shadow:0 17px 42px rgba(0,0,0,.38),0 0 0 4px rgba(56,185,242,.12)}
.rn-messenger-page #rn_chat_jump_bottom .rn-jump-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:rgba(53,177,232,.075)}
.rn-messenger-page #rn_chat_jump_bottom svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.rn-messenger-page #rn_chat_jump_bottom .rn-jump-count{
  position:absolute;
  top:-7px;
  right:-7px;
  display:grid;
  place-items:center;
  min-width:21px;
  height:21px;
  padding:0 5px;
  border:2px solid #071521;
  border-radius:999px;
  background:linear-gradient(135deg,#168bea,#2bbdf0);
  color:#fff;
  box-shadow:0 7px 18px rgba(22,139,226,.34);
  font-size:9px;
  line-height:1;
  font-weight:850;
  font-variant-numeric:tabular-nums;
}
.rn-messenger-page #rn_chat_jump_bottom .rn-jump-count[hidden]{display:none!important}

.rn-media-cleanup-toggle{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid rgba(255,101,120,.20)!important;
  background:linear-gradient(180deg,rgba(255,89,111,.10),rgba(255,89,111,.055))!important;
  color:#ff9cab!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
  transition:background .18s,border-color .18s,color .18s,box-shadow .18s,transform .18s;
}
.rn-media-cleanup-toggle:hover{
  border-color:rgba(255,112,130,.34)!important;
  background:linear-gradient(180deg,rgba(255,92,113,.16),rgba(255,92,113,.09))!important;
  color:#ffc0c9!important;
  box-shadow:0 10px 28px rgba(91,16,28,.15),inset 0 1px 0 rgba(255,255,255,.025);
}
.rn-media-cleanup-toggle:focus-visible{outline:0;box-shadow:0 0 0 4px rgba(255,91,113,.08),0 10px 28px rgba(91,16,28,.13)}
.rn-media-cleanup-toggle__trash,.rn-media-cleanup-toggle__chevron{width:17px;height:17px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.rn-media-cleanup-toggle__chevron{width:14px;height:14px;margin-left:1px;color:#d77988;transition:transform .26s ease,color .18s}
.rn-media-cleanup-toggle.is-open{border-color:rgba(255,111,130,.38)!important;background:linear-gradient(180deg,rgba(255,92,113,.18),rgba(255,92,113,.10))!important;color:#ffc0c9!important}
.rn-media-cleanup-toggle.is-open .rn-media-cleanup-toggle__chevron{transform:rotate(180deg);color:#ffb1be}

.rn-media-cleanup{
  max-height:0;
  margin:-10px 0 0;
  opacity:0;
  overflow:hidden;
  transform:translateY(-10px);
  pointer-events:none;
  visibility:hidden;
  transition:max-height .34s cubic-bezier(.2,.75,.25,1),margin .30s ease,opacity .20s ease,transform .30s ease,visibility 0s linear .34s;
}
.rn-media-cleanup.is-open{
  max-height:260px;
  margin:-4px 0 18px;
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
  visibility:visible;
  transition:max-height .34s cubic-bezier(.2,.75,.25,1),margin .30s ease,opacity .24s ease .04s,transform .30s ease,visibility 0s;
}
.rn-media-cleanup__inner{
  position:relative;
  display:flex;
  align-items:flex-end;
  gap:18px;
  padding:15px 16px;
  border:1px solid rgba(255,103,121,.14);
  border-radius:17px;
  background:
    radial-gradient(circle at 0 0,rgba(255,89,111,.075),transparent 34%),
    linear-gradient(145deg,rgba(13,32,46,.96),rgba(7,22,33,.97));
  box-shadow:0 18px 46px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.018);
}
.rn-media-cleanup__inner:before{content:"";position:absolute;left:16px;right:16px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,108,126,.28),transparent)}
.rn-media-cleanup__topline{display:flex;align-items:center;gap:11px;min-width:220px;margin-right:auto}
.rn-media-cleanup__topline>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.rn-media-cleanup__topline strong{color:#f1f7fb;font-size:12px;line-height:1.25;font-weight:820}
.rn-media-cleanup__topline small{color:#718b9d;font-size:9.5px;line-height:1.35}
.rn-media-cleanup__mark{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border:1px solid rgba(255,103,121,.18);border-radius:12px;background:rgba(255,89,111,.08);color:#ff94a4}
.rn-media-cleanup__mark svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.rn-media-cleanup__form{display:flex;align-items:flex-end;justify-content:flex-end;gap:9px;flex-wrap:nowrap;padding:0}
.rn-media-cleanup__form label{display:flex;flex-direction:column;gap:5px;color:#7893a5;font-size:9.5px;font-weight:780;letter-spacing:.02em}
.rn-media-cleanup__form input[type="date"]{box-sizing:border-box;width:158px;min-width:0;min-height:41px;margin:0;padding:0 11px;border:1px solid rgba(145,188,217,.13);border-radius:11px;background:#081a28;color:#e8f4fa!important;font:inherit;font-size:10.5px;color-scheme:dark;outline:0;transition:border-color .16s,box-shadow .16s,background .16s}
.rn-media-cleanup__form input[type="date"]:hover{border-color:rgba(145,188,217,.22)}
.rn-media-cleanup__form input[type="date"]:focus{border-color:rgba(62,185,242,.34);background:#0a1e2e;box-shadow:0 0 0 4px rgba(50,168,226,.06)}
.rn-media-cleanup__form input[type="date"]::-webkit-datetime-edit{color:#e8f4fa}
.rn-media-cleanup__form input[type="date"]::-webkit-calendar-picker-indicator{opacity:.82;cursor:pointer}
.rn-media-cleanup__form>.rn-button{min-height:41px;white-space:nowrap}
.rn-media-cleanup__form>.rn-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

@media(max-width:900px){
  .rn-media-cleanup__inner{align-items:stretch;flex-direction:column;gap:12px}
  .rn-media-cleanup__topline{min-width:0;margin-right:0}
  .rn-media-cleanup__form{display:grid;grid-template-columns:1fr 1fr auto;width:100%;align-items:end}
  .rn-media-cleanup__form input[type="date"]{width:100%}
}
@media(max-width:760px){
  .rn-heading-actions .rn-media-cleanup-toggle{flex:1 1 auto}
  .rn-media-cleanup{margin:-8px 0 0}
  .rn-media-cleanup.is-open{max-height:340px;margin:-2px 0 15px}
  .rn-media-cleanup__inner{padding:13px;border-radius:15px}
  .rn-media-cleanup__form{grid-template-columns:1fr 1fr}
  .rn-media-cleanup__form>.rn-button{grid-column:1/-1;width:100%}
}
@media(max-width:420px){
  .rn-media-cleanup.is-open{max-height:440px}
  .rn-media-cleanup__form{grid-template-columns:1fr}
  .rn-media-cleanup__form>.rn-button{grid-column:auto}
}

/* ========================================================================== */
/* RussNews v21.3 — encrypted chat attachments                               */
/* ========================================================================== */
.rn-messenger-page #messages_block_content_header_content_chat_input_photos label.is-disabled{opacity:.48;pointer-events:none;filter:saturate(.55)}

.rn-message-attachments{display:grid;gap:7px;margin-top:8px;max-width:430px}
.rn-message-attachment{box-sizing:border-box;text-decoration:none!important;color:inherit;min-width:0}
.rn-message-attachment--document{display:grid;grid-template-columns:44px minmax(0,1fr) 28px;align-items:center;gap:10px;width:100%;min-height:58px;padding:7px 9px 7px 7px;border:1px solid rgba(117,185,223,.14);border-radius:14px;background:linear-gradient(145deg,rgba(13,34,49,.82),rgba(8,25,37,.9));box-shadow:inset 0 1px 0 rgba(255,255,255,.018);transition:transform .16s,border-color .16s,background .16s,box-shadow .16s}
.rn-message-attachment--document:hover{transform:translateY(-1px);border-color:rgba(70,189,247,.30);background:linear-gradient(145deg,rgba(15,42,60,.93),rgba(9,29,43,.96));box-shadow:0 10px 24px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.025)}
.rn-message-attachment__icon,.rn-chat-attachment-preview__icon{position:relative;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(95,176,221,.16);border-radius:12px;background:rgba(17,54,77,.64);color:#8edcff;overflow:hidden}
.rn-message-attachment__icon svg,.rn-chat-attachment-preview__icon svg{position:absolute;width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;opacity:.48}
.rn-message-attachment__icon b,.rn-chat-attachment-preview__icon b{position:relative;z-index:1;margin-top:12px;padding:2px 4px;border-radius:5px;background:#0b2333;color:#b9eaff;font-size:8px;line-height:1;font-weight:900;letter-spacing:.03em}
.rn-message-attachment--pdf .rn-message-attachment__icon,.rn-chat-attachment-preview__item.is-pdf .rn-chat-attachment-preview__icon{border-color:rgba(255,106,126,.20);background:rgba(102,28,42,.30);color:#ff9aaa}
.rn-message-attachment--docx .rn-message-attachment__icon,.rn-chat-attachment-preview__item.is-docx .rn-chat-attachment-preview__icon{border-color:rgba(79,163,246,.22);background:rgba(24,73,121,.35);color:#91ccff}
.rn-message-attachment--xlsx .rn-message-attachment__icon,.rn-chat-attachment-preview__item.is-xlsx .rn-chat-attachment-preview__icon{border-color:rgba(80,205,158,.20);background:rgba(22,92,68,.32);color:#94e6c6}
.rn-message-attachment__copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.rn-message-attachment__copy strong{overflow:hidden;color:#e8f5fb;font-size:11px;line-height:1.25;font-weight:770;text-overflow:ellipsis;white-space:nowrap}
.rn-message-attachment__copy small{overflow:hidden;color:#718fa1;font-size:9px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.rn-message-attachment__open{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;color:#78c9ee;background:rgba(67,174,227,.07)}
.rn-message-attachment__open svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-message-attachment--image{position:relative;display:block;overflow:hidden;width:min(100%,340px);border:1px solid rgba(111,185,224,.14);border-radius:14px;background:#071824}
.rn-message-attachment--image img{display:block;width:100%;max-height:290px;object-fit:cover;transition:transform .22s ease}
.rn-message-attachment--image:hover img{transform:scale(1.012)}
.rn-message-attachment__image-name{position:absolute;left:7px;right:7px;bottom:7px;overflow:hidden;padding:6px 8px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(3,15,23,.78);backdrop-filter:blur(8px);color:#dceff8;font-size:9px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}

.rn-messenger-page #uploadPhotos.rn-chat-attachment-preview{display:none;box-sizing:border-box;width:calc(100% - 108px);margin:7px 54px 0;padding:10px;border:1px solid rgba(92,174,218,.13);border-radius:15px;background:linear-gradient(145deg,rgba(11,31,45,.95),rgba(7,23,34,.97));box-shadow:0 14px 34px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.018)}
.rn-messenger-page #uploadPhotos.rn-chat-attachment-preview.is-visible{display:block!important}
.rn-chat-attachment-preview__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 1px 8px}
.rn-chat-attachment-preview__head>span{display:flex;align-items:baseline;gap:7px}.rn-chat-attachment-preview__head strong{color:#dff2fa;font-size:10.5px;font-weight:820}.rn-chat-attachment-preview__head small{color:#69899b;font-size:8.5px}.rn-chat-attachment-preview__head em{color:#628598;font-size:8.5px;font-style:normal}
.rn-chat-attachment-preview__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.rn-chat-attachment-preview__item{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 28px;align-items:center;gap:8px;min-height:54px;padding:6px;border:1px solid rgba(113,183,220,.11);border-radius:12px;background:rgba(9,27,40,.68)}
.rn-chat-attachment-preview__thumb{display:block;overflow:hidden;width:42px;height:42px;border-radius:10px;background:#061722}.rn-chat-attachment-preview__thumb img{width:100%;height:100%;object-fit:cover}
.rn-chat-attachment-preview__icon{width:42px;height:42px;border-radius:10px}
.rn-chat-attachment-preview__copy{display:flex;flex-direction:column;gap:3px;min-width:0}.rn-chat-attachment-preview__copy strong{overflow:hidden;color:#dceef7;font-size:10px;line-height:1.2;font-weight:740;text-overflow:ellipsis;white-space:nowrap}.rn-chat-attachment-preview__copy small{overflow:hidden;color:#68899b;font-size:8.2px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.rn-chat-attachment-preview__state{color:#75bddd}.rn-chat-attachment-preview.is-uploading .rn-chat-attachment-preview__state{color:#8edcff}
.rn-chat-attachment-preview__remove{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid rgba(255,103,121,.12);border-radius:9px;background:rgba(255,87,108,.055);color:#d98291;cursor:pointer;transition:background .16s,border-color .16s,color .16s}.rn-chat-attachment-preview__remove:hover{border-color:rgba(255,103,121,.28);background:rgba(255,87,108,.11);color:#ffadba}.rn-chat-attachment-preview__remove svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}

.rn-chat-file-page{min-height:calc(100vh - 84px);padding:28px 16px 54px;background:radial-gradient(circle at 50% -15%,rgba(35,141,192,.09),transparent 34%)}
.rn-chat-file-shell{width:min(1180px,100%);margin:0 auto}
.rn-chat-file-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:15px}.rn-chat-file-head__copy{min-width:0}.rn-chat-file-head__copy h1{overflow-wrap:anywhere;margin:5px 0 4px;color:#eff9fd;font-size:clamp(21px,3vw,31px);line-height:1.08}.rn-chat-file-head__copy p{margin:0;color:#718fa1;font-size:10px}.rn-chat-file-head__actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.rn-chat-file-head__actions .rn-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-chat-file-stage{overflow:hidden;min-height:420px;border:1px solid rgba(100,180,221,.13);border-radius:20px;background:linear-gradient(145deg,rgba(10,29,42,.97),rgba(6,20,30,.98));box-shadow:0 24px 70px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.018)}
.rn-chat-file-image{display:grid;place-items:center;min-height:420px;padding:18px;background:radial-gradient(circle at 50% 30%,rgba(63,155,203,.06),transparent 48%)}.rn-chat-file-image img{display:block;max-width:100%;max-height:76vh;border-radius:14px;object-fit:contain;box-shadow:0 18px 48px rgba(0,0,0,.18)}
.rn-chat-file-pdf{display:block;width:100%;height:min(78vh,900px);min-height:560px;border:0;background:#0b1e2b}
.rn-chat-doc-preview,.rn-chat-sheet-preview,.rn-chat-file-fallback{padding:22px}
.rn-chat-doc-preview{display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;align-items:start}.rn-chat-doc-preview pre{box-sizing:border-box;min-height:360px;margin:0;padding:22px;overflow:auto;border:1px solid rgba(126,190,224,.11);border-radius:14px;background:#f5f7f9;color:#18242c;font-family:Georgia,'Times New Roman',serif;font-size:14px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}
.rn-chat-file-type{position:relative;display:grid;place-items:center;width:64px;height:74px;border:1px solid rgba(89,174,220,.18);border-radius:16px;background:rgba(16,52,75,.56);color:#9edfff}.rn-chat-file-type span{font-size:18px;font-weight:900}.rn-chat-file-type small{margin-top:-17px;font-size:7px;font-weight:850;letter-spacing:.08em;opacity:.72}.rn-chat-file-type--pdf{color:#ff9cac;border-color:rgba(255,104,124,.19);background:rgba(97,26,39,.28)}.rn-chat-file-type--docx{color:#94ceff}.rn-chat-file-type--xlsx{color:#95e3c5;border-color:rgba(79,202,157,.18);background:rgba(19,82,62,.28)}
.rn-chat-sheet-preview{display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;align-items:start}.rn-chat-sheet-scroll{overflow:auto;max-height:72vh;border:1px solid rgba(114,184,220,.11);border-radius:14px;background:#f7fafb}.rn-chat-sheet-scroll table{width:max-content;min-width:100%;border-collapse:collapse;color:#1b2931;font-size:11px}.rn-chat-sheet-scroll th,.rn-chat-sheet-scroll td{min-width:96px;padding:8px 10px;border-right:1px solid #dde6eb;border-bottom:1px solid #dde6eb;text-align:left;vertical-align:top}.rn-chat-sheet-scroll th{position:sticky;left:0;z-index:1;min-width:38px;width:38px;background:#edf3f6;color:#60737e;font-weight:750}.rn-chat-file-empty{margin:0;padding:20px;border:1px solid rgba(111,184,221,.11);border-radius:14px;color:#7894a4;background:rgba(7,25,37,.62)}
.rn-chat-file-fallback{display:flex;min-height:420px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.rn-chat-file-fallback .rn-chat-file-type{margin-bottom:14px}.rn-chat-file-fallback strong{color:#e9f6fb;font-size:17px}.rn-chat-file-fallback p{max-width:460px;margin:7px 0 16px;color:#708fa1;font-size:10.5px;line-height:1.5}
.rn-chat-file-security{display:flex;align-items:center;gap:7px;margin:10px 3px 0;color:#617f90;font-size:9px;line-height:1.4}.rn-chat-file-security svg{width:14px;height:14px;flex:0 0 auto;fill:none;stroke:#6fc6ed;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

@media(max-width:760px){
  .rn-message-attachments{max-width:100%}.rn-message-attachment--document{grid-template-columns:40px minmax(0,1fr) 26px;gap:8px}.rn-message-attachment__icon{width:40px;height:40px}
  .rn-messenger-page #uploadPhotos.rn-chat-attachment-preview{width:calc(100% - 16px);margin:6px 8px 0;padding:8px}.rn-chat-attachment-preview__head em{display:none}.rn-chat-attachment-preview__list{grid-template-columns:1fr}
  .rn-chat-file-page{padding:18px 10px 36px}.rn-chat-file-head{align-items:stretch;flex-direction:column;gap:11px}.rn-chat-file-head__actions{justify-content:flex-start}.rn-chat-file-head__actions .rn-button{flex:1 1 auto}.rn-chat-file-stage{min-height:360px;border-radius:16px}.rn-chat-file-pdf{min-height:68vh;height:68vh}.rn-chat-doc-preview,.rn-chat-sheet-preview{grid-template-columns:1fr;padding:12px;gap:10px}.rn-chat-doc-preview pre{min-height:320px;padding:15px;font-size:13px}.rn-chat-file-type{width:50px;height:58px;border-radius:13px}.rn-chat-file-type span{font-size:14px}.rn-chat-file-fallback{min-height:360px;padding:18px}.rn-chat-file-security{align-items:flex-start}
}
@media(max-width:420px){
  .rn-message-attachment--document{grid-template-columns:38px minmax(0,1fr) 24px;padding:6px}.rn-message-attachment__icon{width:38px;height:38px}.rn-message-attachment__copy strong{font-size:10px}.rn-message-attachment--image img{max-height:230px}
  .rn-chat-file-head__actions{display:grid;grid-template-columns:1fr 1fr}.rn-chat-file-head__actions .rn-button{width:100%;justify-content:center}.rn-chat-file-pdf{min-height:64vh;height:64vh}
}

/* ========================================================================== 
   RussNews UI v21.4 — site settings, maintenance mode & unified selects
   ========================================================================== */

/* Native selects: one RussNews shell everywhere. Browsers that expose the
   option popup to CSS also inherit our palette and scrollbar; iOS/Safari may
   still render the opened option sheet with the native OS control. */
body.rn-auth-body select,
body.rn-body select{
  appearance:none;-webkit-appearance:none;box-sizing:border-box;min-height:46px;padding:0 44px 0 14px;
  border:1px solid rgba(130,188,222,.16);border-radius:13px;outline:0;
  background-color:#091b29;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m6 8 4 4 4-4' fill='none' stroke='%2379ccef' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 13px center;background-size:18px 18px;
  color:#e6f3f9;font:inherit;cursor:pointer;transition:border-color .16s,box-shadow .16s,background-color .16s;
  scrollbar-width:thin;scrollbar-color:rgba(72,175,224,.48) #071622;
}
body.rn-auth-body select:hover,body.rn-body select:hover{border-color:rgba(75,190,244,.30);background-color:#0b2131}
body.rn-auth-body select:focus,body.rn-body select:focus{border-color:rgba(56,185,245,.62);box-shadow:0 0 0 4px rgba(37,158,221,.10)}
body.rn-auth-body select option,body.rn-auth-body select optgroup,
body.rn-body select option,body.rn-body select optgroup{background:#091b29;color:#dcebf4}
body.rn-auth-body select::-webkit-scrollbar,body.rn-body select::-webkit-scrollbar{width:6px}
body.rn-auth-body select::-webkit-scrollbar-track,body.rn-body select::-webkit-scrollbar-track{background:#071622}
body.rn-auth-body select::-webkit-scrollbar-thumb,body.rn-body select::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(72,175,224,.42)}
body.rn-auth-body select[multiple],body.rn-body select[multiple]{padding:7px;background-image:none}
body.rn-auth-body select:disabled,body.rn-body select:disabled{opacity:.52;cursor:not-allowed}

/* Settings navigation has one extra item; compress desktop labels slightly
   before switching to the existing mobile navigation breakpoint. */
@media(min-width:1181px) and (max-width:1320px){
  body.rn-auth-body .rn-app-nav>a{gap:6px;padding:0 9px;font-size:12px}
  body.rn-auth-body .rn-app-nav>a svg{width:18px;height:18px}
}

.rn-settings-heading{align-items:center}
.rn-settings-live-status{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid rgba(69,214,154,.17);border-radius:999px;background:rgba(55,193,132,.07);color:#85e6ba;font-size:10.5px;white-space:nowrap}
.rn-settings-live-status i{width:8px;height:8px;border-radius:50%;background:#49d69a;box-shadow:0 0 0 4px rgba(73,214,154,.09)}
.rn-settings-live-status b{font-weight:820}
.rn-settings-live-status.is-active{border-color:rgba(255,112,132,.19);background:rgba(255,88,109,.075);color:#ff9bab}
.rn-settings-live-status.is-active i{background:#ff6f87;box-shadow:0 0 0 4px rgba(255,111,135,.09)}
.rn-settings-layout{display:grid;gap:18px}
.rn-settings-panel{overflow:visible;padding:22px;border-radius:22px}
.rn-settings-panel__head{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:start;gap:14px;padding-bottom:20px;border-bottom:1px solid rgba(139,190,220,.09)}
.rn-settings-panel__head h2{margin:4px 0 5px;color:#f4fbff;font-size:21px;line-height:1.15;letter-spacing:-.025em}
.rn-settings-panel__head p{max-width:680px;margin:0;color:#758e9f;font-size:11px;line-height:1.55}
.rn-settings-panel__icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(76,188,241,.18);border-radius:16px;background:linear-gradient(145deg,rgba(24,132,196,.14),rgba(26,78,107,.12));color:#76d5fb}
.rn-settings-panel__icon--maintenance{border-color:rgba(255,181,92,.16);background:linear-gradient(145deg,rgba(204,128,43,.13),rgba(99,60,25,.09));color:#ffc373}
.rn-settings-panel__icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.rn-settings-form{display:grid;gap:16px;padding-top:18px}
.rn-settings-switch-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:12px 14px;border:1px solid rgba(120,181,216,.10);border-radius:16px;background:rgba(7,23,35,.58);cursor:pointer}
.rn-settings-switch-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.rn-settings-switch-copy strong{color:#ddecf4;font-size:12px;font-weight:790}.rn-settings-switch-copy small{color:#70899a;font-size:9.5px;line-height:1.45}
.rn-switch{position:relative;display:block;flex:0 0 auto;width:48px;height:28px}.rn-switch input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.rn-switch i{position:absolute;inset:0;border:1px solid rgba(122,169,198,.18);border-radius:999px;background:#0a1b28;transition:.2s}.rn-switch i::after{content:"";position:absolute;left:4px;top:4px;width:18px;height:18px;border-radius:50%;background:#738999;box-shadow:0 3px 10px rgba(0,0,0,.26);transition:.2s}.rn-switch input:checked+i{border-color:rgba(255,107,130,.28);background:rgba(255,75,103,.14)}.rn-switch input:checked+i::after{transform:translateX(20px);background:#ff788e}.rn-switch input:focus-visible+i{box-shadow:0 0 0 4px rgba(66,184,238,.11)}
.rn-settings-field{display:flex;flex-direction:column;gap:7px;min-width:0}.rn-settings-field--grow{flex:1}.rn-settings-field>label{color:#91a8b8;font-size:10px;font-weight:760}.rn-settings-field>small{color:#627c8e;font-size:9px;line-height:1.45}.rn-settings-field>small code{color:#8ccfee}
.rn-settings-input-shell{position:relative;display:flex;align-items:center;min-width:0}.rn-settings-input-shell>svg{position:absolute;z-index:2;left:13px;width:18px;height:18px;fill:none;stroke:#63869b;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.rn-settings-input-shell input{appearance:none;-webkit-appearance:none;box-sizing:border-box;width:100%;height:48px;margin:0;padding:0 13px 0 42px;border:1px solid rgba(128,184,217,.14);border-radius:13px;outline:0;background:#081925;color:#e2f0f7;font:inherit;font-size:12px;transition:.16s}.rn-settings-input-shell input:focus{border-color:rgba(60,184,241,.52);box-shadow:0 0 0 4px rgba(39,163,224,.09)}.rn-settings-input-shell input::placeholder{color:#506c7e}.rn-settings-input-shell input[type="datetime-local"]{color-scheme:dark}.rn-settings-input-shell input[type="datetime-local"]::-webkit-calendar-picker-indicator{opacity:.65;filter:invert(.78) sepia(.25) saturate(2);cursor:pointer}
.rn-settings-maintenance-preview{display:grid;grid-template-columns:10px minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(77,199,153,.12);border-radius:14px;background:rgba(35,139,100,.045)}.rn-settings-maintenance-preview__dot{width:9px;height:9px;border-radius:50%;background:#49d69a;box-shadow:0 0 0 5px rgba(73,214,154,.06)}.rn-settings-maintenance-preview>div{display:flex;flex-direction:column;gap:2px}.rn-settings-maintenance-preview strong{color:#bfe9d6;font-size:10.5px}.rn-settings-maintenance-preview small{color:#657f8f;font-size:9px}.rn-settings-maintenance-preview small b{color:#8ecfe8}.rn-settings-maintenance-preview.is-active{border-color:rgba(255,109,132,.14);background:rgba(255,76,103,.045)}.rn-settings-maintenance-preview.is-active .rn-settings-maintenance-preview__dot{background:#ff7188;box-shadow:0 0 0 5px rgba(255,113,136,.06)}.rn-settings-maintenance-preview.is-active strong{color:#ffc1cb}
.rn-settings-form__actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:46px}.rn-settings-form-message{display:none;flex:1;color:#728b9c;font-size:9.5px;line-height:1.45}.rn-settings-form-message.is-visible{display:block}.rn-settings-form-message.is-ok{color:#72d8aa}.rn-settings-form-message.is-error{color:#ff91a1}.rn-settings-form-message--ip{min-height:20px;margin:3px 1px 0}
.rn-current-ip-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:13px 14px;border:1px solid rgba(255,190,96,.12);border-radius:15px;background:rgba(186,119,37,.045)}.rn-current-ip-card>div{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 9px;min-width:0}.rn-current-ip-card span{grid-column:1/-1;color:#718b9b;font-size:8.5px;font-weight:760;text-transform:uppercase;letter-spacing:.07em}.rn-current-ip-card code{color:#ffd08e;font-size:12px;font-weight:780;overflow-wrap:anywhere}.rn-current-ip-card small{color:#876f51;font-size:8.5px}.rn-current-ip-card.is-allowed{border-color:rgba(72,209,151,.13);background:rgba(50,170,116,.045)}.rn-current-ip-card.is-allowed code{color:#91e2bb}.rn-current-ip-card.is-allowed small{color:#668f7b}
.rn-settings-ip-form{display:block;margin-top:16px}.rn-settings-ip-controls{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:10px;min-width:0}.rn-settings-ip-add{height:48px;min-height:48px;white-space:nowrap}
.rn-settings-ip-list{display:grid;gap:7px;margin-top:14px;min-height:0;max-height:none;padding-right:0;overflow:visible}.rn-settings-ip-list.is-scrollable{max-height:322px;padding-right:3px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(72,175,224,.40) transparent}.rn-settings-ip-list.is-scrollable::-webkit-scrollbar{width:6px}.rn-settings-ip-list.is-scrollable::-webkit-scrollbar-track{background:transparent}.rn-settings-ip-list.is-scrollable::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(72,175,224,.36)}
.rn-settings-ip-row{position:relative;z-index:1;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:10px;min-height:58px;padding:9px 10px;border:1px solid rgba(108,177,212,.09);border-radius:14px;background:rgba(7,23,35,.51)}.rn-settings-ip-row:hover{z-index:3;border-color:rgba(80,184,234,.16);background:rgba(9,28,42,.68)}.rn-settings-ip-row__icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(75,195,240,.13);border-radius:11px;background:rgba(33,132,183,.08);color:#72cced}.rn-settings-ip-row__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.rn-settings-ip-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}.rn-settings-ip-row code{overflow:hidden;color:#cfe8f4;font-size:11px;font-weight:740;text-overflow:ellipsis;white-space:nowrap}.rn-settings-ip-row small{color:#5f798a;font-size:8.5px}.rn-settings-ip-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:96px;padding:18px;border:1px dashed rgba(120,179,212,.11);border-radius:14px;text-align:center}.rn-settings-ip-empty span{color:#839baa;font-size:10.5px;font-weight:750}.rn-settings-ip-empty small{margin-top:3px;color:#587183;font-size:8.5px}
.rn-settings-note{display:grid;grid-template-columns:32px minmax(0,1fr);gap:11px;margin-top:18px;padding:13px 15px;border:1px solid rgba(75,174,219,.11);border-radius:15px;background:rgba(17,78,109,.055)}.rn-settings-note>svg{width:21px;height:21px;margin:2px auto 0;fill:none;stroke:#68c8ee;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.rn-settings-note strong{color:#b8d8e7;font-size:10.5px}.rn-settings-note p{margin:3px 0 0;color:#647f90;font-size:9px;line-height:1.55}

/* Settings buttons use the same chat-style tooltip language as Users. */
.rn-settings-page .rn-user-action-icon[data-tooltip]::after{content:attr(data-tooltip);position:absolute;left:50%;top:calc(100% + 8px);z-index:50;max-width:190px;padding:6px 8px;transform:translate(-50%,-2px);opacity:0;visibility:hidden;pointer-events:none;border:1px solid rgba(126,177,207,.16);border-radius:9px;background:#06131e;box-shadow:0 10px 28px rgba(0,0,0,.34);color:#d7e8f2;font-size:10px;font-weight:700;line-height:1.2;white-space:nowrap;transition:.14s}
.rn-settings-page .rn-user-action-icon[data-tooltip]:hover::after,.rn-settings-page .rn-user-action-icon[data-tooltip]:focus-visible::after{opacity:1;visibility:visible;transform:translate(-50%,0)}

/* Public maintenance screen */
body.rn-maintenance-body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:radial-gradient(circle at 50% -8%,rgba(31,147,225,.16),transparent 34%),radial-gradient(circle at 88% 88%,rgba(55,204,238,.055),transparent 30%),#050d16;color:#eef8fd;font-family:Inter,Manrope,"Segoe UI",Arial,sans-serif;overflow-x:hidden}body.rn-maintenance-body *{box-sizing:border-box}
.rn-maintenance-page{display:grid;place-items:center;min-height:100vh;min-height:100dvh;padding:28px 16px}
.rn-maintenance-card{position:relative;overflow:hidden;width:min(690px,100%);padding:34px;border:1px solid rgba(120,194,232,.14);border-radius:28px;background:linear-gradient(150deg,rgba(11,29,43,.98),rgba(6,18,29,.99));box-shadow:0 34px 110px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.02);text-align:center}.rn-maintenance-card::before{content:"";position:absolute;left:18%;right:18%;top:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(90,207,255,.7),transparent)}
.rn-maintenance-brand{display:flex;width:max-content;max-width:100%;align-items:center;justify-content:center;gap:9px;margin:0 auto;color:inherit;text-decoration:none}.rn-maintenance-brand img{width:39px;height:49px;object-fit:contain}.rn-maintenance-brand span{font-size:24px;line-height:1;font-weight:880;letter-spacing:-.045em}.rn-maintenance-brand strong{color:#fff}.rn-maintenance-brand b{color:#2aa7ff}
.rn-maintenance-status{display:flex;width:max-content;max-width:100%;align-items:center;justify-content:center;gap:8px;margin:20px auto 0;padding:7px 11px;border:1px solid rgba(255,182,93,.16);border-radius:999px;background:rgba(207,129,42,.07);color:#ffc374;font-size:9px;font-weight:820;letter-spacing:.11em;text-transform:uppercase}.rn-maintenance-status i{width:7px;height:7px;border-radius:50%;background:#ffbb60;box-shadow:0 0 0 4px rgba(255,187,96,.07);animation:rnMaintenancePulse 1.8s ease-in-out infinite}
.rn-maintenance-card h1{max-width:560px;margin:14px auto 9px;color:#f7fcff;font-size:clamp(28px,5vw,43px);line-height:1.05;letter-spacing:-.045em}.rn-maintenance-card>p{max-width:570px;margin:0 auto;color:#8099aa;font-size:12px;line-height:1.65}
.rn-maintenance-countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:26px 0 12px}.rn-maintenance-countdown>div{display:flex;min-width:0;min-height:84px;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(111,184,222,.11);border-radius:16px;background:rgba(7,24,36,.64)}.rn-maintenance-countdown strong{color:#dff5ff;font-size:27px;line-height:1;font-weight:840;letter-spacing:-.035em}.rn-maintenance-countdown span{margin-top:7px;color:#627f91;font-size:8.5px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.rn-maintenance-until{color:#657f90;font-size:9.5px}.rn-maintenance-until strong{color:#8ccfe9}
.rn-maintenance-open-ended{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;margin:26px 0 5px;padding:14px;border:1px solid rgba(84,180,222,.11);border-radius:16px;background:rgba(16,77,105,.055);text-align:left}.rn-maintenance-open-ended>svg{width:25px;height:25px;margin:auto;fill:none;stroke:#66c7ec;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.rn-maintenance-open-ended>div{display:flex;flex-direction:column;gap:3px}.rn-maintenance-open-ended strong{color:#cce9f5;font-size:11px}.rn-maintenance-open-ended span{color:#698596;font-size:9.5px;line-height:1.45}
.rn-maintenance-foot{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:27px;padding-top:17px;border-top:1px solid rgba(127,182,213,.08);color:#506c7f;font-size:8.5px;text-transform:uppercase;letter-spacing:.08em}.rn-maintenance-foot i{width:3px;height:3px;border-radius:50%;background:#29475a}.rn-maintenance-foot small{font:inherit}
@keyframes rnMaintenancePulse{0%,100%{opacity:.75;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}

@media(max-width:760px){
  .rn-settings-heading{align-items:flex-start}.rn-settings-live-status{align-self:flex-start}.rn-settings-panel{padding:16px}.rn-settings-panel__head{grid-template-columns:44px minmax(0,1fr);gap:11px}.rn-settings-panel__icon{width:44px;height:44px;border-radius:14px}.rn-settings-panel__icon svg{width:21px;height:21px}.rn-settings-panel__head h2{font-size:18px}.rn-settings-switch-row{align-items:flex-start}.rn-current-ip-card{align-items:stretch;flex-direction:column}.rn-current-ip-card .rn-button{align-self:flex-start}.rn-settings-ip-controls{grid-template-columns:1fr}.rn-settings-ip-add{width:100%}.rn-settings-form__actions{align-items:stretch;flex-direction:column-reverse}.rn-settings-form__actions .rn-button{width:100%}.rn-settings-form-message{text-align:center}
  .rn-maintenance-card{padding:27px 18px;border-radius:23px}.rn-maintenance-countdown{gap:5px}.rn-maintenance-countdown>div{min-height:72px;border-radius:13px}.rn-maintenance-countdown strong{font-size:22px}.rn-maintenance-countdown span{font-size:7.5px}
}
@media(max-width:430px){
  .rn-settings-switch-row{gap:10px;padding:11px}.rn-settings-switch-copy small{font-size:8.8px}.rn-current-ip-card>div{grid-template-columns:1fr}.rn-current-ip-card span{grid-column:auto}.rn-settings-ip-row{grid-template-columns:34px minmax(0,1fr) 38px;padding:8px}.rn-settings-ip-row__icon{width:34px;height:34px}.rn-settings-note{grid-template-columns:1fr}.rn-settings-note>svg{margin:0}.rn-settings-page .rn-user-action-icon[data-tooltip]::after{display:none}
  .rn-maintenance-page{padding:13px}.rn-maintenance-card{padding:24px 13px}.rn-maintenance-card h1{font-size:30px}.rn-maintenance-card>p{font-size:11px}.rn-maintenance-countdown{grid-template-columns:1fr 1fr}.rn-maintenance-countdown>div{min-height:66px}.rn-maintenance-open-ended{grid-template-columns:36px minmax(0,1fr);padding:12px}
}


/* ========================================================================== 
   RussNews UI v21.4.5 — custom chat user dropdowns
   ========================================================================== */
body.rn-auth-body #popupWindow .rn-chat-user-select{position:relative;display:block;width:100%;margin:0}
body.rn-auth-body #popupWindow .rn-chat-user-select select.rn-chat-user-select__native{
  position:absolute!important;left:0!important;top:0!important;width:1px!important;height:1px!important;min-height:0!important;
  margin:0!important;padding:0!important;border:0!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;
  background:none!important;box-shadow:none!important
}
body.rn-auth-body #popupWindow .rn-chat-user-select__trigger{
  appearance:none;display:grid;grid-template-columns:34px minmax(0,1fr) 22px;align-items:center;gap:10px;width:100%;height:52px;
  margin:0;padding:0 13px;border:1px solid rgba(145,188,217,.14);border-radius:14px;background:linear-gradient(145deg,#0a1d2c,#071521);
  color:#edf7fd;text-align:left;cursor:pointer;outline:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.015);
  transition:border-color .18s,box-shadow .18s,background .18s,transform .18s
}
body.rn-auth-body #popupWindow .rn-chat-user-select__trigger:hover{border-color:rgba(79,194,245,.28);background:linear-gradient(145deg,#0c2233,#081824)}
body.rn-auth-body #popupWindow .rn-chat-user-select__trigger:focus-visible,
body.rn-auth-body #popupWindow .rn-chat-user-select.is-open .rn-chat-user-select__trigger{border-color:rgba(58,184,245,.48);box-shadow:0 0 0 4px rgba(42,164,231,.08)}
body.rn-auth-body #popupWindow .rn-chat-user-select__lead{display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(82,191,240,.16);border-radius:10px;background:rgba(35,156,220,.08);color:#6fd3fa}
body.rn-auth-body #popupWindow .rn-chat-user-select__lead svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body.rn-auth-body #popupWindow .rn-chat-user-select__value{min-width:0;overflow:hidden;color:#edf8fd;font-size:12px;font-weight:760;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
body.rn-auth-body #popupWindow .rn-chat-user-select__chevron{display:grid;place-items:center;width:22px;height:22px;color:#70c9ee;transition:transform .2s ease}
body.rn-auth-body #popupWindow .rn-chat-user-select__chevron svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.rn-auth-body #popupWindow .rn-chat-user-select.is-open .rn-chat-user-select__chevron{transform:rotate(180deg)}
body.rn-auth-body #popupWindow .rn-chat-user-select__menu{
  box-sizing:border-box;max-height:0;margin:0;overflow:hidden;border:1px solid transparent;border-radius:15px;background:#071522;
  opacity:0;visibility:hidden;transform:translateY(-5px);box-shadow:0 20px 48px rgba(0,0,0,.35);
  transition:max-height .22s ease,margin .22s ease,opacity .18s ease,transform .18s ease,visibility 0s linear .22s,border-color .18s
}
body.rn-auth-body #popupWindow .rn-chat-user-select.is-open .rn-chat-user-select__menu{
  max-height:248px;margin-top:8px;border-color:rgba(121,190,228,.13);opacity:1;visibility:visible;transform:none;transition-delay:0s
}
body.rn-auth-body #popupWindow .rn-chat-user-select__scroll{max-height:230px;padding:6px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(75,183,232,.48) #071522}
body.rn-auth-body #popupWindow .rn-chat-user-select__scroll::-webkit-scrollbar{width:6px}
body.rn-auth-body #popupWindow .rn-chat-user-select__scroll::-webkit-scrollbar-track{background:#071522;border-radius:999px}
body.rn-auth-body #popupWindow .rn-chat-user-select__scroll::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(75,183,232,.44)}
body.rn-auth-body #popupWindow .rn-chat-user-select__option{
  appearance:none;display:grid;grid-template-columns:38px minmax(0,1fr) 25px;align-items:center;gap:10px;width:100%;min-height:52px;margin:0;padding:6px 8px;
  border:1px solid transparent;border-radius:11px;background:transparent;color:#ddecf5;text-align:left;cursor:pointer;outline:0;transition:.16s
}
body.rn-auth-body #popupWindow .rn-chat-user-select__option+ .rn-chat-user-select__option{margin-top:3px}
body.rn-auth-body #popupWindow .rn-chat-user-select__option:hover,
body.rn-auth-body #popupWindow .rn-chat-user-select__option:focus-visible{border-color:rgba(76,187,239,.12);background:rgba(39,152,211,.08)}
body.rn-auth-body #popupWindow .rn-chat-user-select__option.is-selected{border-color:rgba(67,191,246,.18);background:linear-gradient(90deg,rgba(36,157,220,.13),rgba(28,128,186,.055))}
body.rn-auth-body #popupWindow .rn-chat-user-select__avatar{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(112,197,236,.13);border-radius:11px;background:linear-gradient(145deg,#102b3e,#0b1d2b);color:#80d7f9;font-size:12px;font-weight:850;text-transform:uppercase}
body.rn-auth-body #popupWindow .rn-chat-user-select__copy{display:grid;gap:2px;min-width:0}
body.rn-auth-body #popupWindow .rn-chat-user-select__copy strong{overflow:hidden;color:#eaf6fc;font-size:11.5px;font-weight:760;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
body.rn-auth-body #popupWindow .rn-chat-user-select__copy small{color:#607f92;font-size:9px;line-height:1.2}
body.rn-auth-body #popupWindow .rn-chat-user-select__check{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;color:transparent;background:transparent}
body.rn-auth-body #popupWindow .rn-chat-user-select__check svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.rn-auth-body #popupWindow .rn-chat-user-select__option.is-selected .rn-chat-user-select__check{color:#67d2fb;background:rgba(43,169,231,.10)}
body.rn-auth-body #popupWindow .rn-chat-user-select__option.is-empty{opacity:.58;cursor:default}
body.rn-auth-body #popupWindow .rn-chat-user-select__option.is-empty .rn-chat-user-select__avatar{color:#78909f}
@media(max-width:560px){
  body.rn-auth-body #popupWindow .rn-chat-user-select__menu{border-radius:13px}
  body.rn-auth-body #popupWindow .rn-chat-user-select.is-open .rn-chat-user-select__menu{max-height:218px}
  body.rn-auth-body #popupWindow .rn-chat-user-select__scroll{max-height:200px}
  body.rn-auth-body #popupWindow .rn-chat-user-select__trigger{height:50px;grid-template-columns:32px minmax(0,1fr) 20px;padding:0 11px}
}

/* ========================================================================
   RussNews v21.4.9 — keep chat jump control above dynamic composer on all screens
   ======================================================================== */


/* ========================================================================
   RussNews v21.5.4 — stronger unread gallery highlight
   ======================================================================== */
.rn-media-card{position:relative}
.rn-media-card.is-unread{
  border-color:rgba(57,194,255,.42)!important;
  background:linear-gradient(180deg,rgba(25,148,219,.055),rgba(7,20,31,.02));
  box-shadow:0 0 0 1px rgba(57,194,255,.18),0 18px 48px rgba(0,102,170,.13),0 0 28px rgba(44,188,255,.08)!important;
}
.rn-media-card.is-unread:before{
  content:"";
  position:absolute;
  z-index:8;
  top:0;
  left:20px;
  right:20px;
  height:3px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,transparent,#35c7ff 18%,#7ce7ff 50%,#35c7ff 82%,transparent);
  box-shadow:0 0 18px rgba(53,199,255,.52);
  pointer-events:none;
}
.rn-media-card.is-unread:hover{
  border-color:rgba(83,207,255,.58)!important;
  box-shadow:0 0 0 1px rgba(57,194,255,.24),0 25px 65px rgba(0,91,155,.18),0 0 34px rgba(44,188,255,.11)!important;
}
.rn-media-card__new{
  gap:6px!important;
  height:30px!important;
  padding:0 11px!important;
  border-color:rgba(105,224,255,.46)!important;
  background:linear-gradient(135deg,rgba(18,146,220,.96),rgba(39,202,241,.92))!important;
  color:#fff!important;
  font-size:9.5px!important;
  font-weight:900!important;
  letter-spacing:.09em;
  text-shadow:0 1px 2px rgba(0,40,65,.34);
  box-shadow:0 7px 22px rgba(25,170,232,.30),inset 0 0 0 1px rgba(255,255,255,.08);
  animation:rnGalleryNewPulse 2.3s ease-in-out infinite;
}
.rn-media-card__new:before{
  content:"";
  width:6px;
  height:6px;
  flex:0 0 6px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 4px rgba(255,255,255,.13),0 0 10px rgba(255,255,255,.72);
}
@keyframes rnGalleryNewPulse{
  0%,100%{transform:translateZ(0);box-shadow:0 7px 22px rgba(25,170,232,.26),inset 0 0 0 1px rgba(255,255,255,.08)}
  50%{transform:translateZ(0) scale(1.035);box-shadow:0 8px 27px rgba(40,198,248,.40),0 0 0 3px rgba(69,207,255,.07),inset 0 0 0 1px rgba(255,255,255,.10)}
}
@media (prefers-reduced-motion:reduce){.rn-media-card__new{animation:none!important}}

/* RussNews v21.5.8 — live voice playback progress */
.rn-messenger-page .rn-voice-wave i{transition:background-color .08s linear,box-shadow .08s linear!important}


/* ========================================================================== 
   RussNews UI v21.5.13 — mobile account navigation without bottom tabs
   ========================================================================== */
@media(max-width:760px){
  /* Mobile now follows the tablet navigation model: profile/name in header,
     tap it to open the existing account menu. */
  body.rn-auth-body .rn-mobile-tabs{display:none!important}
  body.rn-auth-body .rn-user-chip{
    display:flex!important;
    width:auto!important;
    max-width:min(168px,48vw)!important;
    height:44px!important;
    gap:7px!important;
    padding:0 8px 0 6px!important;
    border-radius:14px!important;
  }
  body.rn-auth-body .rn-user-chip__avatar{
    flex:0 0 32px!important;
    width:32px!important;
    height:32px!important;
    border-radius:10px!important;
    font-size:11px!important;
  }
  body.rn-auth-body .rn-user-chip__text{max-width:min(105px,30vw)!important}
  body.rn-auth-body .rn-user-chip__text small{display:none!important}
  body.rn-auth-body .rn-user-chip__text strong{font-size:11px!important}
  body.rn-auth-body .rn-user-chip__chevron{flex:0 0 14px!important;width:14px!important;height:14px!important}

  /* Remove spacing that existed only for the old bottom mobile tabs. */
  body.rn-auth-body .rn-auth-main{padding-bottom:0!important}
  body.rn-auth-body .rn-app-footer{padding-bottom:30px!important}
  body.rn-messenger-body .rn-auth-main{
    height:calc(100dvh - 66px)!important;
    min-height:0!important;
    padding-bottom:0!important;
  }
  body.rn-messenger-body .rn-messenger-page{height:100%!important;padding-bottom:4px!important}

  /* Emoji/push elements return to their normal mobile position now that the
     78px bottom navigation reservation no longer exists. */
  .rn-messenger-page #emojiPicker{
    bottom:calc(68px + env(safe-area-inset-bottom))!important;
  }
  .rn-push-card{
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
  }

  /* On phones the account menu stays a floating panel, like on tablet,
     instead of turning into a full-screen bottom-navigation replacement. */
  body.rn-auth-body .rn-mobile-menu{padding:8px!important;align-items:flex-start!important;justify-content:flex-end!important}
  body.rn-auth-body .rn-mobile-menu__panel{
    width:min(390px,100%)!important;
    height:auto!important;
    max-height:calc(100dvh - 16px)!important;
    margin:0!important;
    border:1px solid var(--ui-line-strong)!important;
    border-radius:20px!important;
  }
  body.rn-auth-body .rn-mobile-nav{flex:0 1 auto!important}
  body.rn-auth-body .rn-mobile-menu__foot{padding-bottom:12px!important}
}
@media(max-width:380px){
  body.rn-auth-body .rn-app-header__inner{width:calc(100% - 18px)!important;gap:8px!important}
  body.rn-auth-body .rn-app-brand>span{font-size:18px!important}
  body.rn-auth-body .rn-user-chip{max-width:46vw!important}
  body.rn-auth-body .rn-user-chip__avatar{display:none!important}
  body.rn-auth-body .rn-user-chip__text{max-width:calc(46vw - 34px)!important}
}

/* ========================================================================== 
   RussNews UI v21.5.15 — mobile account dropdown, no viewport overlay
   ========================================================================== */
@media(max-width:760px){
  /* The account menu is a compact dropdown below the sticky header.
     It must never become a full-screen overlay or intercept page scrolling. */
  body.rn-auth-body .rn-mobile-menu{
    display:none!important;
    position:fixed!important;
    z-index:1100!important;
    inset:auto 9px auto auto!important;
    top:62px!important;
    right:9px!important;
    bottom:auto!important;
    left:auto!important;
    width:min(390px,calc(100vw - 18px))!important;
    max-width:calc(100vw - 18px)!important;
    height:auto!important;
    max-height:calc(100dvh - 72px)!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    overflow:visible!important;
    pointer-events:none!important;
  }
  body.rn-auth-body .rn-mobile-menu.open{
    display:block!important;
    pointer-events:auto!important;
  }
  body.rn-auth-body .rn-mobile-menu__panel{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:calc(100dvh - 72px)!important;
    margin:0!important;
    border:1px solid var(--ui-line-strong)!important;
    border-radius:18px!important;
    background:#081522!important;
    box-shadow:0 24px 70px rgba(0,0,0,.56)!important;
    overflow:hidden!important;
  }
  body.rn-auth-body .rn-mobile-menu__head,
  body.rn-auth-body .rn-mobile-menu__foot{
    flex:0 0 auto!important;
  }
  body.rn-auth-body .rn-mobile-nav{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 205px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
  }
}
@media(max-width:380px){
  body.rn-auth-body .rn-mobile-menu{
    top:60px!important;
    right:7px!important;
    inset:auto 7px auto auto!important;
    width:calc(100vw - 14px)!important;
    max-width:calc(100vw - 14px)!important;
  }
}

/* ==========================================================================
   RussNews UI v21.5.17 — authenticated account menu: one real dropdown
   ========================================================================== */
/* The authenticated profile menu is never a page-sized overlay. This rule is
   deliberately outside mobile media queries so desktop/tablet/mobile share
   exactly the same behavior. */
body.rn-auth-body .rn-mobile-menu{
  display:none!important;
  position:fixed!important;
  z-index:1200!important;
  inset:auto!important;
  top:calc(var(--ui-header) - 2px)!important;
  right:max(18px,calc((100vw - var(--ui-max))/2 + 18px))!important;
  bottom:auto!important;
  left:auto!important;
  width:min(390px,calc(100vw - 36px))!important;
  height:auto!important;
  max-height:calc(100dvh - var(--ui-header) - 12px)!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  overflow:visible!important;
  pointer-events:none!important;
}
body.rn-auth-body .rn-mobile-menu.open{
  display:block!important;
  pointer-events:auto!important;
}
body.rn-auth-body .rn-mobile-menu__panel{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  max-height:calc(100dvh - var(--ui-header) - 12px)!important;
  margin:0!important;
  border:1px solid var(--ui-line-strong)!important;
  border-radius:18px!important;
  background:#081522!important;
  box-shadow:0 24px 70px rgba(0,0,0,.56)!important;
  overflow:hidden!important;
}
body.rn-auth-body .rn-mobile-menu__head,
body.rn-auth-body .rn-mobile-menu__foot{flex:0 0 auto!important}
body.rn-auth-body .rn-mobile-nav{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch;
}
@media(max-width:760px){
  body.rn-auth-body .rn-mobile-menu{
    inset:auto!important;
    top:64px!important;
    right:9px!important;
    bottom:auto!important;
    left:auto!important;
    width:min(390px,calc(100vw - 18px))!important;
    max-width:calc(100vw - 18px)!important;
    max-height:calc(100dvh - 72px)!important;
  }
  body.rn-auth-body .rn-mobile-menu__panel{max-height:calc(100dvh - 72px)!important}
}
@media(max-width:380px){
  body.rn-auth-body .rn-mobile-menu{
    inset:auto!important;
    top:62px!important;
    right:7px!important;
    bottom:auto!important;
    left:auto!important;
    width:calc(100vw - 14px)!important;
    max-width:calc(100vw - 14px)!important;
  }
}


/* ==========================================================================
   RussNews UI v21.5.18 — unread chat badge zero-state hardening
   ========================================================================== */
/* Realtime badge_state may set the unread badge to hidden after another
   device reads the messages. Navigation badge rules use display:grid, so the
   hidden state must win explicitly to avoid an empty blue dot. */
body.rn-auth-body [data-unread-messages][hidden]{display:none!important}


/* ==========================================================================
   RussNews UI v21.5.21 — deleted-user message action compaction
   ========================================================================== */
/* When a sender account is fully deleted, reply/edit/transcribe are absent.
   The remaining admin delete action takes the first action slot instead of
   keeping the spacing reserved for the third button. */
.rn-messenger-page .delete_mess.rn-deleted-user-primary-action{
  right:auto!important;
  left:calc(100% + 9px)!important;
}
.rn-messenger-page .messages_block_content_header_content_chat_item.self>.delete_mess.rn-deleted-user-primary-action{
  left:auto!important;
  right:calc(100% + 9px)!important;
}
@media(max-width:760px){
  .rn-messenger-page .delete_mess.rn-deleted-user-primary-action{
    right:auto!important;
    left:calc(100% + 7px)!important;
  }
  .rn-messenger-page .messages_block_content_header_content_chat_item.self>.delete_mess.rn-deleted-user-primary-action{
    left:auto!important;
    right:calc(100% + 7px)!important;
  }
}


/* RussNews v21.5.22 — readable spacing around inline emoji in composer/messages. */
.rn-messenger-page .rn-message-composer img.rn-twemoji,
.rn-messenger-page .messages_block_content_header_content_chat_item_text__desc img.rn-twemoji,
.rn-messenger-page .editMessTextarea img.rn-twemoji{
  margin-left:.20em!important;
  margin-right:.20em!important;
}
.rn-messenger-page #emojiPickerEnter img.rn-twemoji{
  margin-left:0!important;
  margin-right:0!important;
}


/* RussNews v21.5.26 — robust emoji rendering.
   contenteditable stays native Unicode to avoid Windows/Firefox IME duplication.
   Delivered/picker emoji use a grapheme wrapper, so unsupported/new emoji keep spacing too. */
.rn-messenger-page .rn-emoji-token{
  display:inline!important;
  margin-left:.20em!important;
  margin-right:.20em!important;
  white-space:nowrap!important;
}
.rn-messenger-page .rn-emoji-token img.rn-twemoji{
  margin-left:0!important;
  margin-right:0!important;
}
.rn-messenger-page #emojiPickerEnter .rn-emoji-token{
  margin-left:0!important;
  margin-right:0!important;
}
.rn-messenger-page .rn-message-composer img.rn-twemoji,
.rn-messenger-page .rn-edit-composer img.rn-twemoji{
  display:none!important;
}


/* ==========================================================================
   RussNews UI v21.5.28 — mobile chat composer safe bottom inset
   Keep attachment / editor / send controls above rounded screen edges and
   home-indicator areas. Desktop/tablet layout is unchanged.
   ========================================================================== */
@media(max-width:760px){
  body.rn-messenger-body .rn-messenger-page #messages_block_content_header_content_chat_input{
    padding:7px 8px calc(12px + env(safe-area-inset-bottom))!important;
  }
}


/* ==========================================================================
   RussNews UI v21.5.31 — edit newline / top alerts / stable mobile composer
   ========================================================================== */
/* Every transient authenticated notice lives at the TOP of the visual viewport.
   This final rule intentionally overrides legacy mobile messenger rules that
   previously moved the toast stack above the bottom composer. */
body.rn-auth-body .rn-system-toast,
body.rn-auth-body .system_messages.rn-system-toast,
body.rn-auth-body .rn-toast-stack,
body.rn-messenger-body .rn-toast-stack,
body.rn-auth-body .rn-messenger-page #error_message,
body.rn-messenger-body .rn-messenger-page #error_message{
  position:fixed!important;
  top:calc(12px + env(safe-area-inset-top))!important;
  right:auto!important;
  bottom:auto!important;
  left:50%!important;
  width:min(620px,calc(100vw - 24px))!important;
  max-width:calc(100vw - 24px)!important;
  margin:0!important;
  transform:translateX(-50%)!important;
}
body.rn-auth-body .rn-toast-stack,
body.rn-messenger-body .rn-toast-stack{
  width:min(430px,calc(100vw - 24px))!important;
}

/* iOS/WebKit and some mobile Chromium builds auto-zoom editable controls whose
   computed font size is below 16px. Keep both chat editors at 16px on phones;
   the surrounding geometry stays unchanged, so the page scale remains 1:1. */
@media(max-width:760px){
  body.rn-messenger-body .rn-messenger-page .rn-message-composer,
  body.rn-messenger-body .rn-messenger-page .rn-edit-composer{
    font-size:16px!important;
    line-height:1.45!important;
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
  }
  body.rn-messenger-body .rn-messenger-page{
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
  }
}

/* v21.5.41: per-device realtime presence. Session validity and device connectivity are separate states. */
.rn-session-presence{display:inline-flex!important;align-items:center;gap:6px;width:max-content;max-width:100%;padding:4px 8px;border-radius:999px;font-size:10px!important;font-weight:800;line-height:1;opacity:1!important;white-space:nowrap}
.rn-session-presence i{display:block;width:7px;height:7px;border-radius:50%;flex:none;box-shadow:0 0 0 3px rgba(125,145,160,.08)}
.rn-session-presence b{font:inherit;color:inherit}
.rn-session-presence.is-online{background:rgba(53,180,118,.12);color:#68d29d}.rn-session-presence.is-online i{background:#4fd18d;box-shadow:0 0 0 3px rgba(79,209,141,.10)}
.rn-session-presence.is-offline{background:rgba(126,148,164,.09);color:#8aa0b0}.rn-session-presence.is-offline i{background:#71899a}
.rn-admin-session-flags{display:flex;align-items:flex-end;justify-content:center;flex-direction:column;gap:5px;min-width:0}
.rn-admin-session-row .rn-session-presence{font-size:8px!important;padding:4px 7px;gap:5px}.rn-admin-session-row .rn-session-presence i{width:6px;height:6px}
@media(max-width:680px){.rn-session-row{align-items:flex-start}.rn-session-presence{font-size:9px!important}.rn-admin-session-flags{grid-column:2;align-items:flex-start;justify-content:flex-start}.rn-admin-session-status{grid-column:auto}}

/* v21.5.43: prevent mobile long-press selection/callout only while the mic gesture is active. */
#voiceBtn,#voiceBtn *,html.rn-voice-selection-lock,html.rn-voice-selection-lock body,html.rn-voice-selection-lock body *{
  -webkit-user-select:none!important;
  user-select:none!important;
  -webkit-touch-callout:none!important;
}
#voiceBtn,#voiceBtn *{
  -webkit-user-drag:none!important;
}
#voiceBtn{
  touch-action:none!important;
  -webkit-tap-highlight-color:transparent!important;
}



/* ========================================================================
   RussNews v21.5.44 — tap-to-show message actions on phone/tablet
   Desktop keeps the existing hover/focus action rail.
   ======================================================================== */
@media (max-width:760px), (hover:none), (pointer:coarse){
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row)>.reply_mess,
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row)>.edit_mess,
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row)>.delete_mess,
  .rn-messenger-page .messages_block_content_header_content_chat_item:not(.rn-system-message-row)>.transcribe_voice{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .rn-messenger-page .messages_block_content_header_content_chat_item.rn-touch-actions-open>.reply_mess,
  .rn-messenger-page .messages_block_content_header_content_chat_item.rn-touch-actions-open>.edit_mess,
  .rn-messenger-page .messages_block_content_header_content_chat_item.rn-touch-actions-open>.delete_mess,
  .rn-messenger-page .messages_block_content_header_content_chat_item.rn-touch-actions-open>.transcribe_voice{
    opacity:.96!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}


/* ========================================================================
   RussNews v21.5.46.6 — global TOP lane with hidden-by-default system toast
   ========================================================================
   Final unscoped overrides intentionally win over every historical mobile/
   messenger bottom-toast rule. They do not depend on body page classes. */
body .rn-system-toast,
body .system_messages.rn-system-toast,
body .rn-js-system-toast{
  position:fixed!important;
  z-index:2147483000!important;
  top:calc(14px + env(safe-area-inset-top))!important;
  right:auto!important;
  bottom:auto!important;
  left:50%!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(620px,calc(100vw - 28px))!important;
  max-width:calc(100vw - 28px)!important;
  min-height:52px!important;
  margin:0!important;
  transform:translateX(-50%)!important;
  text-align:center!important;
}
body .rn-system-toast.is-visible,
body .system_messages.rn-system-toast.is-visible,
body .rn-js-system-toast.is-visible{
  display:flex!important;
}

/* Realtime message cards are also always in the upper notification area.
   They sit below a possible system/error notice, so simultaneous notices do
   not cover each other. */
body .rn-toast-stack,
body.rn-messenger-body .rn-toast-stack,
body.rn-auth-body .rn-toast-stack{
  position:fixed!important;
  z-index:2147482900!important;
  top:calc(78px + env(safe-area-inset-top))!important;
  right:auto!important;
  bottom:auto!important;
  left:50%!important;
  width:min(430px,calc(100vw - 28px))!important;
  max-width:calc(100vw - 28px)!important;
  margin:0!important;
  transform:translateX(-50%)!important;
}

/* Copy confirmations are transient notifications too: never anchor them to
   the bottom navigation/composer. */
body .rn-copy-toast{
  position:fixed!important;
  z-index:2147482800!important;
  top:calc(78px + env(safe-area-inset-top))!important;
  right:auto!important;
  bottom:auto!important;
  left:50%!important;
  margin:0!important;
  transform:translate(-50%,-8px)!important;
}
body .rn-copy-toast.is-visible{
  transform:translate(-50%,0)!important;
}

/* #error_message remains only as a compatibility sink. script.js mirrors any
   legacy write into rnShowTopNotice(), so it must never flash at the bottom. */
body .rn-messenger-page #error_message{
  display:none!important;
  position:fixed!important;
  top:calc(14px + env(safe-area-inset-top))!important;
  right:auto!important;
  bottom:auto!important;
  left:50%!important;
  transform:translateX(-50%)!important;
}

@media(max-width:760px){
  body .rn-system-toast,
  body .system_messages.rn-system-toast,
  body .rn-js-system-toast{
    top:calc(10px + env(safe-area-inset-top))!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    min-height:50px!important;
  }
  body .rn-toast-stack,
  body.rn-messenger-body .rn-toast-stack,
  body.rn-auth-body .rn-toast-stack,
  body .rn-copy-toast{
    top:calc(70px + env(safe-area-inset-top))!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
  }
}

/* ========================================================================
   RussNews v21.5.46.7 — media gallery URL: hidden horizontal scroll + tooltip
   ======================================================================== */
.rn-media-page .rn-media-link{
  position:relative!important;
  min-width:0!important;
}
.rn-media-page .rn-media-link code{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding-left:7px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  touch-action:pan-x pan-y;
  cursor:grab;
}
.rn-media-page .rn-media-link code.is-dragging{
  cursor:grabbing!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.rn-media-page .rn-media-link code::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
  background:transparent!important;
}
.rn-media-page .rn-media-link code:focus-visible{
  outline:0!important;
  color:#9eb9ca!important;
}
.rn-media-link-tooltip{
  box-sizing:border-box;
  position:fixed;
  z-index:2147482700;
  display:none;
  width:max-content;
  max-width:min(520px,calc(100vw - 24px));
  padding:7px 9px;
  border:1px solid rgba(135,188,218,.14);
  border-radius:9px;
  background:#06131e;
  color:#cfe3ed;
  box-shadow:0 10px 28px rgba(0,0,0,.26);
  font-size:10px;
  line-height:1.35;
  font-weight:700;
  overflow-wrap:anywhere;
  word-break:break-word;
  pointer-events:none;
  opacity:0;
  transform:translateY(-2px);
  transition:opacity .14s ease,transform .14s ease;
}
.rn-media-link-tooltip.is-above{
  transform:translateY(2px);
}
.rn-media-link-tooltip.is-below{
  transform:translateY(-2px);
}
.rn-media-link-tooltip.is-measuring{
  display:block;
  left:-10000px;
  top:-10000px;
  visibility:hidden;
}
.rn-media-link-tooltip.is-visible{
  display:block;
  opacity:1;
  transform:translateY(0);
}
@media (any-hover:none){
  .rn-media-page .rn-media-link code{cursor:auto!important}
  .rn-media-link-tooltip{display:none!important}
}

/* =========================================================
   RussNews v21.5.46.12
   Compact unread-gallery count on Media user cards.
   Prevents CSS Grid from stretching the count on tablet/mobile.
   ========================================================= */
.rn-media-page .rn-media-user .rn-badge--new[data-gallery-owner-badge]{
  box-sizing:border-box!important;
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  justify-self:end!important;
  align-self:center!important;
  width:max-content!important;
  min-width:25px!important;
  max-width:52px!important;
  height:25px!important;
  min-height:25px!important;
  padding:0 7px!important;
  margin:0!important;
  border:1px solid rgba(112,218,255,.20)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#1489e6 0%,#28b9eb 100%)!important;
  color:#fff!important;
  box-shadow:0 6px 16px rgba(20,145,224,.20),inset 0 1px 0 rgba(255,255,255,.12)!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}

@media (max-width:760px){
  .rn-media-page .rn-media-user .rn-badge--new[data-gallery-owner-badge]{
    justify-self:start!important;
    min-width:24px!important;
    max-width:48px!important;
    height:24px!important;
    min-height:24px!important;
    padding:0 7px!important;
    margin-top:4px!important;
    box-shadow:0 5px 14px rgba(20,145,224,.18),inset 0 1px 0 rgba(255,255,255,.10)!important;
    font-size:9px!important;
  }
}

@media (max-width:520px){
  .rn-media-page .rn-media-user{
    align-items:center!important;
  }
  .rn-media-page .rn-media-user .rn-badge--new[data-gallery-owner-badge]{
    grid-column:2!important;
    grid-row:2!important;
    justify-self:start!important;
    align-self:start!important;
    width:max-content!important;
    min-width:23px!important;
    max-width:46px!important;
    height:23px!important;
    min-height:23px!important;
    padding:0 6px!important;
    margin-top:5px!important;
    border-radius:999px!important;
    font-size:8.5px!important;
  }
  .rn-media-page .rn-media-user__arrow{
    align-self:center!important;
  }
}

/* =========================================================
   RussNews v21.5.46.13
   Media unread-gallery badge label on tablet/mobile.
   Number remains the live server/realtime value; "Новые" and
   the centered separator are visual-only responsive decoration.
   ========================================================= */
@media (max-width:900px){
  .rn-media-page .rn-media-user .rn-badge--new[data-gallery-owner-badge]{
    column-gap:7px!important;
    width:max-content!important;
    min-width:0!important;
    max-width:none!important;
    height:26px!important;
    min-height:26px!important;
    padding:0 10px!important;
    overflow:visible!important;
    font-size:9.5px!important;
    line-height:1!important;
    letter-spacing:.01em!important;
  }
  .rn-media-page .rn-media-user .rn-badge--new[data-gallery-owner-badge]::before{
    content:"Новые";
    order:-2;
    display:block;
    flex:0 0 auto;
    color:rgba(255,255,255,.94);
    font-size:9.5px;
    line-height:1;
    font-weight:800;
    letter-spacing:.015em;
  }
  .rn-media-page .rn-media-user .rn-badge--new[data-gallery-owner-badge]::after{
    content:"";
    order:-1;
    display:block;
    flex:0 0 auto;
    width:3px;
    height:3px;
    margin:0 1px;
    border-radius:50%;
    background:rgba(255,255,255,.72);
    box-shadow:0 0 0 2px rgba(255,255,255,.045);
  }
}

@media (max-width:760px){
  .rn-media-page .rn-media-user .rn-badge--new[data-gallery-owner-badge]{
    min-width:0!important;
    max-width:none!important;
    height:25px!important;
    min-height:25px!important;
    padding:0 9px!important;
    column-gap:6px!important;
  }
}

@media (max-width:520px){
  .rn-media-page .rn-media-user .rn-badge--new[data-gallery-owner-badge]{
    width:max-content!important;
    min-width:0!important;
    max-width:none!important;
    height:24px!important;
    min-height:24px!important;
    padding:0 9px!important;
    margin-top:5px!important;
    column-gap:6px!important;
    font-size:9px!important;
  }
  .rn-media-page .rn-media-user .rn-badge--new[data-gallery-owner-badge]::before{
    font-size:9px;
  }
}

/* =========================================================
   RussNews v21.5.46.14
   Admin PGP settings + browser-side PGP decrypt workspace.
   ========================================================= */
@media(min-width:1181px) and (max-width:1440px){
  body.rn-auth-body .rn-app-nav>a{gap:5px;padding-left:8px;padding-right:8px;font-size:11.5px}
  body.rn-auth-body .rn-app-nav>a svg{width:17px;height:17px}
}

.rn-settings-panel--pgp{grid-column:1/-1}
.rn-settings-panel__icon--pgp{color:#72d8ff;background:linear-gradient(145deg,rgba(33,161,231,.13),rgba(67,217,255,.055));border-color:rgba(77,201,248,.18)}
.rn-pgp-settings-status{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 0}
.rn-pgp-status-chip{display:inline-grid;grid-template-columns:8px auto auto;align-items:center;gap:7px;min-height:34px;padding:0 11px;border:1px solid rgba(147,190,214,.10);border-radius:999px;background:rgba(255,255,255,.025);color:#8ea6b6;font-size:10px;line-height:1;white-space:nowrap}
.rn-pgp-status-chip>i{width:7px;height:7px;border-radius:50%;background:#637786;box-shadow:0 0 0 3px rgba(99,119,134,.08)}
.rn-pgp-status-chip>b{color:#c7d8e2;font-weight:800}
.rn-pgp-status-chip>small{color:#728b9d;font-size:9.5px;font-weight:700}
.rn-pgp-status-chip.is-saved{border-color:rgba(74,210,157,.15);background:rgba(52,191,137,.055)}
.rn-pgp-status-chip.is-saved>i{background:#49d69a;box-shadow:0 0 0 3px rgba(73,214,154,.09)}
.rn-pgp-status-chip.is-saved>small{color:#82ddb3}
.rn-pgp-status-chip.is-missing{border-color:rgba(255,154,106,.13);background:rgba(234,124,78,.045)}
.rn-pgp-status-chip.is-missing>i{background:#e28d66;box-shadow:0 0 0 3px rgba(226,141,102,.08)}
.rn-pgp-status-chip.is-missing>small{color:#d8a087}
.rn-pgp-settings-warning{display:flex;flex-direction:column;gap:4px;margin-top:16px;padding:13px 15px;border:1px solid rgba(255,159,101,.16);border-radius:15px;background:rgba(219,119,65,.055)}
.rn-pgp-settings-warning strong{color:#ffd0b8;font-size:12px;font-weight:820}
.rn-pgp-settings-warning span{color:#9caeb9;font-size:11px;line-height:1.45}
.rn-pgp-settings-form{margin-top:18px}
.rn-pgp-settings-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:16px;align-items:stretch}
.rn-pgp-settings-grid>.rn-settings-field{margin:0}
.rn-pgp-settings-field--key,.rn-pgp-settings-field--password{min-width:0;padding:16px;border:1px solid rgba(131,185,217,.08);border-radius:18px;background:rgba(4,18,29,.38)}
.rn-pgp-settings-textarea,.rn-pgp-page textarea{box-sizing:border-box;width:100%;border:1px solid rgba(139,190,220,.13);outline:0;background:#071925;color:#dcebf3;font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace;transition:border-color .16s,box-shadow .16s,background .16s}
.rn-pgp-settings-textarea{display:block;min-height:222px;margin-top:8px;padding:14px 15px;border-radius:15px;font-size:11.5px;line-height:1.55;resize:vertical;scrollbar-width:thin;scrollbar-color:rgba(69,174,224,.44) transparent}
.rn-pgp-settings-textarea:focus,.rn-pgp-page textarea:focus{border-color:rgba(58,188,245,.53);background:#081d2b;box-shadow:0 0 0 4px rgba(44,166,226,.08)}
.rn-pgp-settings-textarea:disabled,.rn-pgp-password-control input:disabled{opacity:.52;cursor:not-allowed}
.rn-pgp-password-control{position:relative;margin-top:8px}
.rn-pgp-password-control input{box-sizing:border-box;width:100%;height:52px;padding:0 52px 0 14px;border:1px solid rgba(139,190,220,.13);border-radius:15px;outline:0;background:#071925;color:#dcebf3;font-size:13px;transition:border-color .16s,box-shadow .16s,background .16s}
.rn-pgp-password-control input:focus{border-color:rgba(58,188,245,.53);background:#081d2b;box-shadow:0 0 0 4px rgba(44,166,226,.08)}
.rn-pgp-password-control .rn-pgp-password-toggle{right:5px!important;width:40px!important;height:40px!important}
.rn-pgp-settings-security-note{display:grid;grid-template-columns:35px minmax(0,1fr);gap:10px;align-items:start;margin-top:18px;padding:12px;border:1px solid rgba(63,187,241,.10);border-radius:14px;background:rgba(31,145,204,.045)}
.rn-pgp-settings-security-note>svg{box-sizing:border-box;width:35px;height:35px;padding:8px;border:1px solid rgba(74,198,245,.13);border-radius:11px;background:rgba(47,171,228,.06);fill:none;stroke:#72d8ff;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.rn-pgp-settings-security-note>span{color:#839aaa;font-size:10.5px;line-height:1.5;overflow-wrap:anywhere}
.rn-pgp-settings-security-note b{display:block;margin-bottom:2px;color:#ccebf8;font-size:11px;font-weight:820}
.rn-pgp-settings-security-note code{color:#9fdaf3;font-size:10px}
.rn-pgp-settings-actions{align-items:center;margin-top:1px}
.rn-pgp-settings-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-left:auto}
.rn-pgp-settings-buttons .rn-button.is-disabled{opacity:.42;pointer-events:none}
.rn-pgp-settings-updated{display:block;min-height:16px;margin-top:-4px;color:#688294;font-size:9.5px;text-align:right}

.rn-pgp-heading{align-items:center}
.rn-pgp-ready-state{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid rgba(74,210,157,.17);border-radius:999px;background:rgba(52,191,137,.055);color:#82ddb3;font-size:10.5px;white-space:nowrap}
.rn-pgp-ready-state i{width:8px;height:8px;border-radius:50%;background:#49d69a;box-shadow:0 0 0 4px rgba(73,214,154,.09)}
.rn-pgp-ready-state b{font-weight:820}
.rn-pgp-ready-state.is-warning{border-color:rgba(255,159,101,.16);background:rgba(219,119,65,.055);color:#e6a585}
.rn-pgp-ready-state.is-warning i{background:#e28d66;box-shadow:0 0 0 4px rgba(226,141,102,.08)}
.rn-pgp-blocker{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:16px;padding:18px;border-radius:20px;border-color:rgba(255,159,101,.12);background:linear-gradient(135deg,rgba(219,119,65,.05),rgba(7,24,36,.82))}
.rn-pgp-blocker__icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,166,113,.14);border-radius:15px;background:rgba(220,128,79,.06);color:#f0a37c}
.rn-pgp-blocker__icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-pgp-blocker strong{display:block;margin-bottom:5px;color:#f3fbff;font-size:14px;font-weight:840}
.rn-pgp-blocker p{margin:0;color:#8da4b4;font-size:11.5px;line-height:1.5}
.rn-pgp-blocker code{color:#aee1f6;font-size:10.5px}
.rn-pgp-workspace{display:grid;gap:16px}
.rn-pgp-workspace.is-disabled{opacity:.58}
.rn-pgp-editor-card,.rn-pgp-result-card{padding:20px;border-radius:22px}
.rn-pgp-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.rn-pgp-card-head h2{margin:3px 0 0;color:#f2f9fc;font-size:19px;line-height:1.2;letter-spacing:-.02em}
.rn-pgp-clear-input{appearance:none;border:0;background:transparent;color:#6f8b9d;font-size:10.5px;font-weight:760;cursor:pointer;transition:color .15s}
.rn-pgp-clear-input:hover{color:#b8e6f8}
.rn-pgp-clear-input:disabled{opacity:.4;cursor:not-allowed}
.rn-pgp-message-input{display:block;min-height:300px;padding:16px 17px;border-radius:17px;font-size:12px;line-height:1.6;resize:vertical;scrollbar-width:thin;scrollbar-color:rgba(69,174,224,.44) transparent}
.rn-pgp-editor-actions,.rn-pgp-result-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px}
.rn-pgp-inline-status{display:none;min-width:0;color:#8ba2b0;font-size:10.5px;line-height:1.4}
.rn-pgp-inline-status.is-visible{display:block}
.rn-pgp-inline-status.is-ok{color:#72d5aa}
.rn-pgp-inline-status.is-error{color:#ff92a5}
.rn-pgp-decrypt-button{min-width:156px}
.rn-pgp-result-card[hidden]{display:none!important}
.rn-pgp-result-card{border-color:rgba(73,207,157,.10);background:linear-gradient(145deg,rgba(45,174,127,.035),rgba(5,21,32,.86))}
.rn-pgp-result-state{display:inline-flex;align-items:center;gap:7px;color:#71d5a8;font-size:10px;font-weight:800}
.rn-pgp-result-state i{width:7px;height:7px;border-radius:50%;background:#49d69a;box-shadow:0 0 0 3px rgba(73,214,154,.09)}
.rn-pgp-result-output{display:block;min-height:220px;padding:16px 17px;border-radius:17px;background:#061720;color:#e5f3f7;font-size:12px;line-height:1.62;resize:vertical;scrollbar-width:thin;scrollbar-color:rgba(69,174,224,.44) transparent}
.rn-pgp-copy-state{color:#7891a2;font-size:10.5px}
.rn-pgp-copy-state.is-ok{color:#72d5aa}
.rn-pgp-copy-state.is-error{color:#ff92a5}

@media(max-width:900px){
  .rn-pgp-settings-grid{grid-template-columns:1fr}
  .rn-pgp-settings-textarea{min-height:190px}
}
@media(max-width:760px){
  .rn-pgp-heading{align-items:flex-start}
  .rn-pgp-ready-state{min-height:34px;padding:0 11px}
  .rn-pgp-blocker{grid-template-columns:42px minmax(0,1fr);padding:15px;border-radius:18px}
  .rn-pgp-blocker__icon{width:42px;height:42px;border-radius:13px}
  .rn-pgp-blocker>.rn-button{grid-column:1/-1;width:100%}
  .rn-pgp-settings-grid{gap:12px}
  .rn-pgp-settings-field--key,.rn-pgp-settings-field--password{padding:14px;border-radius:16px}
  .rn-pgp-settings-status{gap:7px}
  .rn-pgp-status-chip{min-height:32px;padding:0 9px;gap:6px}
  .rn-pgp-settings-actions{display:grid!important;gap:11px}
  .rn-pgp-settings-buttons{display:grid;grid-template-columns:1fr 1fr;width:100%;margin:0}
  .rn-pgp-settings-buttons .rn-button{width:100%}
  .rn-pgp-settings-updated{text-align:left}
  .rn-pgp-editor-card,.rn-pgp-result-card{padding:16px;border-radius:19px}
  .rn-pgp-message-input{min-height:265px;padding:14px;font-size:11.5px}
  .rn-pgp-result-output{min-height:210px;padding:14px;font-size:11.5px}
  .rn-pgp-editor-actions,.rn-pgp-result-actions{align-items:stretch;flex-direction:column}
  .rn-pgp-decrypt-button,.rn-pgp-result-actions .rn-button{width:100%}
  .rn-pgp-inline-status,.rn-pgp-copy-state{width:100%}
}
@media(max-width:520px){
  .rn-pgp-status-chip{grid-template-columns:7px auto auto;font-size:9.5px}
  .rn-pgp-status-chip>small{font-size:9px}
  .rn-pgp-settings-buttons{grid-template-columns:1fr}
  .rn-pgp-settings-textarea{min-height:170px;padding:12px;font-size:11px}
  .rn-pgp-password-control input{height:50px}
  .rn-pgp-card-head{align-items:flex-start}
  .rn-pgp-card-head h2{font-size:17px}
  .rn-pgp-message-input{min-height:235px;border-radius:15px}
  .rn-pgp-result-output{min-height:190px;border-radius:15px}
}

/* ========================================================================== 
   RussNews v21.5.46.17 — admin TOTP vault on Profile
   ========================================================================== */
.rn-totp-card{position:relative;overflow:hidden;margin-top:18px;padding:23px 24px;border-radius:var(--ui-radius)}
.rn-totp-card:before{content:"";position:absolute;right:-95px;top:-135px;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(47,181,244,.12),transparent 68%);pointer-events:none}
.rn-totp-card__head{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px}
.rn-totp-card__title{display:flex;align-items:center;gap:13px;min-width:0}
.rn-totp-card__title>div{min-width:0}.rn-totp-card__title h2{margin:4px 0 2px;color:#f4fbff;font-size:20px;line-height:1.15;font-weight:820;letter-spacing:-.026em}
.rn-totp-card__title p{margin:0;color:#728b9c;font-size:10.5px;line-height:1.5}
.rn-totp-card__icon{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;border:1px solid rgba(82,195,249,.18);border-radius:14px;background:linear-gradient(145deg,rgba(31,151,222,.13),rgba(69,215,255,.055));color:#72d8ff}
.rn-totp-card__icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-totp-card__controls{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex:0 0 auto}
.rn-totp-add,.rn-totp-toggle{flex:0 0 auto;min-height:42px}.rn-totp-add svg,.rn-totp-toggle svg{width:16px;height:16px}.rn-totp-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}.rn-totp-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.rn-totp-card__content{position:relative;z-index:1}.rn-totp-card__content[hidden]{display:none!important}
.rn-totp-card__meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding-top:13px;border-top:1px solid rgba(142,188,216,.09);color:#647e90;font-size:10px;font-weight:700}
.rn-totp-live{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;color:#8fc8ac}.rn-totp-live i{width:7px;height:7px;border-radius:50%;background:#49d69a;box-shadow:0 0 0 4px rgba(73,214,154,.08)}
.rn-totp-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.rn-totp-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:11px 12px;min-width:0;min-height:112px;padding:13px 14px;border:1px solid rgba(128,177,208,.10);border-radius:17px;background:rgba(4,16,26,.42);transition:border-color .16s,background .16s,transform .16s}
.rn-totp-row:hover{border-color:rgba(84,190,245,.20);background:rgba(7,24,37,.56)}
.rn-totp-row.is-unavailable{border-color:rgba(255,111,135,.14)}
.rn-totp-identity{display:flex;align-items:center;gap:11px;min-width:0;grid-column:1/2;grid-row:1}.rn-totp-avatar{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border:1px solid rgba(91,193,240,.15);border-radius:13px;background:linear-gradient(145deg,rgba(28,137,206,.13),rgba(50,195,235,.04));color:#8cddff;font-size:14px;font-weight:900;text-transform:uppercase}
.rn-totp-identity>div{display:grid;gap:3px;min-width:0}.rn-totp-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e9f5fb;font-size:12.5px;font-weight:790}.rn-totp-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#667f91;font-size:9.5px}
.rn-totp-code-wrap{display:grid;grid-template-columns:minmax(112px,.72fr) minmax(120px,1.28fr);align-items:center;gap:13px;min-width:0;grid-column:1/-1;grid-row:2;padding-top:10px;border-top:1px solid rgba(128,177,208,.08)}
.rn-totp-code{appearance:none;min-width:112px;padding:0;border:0;background:transparent;color:#f4fbff;font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace!important;font-size:21px!important;font-weight:850!important;letter-spacing:.045em;line-height:1;cursor:pointer;text-align:left;white-space:nowrap}.rn-totp-code:hover{color:#8fe0ff}.rn-totp-code:disabled{cursor:default;color:#7b8992;opacity:.7}
.rn-totp-countdown{display:grid;grid-template-columns:minmax(72px,1fr) 56px;align-items:center;gap:9px;min-width:0}.rn-totp-countdown__track{position:relative;display:block;height:5px;overflow:hidden;border-radius:999px;background:rgba(118,151,174,.12)}.rn-totp-countdown__track i{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#178de1,#58d3fb);transition:width .45s linear}.rn-totp-countdown b{min-width:0;max-width:56px;overflow:hidden;text-overflow:ellipsis;color:#7993a4;font-size:9px;font-weight:760;text-align:right;white-space:nowrap}
.rn-totp-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;grid-column:2;grid-row:1}.rn-totp-action{appearance:none;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid rgba(129,176,205,.10);border-radius:11px;background:rgba(255,255,255,.018);color:#6f899b;cursor:pointer;transition:.16s}.rn-totp-action:hover{transform:translateY(-1px);border-color:rgba(76,184,239,.22);background:rgba(40,145,210,.08);color:#9ee3ff}.rn-totp-action:disabled{opacity:.35;pointer-events:none}.rn-totp-action svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.rn-totp-delete{color:#c97c89}.rn-totp-delete:hover{border-color:rgba(255,102,125,.22);background:rgba(255,82,105,.07);color:#ff9baa}
.rn-totp-loading,.rn-totp-empty,.rn-totp-error{grid-column:1/-1;display:flex;align-items:center;gap:12px;min-height:76px;padding:13px 14px;border:1px dashed rgba(128,177,208,.14);border-radius:16px;background:rgba(3,14,23,.28)}
.rn-totp-loading>span{width:28px;height:28px;flex:none;border:2px solid rgba(97,194,241,.13);border-top-color:#52cbfa;border-radius:50%;animation:rnTotpSpin .8s linear infinite}.rn-totp-loading>div,.rn-totp-empty>div,.rn-totp-error>div{display:grid;gap:2px;min-width:0}.rn-totp-loading strong,.rn-totp-empty strong,.rn-totp-error strong{color:#dbeaf3;font-size:11px}.rn-totp-loading small,.rn-totp-empty small,.rn-totp-error small{color:#6a8293;font-size:9.5px;line-height:1.45}
.rn-totp-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.rn-totp-empty__icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:rgba(37,153,219,.08);color:#6ecfff}.rn-totp-empty__icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rn-totp-error>span{display:grid;place-items:center;width:35px;height:35px;flex:none;border-radius:12px;background:rgba(255,91,111,.08);color:#ff9cab;font-size:13px;font-weight:900}.rn-totp-error{border-color:rgba(255,103,124,.14)}
@keyframes rnTotpSpin{to{transform:rotate(360deg)}}

.rn-totp-modal{position:fixed;inset:0;z-index:1650;display:none;place-items:center;padding:18px}.rn-totp-modal.is-open{display:grid}.rn-totp-modal__backdrop{position:absolute;inset:0;background:rgba(2,9,15,.79);backdrop-filter:blur(9px)}
.rn-totp-modal__dialog{position:relative;width:min(580px,100%);max-height:calc(100vh - 36px);max-height:calc(100dvh - 36px);overflow:auto;padding:25px;border:1px solid rgba(133,194,226,.15);border-radius:24px;background:linear-gradient(155deg,#0c2131,#071824);box-shadow:0 36px 110px rgba(0,0,0,.58);scrollbar-width:thin;scrollbar-color:#29465a transparent}
.rn-totp-modal__close{appearance:none;position:absolute;right:15px;top:15px;z-index:2;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:11px;background:rgba(255,255,255,.025);color:#6e8798;font-size:22px;line-height:1;cursor:pointer}.rn-totp-modal__close:hover{background:rgba(255,255,255,.05);color:#fff}
.rn-totp-modal__head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px;padding-right:36px}.rn-totp-modal__icon{display:grid;place-items:center;width:45px;height:45px;border:1px solid rgba(75,190,246,.18);border-radius:14px;background:rgba(35,154,221,.09);color:#72d8ff}.rn-totp-modal__icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.rn-totp-modal__head h2{margin:4px 0 2px;color:#f4fbff;font-size:21px;line-height:1.15;letter-spacing:-.03em}.rn-totp-modal__head p{margin:0;color:#71899a;font-size:10.5px}
.rn-totp-authy-notice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-top:19px;padding:12px 13px;border:1px solid rgba(255,191,102,.16);border-radius:15px;background:rgba(255,177,67,.045)}.rn-totp-authy-notice__icon{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(255,184,78,.09);color:#ffc579;font-size:12px;font-weight:900}.rn-totp-authy-notice strong{display:block;color:#f2cf9d;font-size:10.5px;font-weight:820}.rn-totp-authy-notice p{margin:3px 0 0;color:#987f62;font-size:9.5px;line-height:1.55}
.rn-totp-form{display:grid;gap:13px;margin-top:18px}.rn-totp-form .rn-form-field{gap:6px}.rn-totp-form .rn-control{height:50px}.rn-totp-form .rn-control input{height:48px!important;min-height:48px!important;line-height:48px!important}.rn-totp-secret-hint{margin:-3px 0 0;color:#60798b;font-size:9.5px;line-height:1.5}.rn-totp-secret-hint code{color:#8bbdd4;font-size:9px}.rn-totp-form-message{display:none;min-height:38px;padding:10px 12px;border-radius:12px;font-size:10px;line-height:1.5}.rn-totp-form-message.is-visible{display:block}.rn-totp-form-message.is-error{border:1px solid rgba(255,104,126,.16);background:rgba(255,77,104,.055);color:#ffadba}.rn-totp-form-message.is-ok{border:1px solid rgba(73,214,154,.16);background:rgba(73,214,154,.05);color:#9ce6c0}.rn-totp-form__actions{display:flex;justify-content:flex-end;gap:9px;margin-top:2px}

@media(max-width:980px){.rn-totp-list{grid-template-columns:1fr}}
@media(max-width:720px){.rn-totp-card__head{align-items:stretch;flex-direction:column}.rn-totp-card__controls{justify-content:flex-start}.rn-totp-add,.rn-totp-toggle{flex:1 1 auto}}
@media(max-width:620px){
  .rn-totp-card{padding:18px 15px}.rn-totp-card__controls{display:grid;grid-template-columns:1fr 1fr}.rn-totp-add,.rn-totp-toggle{width:100%}.rn-totp-card__meta{align-items:flex-start;flex-direction:column;gap:6px}.rn-totp-row{grid-template-columns:minmax(0,1fr);padding:13px}.rn-totp-identity{grid-column:auto;grid-row:auto}.rn-totp-code-wrap{grid-column:auto;grid-row:auto;grid-template-columns:minmax(112px,.72fr) minmax(120px,1.28fr)}.rn-totp-actions{grid-column:auto;grid-row:auto;justify-content:flex-start;border-top:1px solid rgba(128,177,208,.08);padding-top:10px}.rn-totp-action{width:40px;height:38px}.rn-totp-empty{grid-template-columns:auto minmax(0,1fr)}.rn-totp-empty .rn-button{grid-column:1/-1;width:100%}.rn-totp-modal{padding:10px}.rn-totp-modal__dialog{max-height:calc(100dvh - 20px);padding:21px 16px;border-radius:20px}.rn-totp-modal__head{padding-right:30px}.rn-totp-form__actions{display:grid;grid-template-columns:1fr 1fr}.rn-totp-form__actions .rn-button{width:100%}
}
@media(max-width:390px){.rn-totp-card__controls{grid-template-columns:1fr}.rn-totp-code-wrap{grid-template-columns:1fr}.rn-totp-countdown{grid-template-columns:minmax(80px,1fr) 56px}.rn-totp-code{font-size:20px!important}.rn-totp-form__actions{grid-template-columns:1fr}}

.rn-totp-clock-warning{display:none;align-items:center;gap:6px;min-height:25px;padding:0 9px;border:1px solid rgba(255,190,94,.18);border-radius:999px;background:rgba(255,176,64,.055);color:#e7b974;font-size:9px;font-weight:800;white-space:nowrap}
.rn-totp-clock-warning.is-visible:not([hidden]){display:inline-flex}.rn-totp-clock-warning:before{content:"!";display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:rgba(255,187,83,.12);color:#ffc46f;font-size:9px;font-weight:900}
@media(max-width:720px){.rn-totp-clock-warning{white-space:normal}}
