/* CSS completo inline: elimina il FOUC della modale quando il CSS esterno arriva tardi. */
/* ============================================================
   NHIE / UNSUPERVISED - TapBack / Messaggistica ON
   CSS ripulito: blocchi duplicati rimossi, override accorpati.
   ============================================================ */

:root{
  --msgon-bg:#15110f;
  --msgon-panel:rgba(26,21,19,.92);
  --msgon-panel-soft:rgba(34,27,24,.78);
  --msgon-line:rgba(255,255,255,.08);
  --msgon-line-strong:rgba(255,118,190,.30);
  --msgon-text:#e8ded1;
  --msgon-muted:#96888d;
  --msgon-accent:#ff76be;
  --msgon-accent-soft:rgba(255,118,190,.14);
  --msgon-teal:#8ed7d0;
  --msgon-teal-soft:rgba(142,215,208,.14);
  --msgon-danger:#dd6a6a;
  --msgon-shadow:rgba(0,0,0,.45);
  --tapback-coral:#e96e6e;
  --tapback-pink:#f672b7;
  --tapback-blue:#30536f;
  --tapback-cyan:#e96e70;
}

/* ============================================================
   Base pagina / logo
   ============================================================ */

.msgon_page{
  width:100%;
  height:630px;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:310px minmax(0,1fr);
  gap:0;
  position:relative;
  overflow:hidden;
  border-radius:0 0 10px 10px;
  color:var(--msgon-text);
  font-family:'Hind Siliguri', Verdana, sans-serif;
  background:
    radial-gradient(circle at 12% 4%, rgba(255,90,170,.20), transparent 30%),
    radial-gradient(circle at 94% 12%, rgba(255,154,102,.12), transparent 32%),
    radial-gradient(circle at 48% 100%, rgba(155,124,255,.13), transparent 34%),
    linear-gradient(145deg, rgba(17,14,22,.92), rgba(5,5,8,.86));
  box-shadow:0 18px 60px var(--msgon-shadow);
}

.msgon_page.with_identity{ grid-template-columns:310px minmax(0,1fr); }

.msgon_page .tapback_logo{
  margin:0;
  font-family:'Space Grotesk', sans-serif;
  font-weight:700;
  letter-spacing:-.055em;
  line-height:.92;
  text-transform:none;
  color:#fff8fb;
  text-shadow:0 2px 18px rgba(0,0,0,.32);
}
.msgon_page .tapback_tap{ color:var(--tapback-pink); }
.msgon_page .tapback_back{ color:#f7f0ee; }
.msgon_page .tapback_bang{ color:var(--tapback-cyan); letter-spacing:-.08em; }
.msgon_page .tapback_logo_mark{
  background:linear-gradient(135deg, rgba(246,114,183,.95), rgba(229,109,95,.88) 52%, rgba(142,215,208,.72));
  color:#fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.22), 0 14px 30px rgba(246,114,183,.25);
}
.msgon_page .tapback_logo_mark i{ transform:translateX(-1px) rotate(-8deg); }
.msgon_page .tapback_logo_subtitle{
  display:block;
  margin-top:5px;
  font-family:'Outfit', sans-serif;
  font-size:10px;
  font-weight:600;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:rgba(255,255,255,.58);
}

/* ============================================================
   Notifiche pagina
   ============================================================ */

.msgon_notice{
  position:absolute;
  right:18px;
  bottom:18px;
  z-index:80;
  max-width:430px;
  min-width:220px;
  padding:10px 14px;
  border-radius:16px;
  font-size:11px;
  letter-spacing:.4px;
  text-transform:uppercase;
  box-shadow:0 14px 28px rgba(0,0,0,.38);
  pointer-events:none;
  animation:msgon_notice_fade 5.2s ease forwards;
}
.msgon_notice.ok{ background:rgba(72,120,95,.94); color:#ecfff2; border:1px solid rgba(180,255,210,.16); }
.msgon_notice.ko{ background:rgba(133,50,64,.95); color:#fff0f3; border:1px solid rgba(255,190,205,.16); }

@keyframes msgon_notice_fade{
  0%{ opacity:0; transform:translateY(8px); }
  10%,78%{ opacity:1; transform:translateY(0); }
  100%{ opacity:0; transform:translateY(8px); visibility:hidden; }
}

/* ============================================================
   Elementi comuni
   ============================================================ */

.msgon_main{
  min-width:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  background:
    linear-gradient(rgba(255,255,255,.015), rgba(255,255,255,.015)),
    radial-gradient(circle at 55% 20%, rgba(255,118,190,.09), transparent 22%),
    radial-gradient(circle at 80% 92%, rgba(142,215,208,.08), transparent 30%);
}

.msgon_avatar,
.msgon_avatar_small{
  overflow:hidden;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
  color:#f1dce8;
}
.msgon_avatar{
  width:38px;
  height:38px;
  flex:0 0 38px;
  border-radius:15px;
  box-shadow:0 8px 14px rgba(0,0,0,.18);
}
.msgon_avatar.big{ width:48px; height:48px; flex-basis:48px; border-radius:18px; }
.msgon_avatar.mini{ width:30px; height:30px; flex-basis:30px; border-radius:12px; }
.msgon_avatar img,
.msgon_avatar_small img{ width:100%; height:100%; object-fit:cover; display:block; }
.msgon_avatar i{ font-style:normal; font-family:'Neucha', sans-serif; font-size:17px; }
.msgon_avatar_small{
  width:28px;
  height:28px;
  flex:0 0 28px;
  border-radius:11px;
  margin-top:4px;
}
.msgon_avatar_small span{ font-size:11px; color:#ecdce5; }

.msgon_empty_inline{
  padding:14px;
  border-radius:16px;
  background:rgba(255,255,255,.035);
  border:1px dashed rgba(255,255,255,.10);
  color:var(--msgon-muted);
  font-size:12px;
  text-align:center;
}

.msgon_empty_state{
  align-self:center;
  justify-self:center;
  max-width:430px;
  text-align:center;
  padding:34px;
  border-radius:28px;
  background:rgba(20,15,20,.58);
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 16px 50px rgba(0,0,0,.25);
}
.msgon_empty_state > i{ font-size:42px; color:var(--msgon-accent); margin-bottom:12px; text-shadow:0 0 18px rgba(255,118,190,.22); }
.msgon_empty_state h2{ margin:0 0 8px; font-family:'Neucha', sans-serif; letter-spacing:1px; color:#f7e4ef; font-weight:normal; }
.msgon_empty_state p{ color:var(--msgon-muted); font-size:13px; line-height:1.45; }

.msgon_form{
  margin-top:10px;
  display:grid;
  gap:7px;
}
.msgon_form.compact{ gap:5px; }
.msgon_form label{
  color:#c4b5a5;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:1px;
}
.msgon_form label small{ color:var(--msgon-muted); font-weight:normal; text-transform:none; }
.msgon_form input[type='text'],
.msgon_form textarea,
.msgon_form select,
.msgon_rename_form input[type='text']{
  width:100%;
  box-sizing:border-box;
  background:rgba(10,8,7,.72);
  border:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,118,190,.35);
  color:var(--msgon-text);
  border-radius:10px;
  padding:8px 9px;
  font-family:'Hind Siliguri', Verdana, sans-serif;
  font-size:12px;
  outline:none;
}
.msgon_form input[type='text']:focus,
.msgon_form textarea:focus{
  border-color:rgba(255,118,190,.50);
  box-shadow:0 0 0 3px rgba(255,118,190,.08);
}
.msgon_form input.msgon_readonly_code{
  background:rgba(255,118,190,.08);
  border:1px solid rgba(255,118,190,.22);
  border-bottom-color:rgba(142,215,208,.42);
  color:#f7e4ef;
  font-size:13px;
  letter-spacing:1.6px;
  font-weight:bold;
  cursor:text;
}
.msgon_form input.msgon_readonly_code:focus{ border-color:rgba(142,215,208,.55); box-shadow:0 0 0 3px rgba(142,215,208,.08); }

.msgon_form button,
.msgon_inline_form button,
.msgon_header_actions button,
.msgon_header_actions a,
.msgon_manage button,
.msgon_rename_form button{
  border:0;
  cursor:pointer;
  border-radius:12px;
  background:linear-gradient(135deg, rgba(255,118,190,.20), rgba(142,215,208,.10));
  color:#f7e4ef;
  padding:7px 10px;
  font-family:'Hind Siliguri', Verdana, sans-serif;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.msgon_form button:hover,
.msgon_inline_form button:hover,
.msgon_header_actions button:hover,
.msgon_header_actions a:hover,
.msgon_manage button:hover,
.msgon_rename_form button:hover{
  background:linear-gradient(135deg, rgba(255,118,190,.30), rgba(142,215,208,.16));
}

.msgon_identity_card,
.msgon_conv_row,
.msgon_contact_row{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
  padding:8px;
  box-sizing:border-box;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.035) !important;
  color:var(--msgon-text) !important;
  text-decoration:none !important;
  transition:.18s ease;
}
.msgon_identity_card:hover,
.msgon_conv_row:hover,
.msgon_contact_row:hover{ background:rgba(255,118,190,.08) !important; transform:translateY(-1px); }
.msgon_identity_card.active,
.msgon_conv_row.active{ border-color:rgba(255,118,190,.35); background:linear-gradient(135deg, rgba(255,118,190,.14), rgba(142,215,208,.06)) !important; }
.msgon_identity_card b,
.msgon_conv_row b,
.msgon_contact_row b{
  display:block;
  color:#f2e2d6;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.msgon_identity_card em,
.msgon_conv_row em,
.msgon_contact_row em{
  display:block;
  color:var(--msgon-muted);
  font-size:10px;
  font-style:normal;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.msgon_identity_text,
.msgon_contact_main,
.msgon_conv_text{ min-width:0; flex:1; }
.msgon_conv_text b{ min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }

.msgon_identity_card.bigcard{ position:relative; padding:12px; min-height:76px; }
.msgon_identity_card.bigcard.has_unread{ border-color:rgba(255,118,190,.42); background:linear-gradient(135deg, rgba(255,118,190,.13), rgba(142,215,208,.06)) !important; }
.msgon_identity_unread,
.msgon_unread{
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:var(--msgon-accent);
  color:#1c1018;
  font-size:10px;
  font-weight:bold;
  line-height:18px;
}
.msgon_identity_unread{ position:absolute; top:8px; right:8px; box-shadow:0 0 12px rgba(255,118,190,.28); }

/* ============================================================
   Home / selezione numero ON
   ============================================================ */

.msgon_page.no_identity{
  grid-template-columns:1fr;
  height:630px;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 18% 10%, rgba(246,114,183,.32), transparent 28%),
    radial-gradient(circle at 88% 8%, rgba(229,109,95,.24), transparent 26%),
    radial-gradient(circle at 74% 86%, rgba(142,215,208,.18), transparent 31%),
    radial-gradient(circle at 4% 88%, rgba(48,83,111,.42), transparent 34%),
    linear-gradient(145deg, #0b0910 0%, #15101b 45%, #09090d 100%);
}
.msgon_page.no_identity::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  opacity:.46;
  background:url(/themes/advanced/imgs/bg_telegram.png) top left #000003de;
  background-size:35%;
}
.msgon_page.no_identity::after{
  content:'';
  position:absolute;
  z-index:-1;
  width:520px;
  height:520px;
  left:50%;
  top:-210px;
  transform:translateX(-50%);
  border-radius:50%;
  background:
    radial-gradient(circle, rgba(246,114,183,.14), transparent 58%),
    conic-gradient(from 210deg, rgba(246,114,183,.18), rgba(255,82,82,.29), rgba(229,95,132,.16), rgba(246,114,183,.18));
  filter:blur(8px);
  opacity:.92;
}

.msgon_start{
  padding:28px;
  box-sizing:border-box;
  overflow-y:auto;
}
.msgon_page.no_identity .msgon_start{
  position:relative;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:18px;
  min-height:0;
  overflow:hidden;
  padding:24px 30px 28px;
}
.msgon_start_hero{
  max-width:720px;
  margin:0 auto 22px;
  text-align:center;
}
.msgon_page.no_identity .msgon_start_hero{
  max-width:860px;
  margin:0 auto;
  position:relative;
}
.msgon_page.no_identity .msgon_start_hero .msgon_brand_icon,
.msgon_page.no_identity .msgon_start_hero .tapback_logo_mark{
  width:46px;
  height:46px;
  margin:0 auto 10px;
  border-radius:17px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, rgba(246,114,183,.98), #3f7ba4);
  color:#fff;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.20),
    0 0 0 6px rgba(246,114,183,.055),
    0 16px 34px rgba(246,114,183,.23),
    0 12px 28px rgba(0,0,0,.30);
}
.msgon_page.no_identity .msgon_start_hero .msgon_brand_icon i,
.msgon_page.no_identity .msgon_start_hero .tapback_logo_mark i{
  font-size:24px;
  transform:translateX(-1px) rotate(-8deg);
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.28));
}
.msgon_start_hero h1{
  margin:0;
  font-family:'Space Grotesk', sans-serif;
  font-size:48px;
  font-weight:700;
  line-height:.88;
  letter-spacing:-.065em;
  text-transform:none;
  color:#fff8fb;
  text-shadow:0 2px 18px rgba(0,0,0,.38), 0 0 28px rgba(246,114,183,.16);
}
.msgon_page.no_identity .msgon_start_hero h1:not(.tapback_logo){
  background:linear-gradient(90deg, var(--tapback-pink) 0 36%, #fff4f0 39% 78%, var(--tapback-cyan) 82% 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.msgon_page.no_identity .tapback_logo_subtitle,
.msgon_page.no_identity .msgon_start_hero p{
  margin-top:7px;
  color:rgba(255,255,255,.58);
  font-family:'Outfit', sans-serif;
  font-size:10px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.msgon_start_grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:18px;
  max-width:980px;
  margin:0 auto;
}
.msgon_page.no_identity .msgon_start_grid{
  width:min(980px,100%);
  min-height:0;
  grid-template-columns:minmax(0,1.08fr) minmax(300px,.82fr);
  gap:16px;
  align-items:stretch;
}

.msgon_content_panel{
  background:rgba(34,19,31,.70);
  border:1px solid rgba(255,255,255,.07);
  border-radius:26px;
  padding:18px;
  box-sizing:border-box;
  box-shadow:0 16px 44px rgba(0,0,0,.22);
}
.msgon_content_panel.wide{ max-width:760px; margin:0 auto; width:100%; }
.msgon_content_panel h2{
  margin:0 0 6px;
  font-family:'Neucha', 'Hind Siliguri', sans-serif;
  font-weight:normal;
  color:#f7e4ef;
  letter-spacing:1px;
  font-size:24px;
}
.msgon_page.no_identity .msgon_content_panel{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  background:
    linear-gradient(145deg, rgba(101,17,77,.07), rgba(255,255,255,.035)),
    linear-gradient(135deg, rgba(141,65,105,.12), rgba(4,21,35,.14));
  border-color:rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 20px 46px rgba(0,0,0,.28);
  backdrop-filter:blur(10px);
}
.msgon_page.no_identity .msgon_content_panel::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.85;
  background:
    radial-gradient(circle at 10% 0%, rgba(0,0,0,.54), transparent 34%),
    radial-gradient(circle at 90% 100%, rgba(9,19,72,.10), transparent 38%);
}
.msgon_page.no_identity .msgon_content_panel > *{ position:relative; z-index:1; }
.msgon_page.no_identity .msgon_content_panel h2{
  margin:0 0 5px;
  font-family:'Space Grotesk', sans-serif;
  font-size:18px;
  font-weight:700;
  line-height:1;
  letter-spacing:-.035em;
  color:#fff4f8;
  text-transform:none;
}
.msgon_page.no_identity .msgon_content_panel h2::after{
  content:'';
  display:block;
  width:42px;
  height:3px;
  margin-top:9px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--tapback-pink), var(--tapback-coral), var(--tapback-cyan));
  box-shadow:0 0 14px rgba(246,114,183,.30);
}
.msgon_panel_intro,
.msgon_start_hero p{
  margin:8px 0 0;
  color:#8f8d89;
  font-size:12px;
  line-height:1.45;
}
.msgon_page.no_identity .msgon_panel_intro{
  margin:9px 0 0;
  color:rgba(232,222,209,.73);
  font-family:'Outfit', sans-serif;
  font-size:11px;
  line-height:1.35;
  letter-spacing:.01em;
}

.msgon_identity_grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(210px,1fr));
  gap:10px;
  margin-top:14px;
}
.msgon_page.no_identity .msgon_identity_grid{
  grid-template-columns:repeat(auto-fill, minmax(220px,1fr));
  gap:9px;
  max-height:382px;
  overflow:auto;
  padding-right:3px;
  scrollbar-width:thin;
}
.msgon_page.no_identity .msgon_identity_card.bigcard{
  min-height:74px;
  padding:11px;
  border-radius:20px;
  background:linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.032)) !important;
  border-color:rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 10px 22px rgba(0,0,0,.14);
}
.msgon_page.no_identity .msgon_identity_card.bigcard:hover{
  transform:none;
  border-color:rgba(246,114,183,.34);
  background:linear-gradient(135deg, rgba(246,114,183,.14), rgba(142,215,208,.07)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 14px 28px rgba(0,0,0,.20), 0 0 18px rgba(246,114,183,.08);
}
.msgon_page.no_identity .msgon_identity_card.bigcard.has_unread{
  border-color:rgba(246,114,183,.45);
  background:linear-gradient(135deg, rgba(246,114,183,.18), rgba(229,109,95,.09) 48%, rgba(142,215,208,.08)) !important;
}
.msgon_page.no_identity .msgon_identity_card.bigcard .msgon_avatar.big{
  width:44px;
  height:44px;
  flex-basis:44px;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(246,114,183,.20), rgba(48,83,111,.32));
  border-color:rgba(255,255,255,.13);
}
.msgon_page.no_identity .msgon_identity_card.bigcard b{
  font-family:'Outfit', sans-serif;
  font-size:13px;
  font-weight:700;
  color:#fff7fb;
  letter-spacing:.01em;
}
.msgon_page.no_identity .msgon_identity_card.bigcard em{
  margin-top:2px;
  font-family:'Space Grotesk', sans-serif;
  font-size:10px;
  letter-spacing:.08em;
  color:#83abb7;
}
.msgon_page.no_identity .msgon_identity_unread{
  top:9px;
  right:9px;
  background:linear-gradient(135deg, var(--tapback-pink), var(--tapback-coral));
  color:#fff;
  font-family:'Outfit', sans-serif;
  font-size:9px;
  box-shadow:0 0 0 2px rgba(15,10,17,.92), 0 0 14px rgba(246,114,183,.42);
}
.msgon_page.no_identity .msgon_form{ gap:8px; margin-top:14px; }
.msgon_page.no_identity .msgon_form label{
  color:rgba(255,255,255,.58);
  font-family:'Outfit', sans-serif;
  font-size:9px;
  font-weight:700;
  letter-spacing:.16em;
}
.msgon_page.no_identity .msgon_form input[type='text']{
  min-height:36px;
  border-radius:14px;
  background:rgba(7,8,13,.54);
  border:1px solid rgba(255,255,255,.10);
  border-bottom-color:rgba(246,114,183,.34);
  color:#fff7fb;
  font-family:'Outfit', sans-serif;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.msgon_page.no_identity .msgon_form input[type='text']:focus{
  border-color:rgba(246,114,183,.48);
  box-shadow:0 0 0 3px rgba(246,114,183,.10), inset 0 1px 0 rgba(255,255,255,.05);
}
.msgon_page.no_identity .msgon_form input.msgon_readonly_code{
  background:linear-gradient(135deg, rgba(246,114,183,.13), rgba(142,215,208,.08));
  border-color:rgba(142,215,208,.28);
  color:#eafffb;
  font-family:'Space Grotesk', sans-serif;
  font-size:14px;
  letter-spacing:.12em;
}
.msgon_page.no_identity .msgon_empty_inline{
  border-radius:18px;
  background:rgba(255,255,255,.045);
  border:1px dashed rgba(246,114,183,.22);
  color:rgba(232,222,209,.62);
  font-family:'Outfit', sans-serif;
  font-size:11px;
}

/* ============================================================
   Sidebar / account / menu alto
   ============================================================ */

.msgon_sidebar{
  background:rgba(15,11,13,.84);
  border-right:1px solid var(--msgon-line);
  padding:16px 12px;
  box-sizing:border-box;
  overflow-y:auto;
  scrollbar-width:thin;
}
.msgon_account_area{
  min-width:0;
  min-height:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}

.msgon_selected_identity{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:9px;
  padding:10px;
  margin-bottom:14px;
  border-radius:20px;
  background:linear-gradient(135deg, rgba(255,118,190,.12), rgba(142,215,208,.06));
  border:1px solid rgba(255,255,255,.075);
}
.msgon_selected_identity b{ display:block; color:#f3e0eb; font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.msgon_selected_identity em{ display:block; color:var(--msgon-muted); font-size:10px; font-style:normal; letter-spacing:1px; }
.msgon_selected_identity a,
.msgon_selected_identity .msgon_copy_phone{
  width:28px;
  height:28px;
  border-radius:11px;
  display:grid;
  place-items:center;
  padding:0;
  margin:0;
  border:0;
  cursor:pointer;
  font-size:11px;
  text-decoration:none !important;
  color:#f7e4ef !important;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.msgon_selected_identity a:hover,
.msgon_selected_identity .msgon_copy_phone:hover{ background:linear-gradient(135deg, rgba(255,118,190,.22), rgba(142,215,208,.12)); color:#fff !important; }
.msgon_switch_identity_btn{ position:relative; }
.msgon_switch_identity_badge,
.msgon_quickadd_manage > summary span{
  position:absolute;
  min-width:12px;
  height:12px;
  padding:1px 3px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  background:#793458;
  color:#fff;
  font-size:8px;
  line-height:1;
  font-weight:700;
  box-shadow:0 0 0 1px rgba(255,255,255,.12), 0 0 7px rgba(246,114,183,.70);
}
.msgon_switch_identity_badge{ right:-6px; top:-6px; }

.msgon_status_teaser{
  width:92%;
  margin:0 auto;
  padding:5px 10px;
  border:1px solid rgba(246,114,183,.24);
  border-radius:13px;
  background:linear-gradient(135deg, rgba(246,114,183,.13), rgba(48,83,111,.24));
  box-shadow:0 10px 26px rgba(0,0,0,.16);
}
.msgon_status_teaser a{ display:flex; align-items:center; gap:9px; text-decoration:none; color:#f7ecf4; line-height:1.1; }
.msgon_status_teaser_icon{
  width:20px;
  height:20px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  background:rgba(246,114,183,.16);
  color:#ffc7e6;
  box-shadow:0 0 0 1px rgba(246,114,183,.32), 0 0 12px rgba(246,114,183,.20);
}
.msgon_status_teaser_text{ min-width:0; flex:1; display:block; }
.msgon_status_teaser_text b{ display:block; font-size:11px; text-transform:uppercase; letter-spacing:.09em; }
.msgon_status_teaser_text em{ display:block; font-size:10px; opacity:.72; font-style:normal; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.msgon_status_teaser_badge{
  min-width:10px;
  height:16px;
  padding:1px 4px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#793458;
  color:#fff;
  font-size:9px;
  line-height:1;
  font-weight:700;
  box-shadow:0 0 8px rgba(246,114,183,.55);
}

.msgon_conversation_title{
  margin:16px 4px 7px;
  color:#f0cadf;
  font-size:10px;
  font-weight:bold;
  text-transform:uppercase;
  letter-spacing:1.6px;
}
.msgon_contacts,
.msgon_conversations{ display:grid; gap:7px; margin-top:10px; }
.msgon_contacts.large{ margin-top:16px; gap:10px; }
.msgon_contact_row.static:hover{ transform:none; }
.msgon_conv_time{
  display:flex;
  min-width:0;
  margin-top:1px;
  padding-right:18px;
  color:#504d4d;
  font-size:9px;
  line-height:14px;
  text-align:right;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.msgon_pin{ color:#ffcf6f; text-shadow:0 0 8px rgba(255,207,111,.38); font-size:10px; }
.msgon_muted_inline,
.msgon_blocked_inline{
  flex:0 0 auto;
  display:inline-grid;
  place-items:center;
  width:13px;
  height:13px;
  font-size:9px;
  line-height:1;
}
.msgon_muted_inline{ color:rgba(185,166,255,.82); text-shadow:0 0 6px rgba(145,118,255,.24); }
.msgon_blocked_inline{ color:rgba(255,143,163,.88); text-shadow:0 0 6px rgba(255,120,150,.24); }

.msgon_topmenu{
  min-height:58px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  box-sizing:border-box;
  background:rgba(13,10,9,.70);
  border-bottom:1px solid var(--msgon-line);
  overflow-x:auto;
}
.msgon_topmenu a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.05);
  color:#decfd8 !important;
  text-decoration:none !important;
  text-transform:uppercase;
  letter-spacing:1px;
  font-size:10px;
  white-space:nowrap;
}
.msgon_topmenu a:hover,
.msgon_topmenu a.active{ background:linear-gradient(135deg, rgba(255,118,190,.20), rgba(142,215,208,.10)); color:#fff3fa !important; border-color:rgba(255,118,190,.22); }

/* ============================================================
   Viste pannello: rubrica / stati / nuovo gruppo / profilo
   ============================================================ */

.msgon_main.panel_view{
  overflow-y:auto;
  padding:22px;
  box-sizing:border-box;
}
.msgon_form_row{
  grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;
  align-items:end;
  margin-top:16px;
}
.msgon_form_row > div{ min-width:0; }
.msgon_checklist{
  max-height:150px;
  overflow:auto;
  display:grid;
  gap:4px;
  padding:7px;
  border-radius:12px;
  background:rgba(0,0,0,.16);
}
.msgon_checklist.tall{ max-height:260px; }
.msgon_checklist label,
.msgon_checklist div{
  color:var(--msgon-text);
  text-transform:none;
  letter-spacing:0;
  font-size:11px;
}
.msgon_inline_form{ margin:0; }
.msgon_inline_form button{
  width:30px;
  height:30px;
  padding:0;
  display:grid;
  place-items:center;
}
.msgon_inline_form.widebtn button{
  width:auto;
  min-width:78px;
  padding:0 10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
}
.msgon_contact_editor{
  display:grid;
  gap:6px;
  padding:8px;
  border-radius:18px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.045);
}
.msgon_rename_form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:6px;
  margin:0;
}
.msgon_rename_form input[type='text']{ padding:7px 9px; font-size:11px; }
.msgon_rename_form button{ border-radius:10px; padding:0 10px; font-size:10px; }

.msgon_status_page{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:0;
  background:none;
  border:none;
  box-shadow:none;
}
.msgon_status_publish_bar{
  padding:10px 12px;
  border:1px solid rgba(246,114,183,.18);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(246,114,183,.10), rgba(48,83,111,.18));
  box-shadow:0 10px 24px rgba(0,0,0,.10);
}
.msgon_status_publish_bar .msgon_panel_intro{ margin:0 0 3px; font-size:11px; line-height:1.35; opacity:.78; color:#decfd8; }
.msgon_form.msgon_status_form_compact{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(160px,.95fr) auto;
  align-items:end;
  gap:8px;
  margin:0;
}
.msgon_status_form_compact label{ margin:0 0 3px; font-size:9px; letter-spacing:.08em; text-transform:uppercase; opacity:.68; }
.msgon_status_form_compact textarea{ min-height:34px; height:34px; resize:none; line-height:1.25; }
.msgon_status_form_compact input{ height:34px; }
.msgon_status_form_compact button{ height:34px; white-space:nowrap; padding:0 12px; }
.msgon_status_section_head{ display:flex; align-items:flex-end; justify-content:space-between; gap:10px; margin:4px 0 0; }
.msgon_status_section_head h3{ margin:0; }
.msgon_status_section_head em{ font-size:10px; opacity:.58; font-style:normal; }
.msgon_status_grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:6px;
  margin-top:-14px;
}
.msgon_status_card{
  position:relative;
  min-height:228px;
  overflow:hidden;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}
.msgon_status_card_img{
  height:350px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:linear-gradient(150deg, rgba(48,83,111,.50), rgba(40,7,24,.12));
}
.msgon_status_card_img img{ width:100%; height:100%; object-fit:cover; display:block; }
.msgon_status_card_img i{ font-size:32px; color:rgba(246,114,183,.64); }
.msgon_status_card_body{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:42px 12px 11px;
  background:linear-gradient(to top, rgba(18,18,22,.92), rgba(18,18,22,.70) 56%, rgba(18,18,22,0));
}
.msgon_status_card_head{ display:flex; align-items:center; gap:8px; margin-bottom:6px; }
.msgon_status_card_head .msgon_avatar.mini{ flex-shrink:0; box-shadow:0 0 0 1px rgba(255,255,255,.20); }
.msgon_status_card_head b{ display:block; font-size:12px; line-height:1.1; color:#fff8fb; }
.msgon_status_card_head em{ display:block; max-width:100%; font-size:9px; opacity:.72; font-style:normal; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.msgon_status_text{
  display:-webkit-box;
  -webkit-line-clamp:8;
  -webkit-box-orient:vertical;
  overflow:hidden;
  white-space:pre-line;
  color:#fff5f8;
  font-size:12px;
  line-height:1.15;
  text-shadow:0 1px 2px rgba(0,0,0,.75);
}
.msgon_status_delete{ margin-top:8px; display:flex; justify-content:flex-end; }
.msgon_status_delete button{
  border:0;
  border-radius:999px;
  padding:5px 8px;
  background:rgba(160,55,70,.54);
  color:#ffe1e1;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.06em;
  cursor:pointer;
}

/* ============================================================
   Header chat / azioni / menu dropdown
   ============================================================ */

.msgon_main.chat_view{
  position:relative;
  min-width:0;
  overflow:visible;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
}
.msgon_chat_header{
  position:relative;
  z-index:100;
  min-height:74px;
  padding:12px 18px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:space-between;
  overflow:visible;
  border-bottom:1px solid var(--msgon-line);
  background:rgba(13,10,9,.58);
  backdrop-filter:blur(8px);
}
.msgon_header_identity{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  max-width:265px;
  overflow:hidden;
}
.msgon_header_identity h2{
  margin:0;
  font-family:'Outfit', sans-serif;
  font-weight:normal;
  color:#f3dee9;
  letter-spacing:1px;
  font-size:12px;
  text-transform:uppercase;
}
.msgon_header_identity p{
  margin:2px 0 0;
  max-width:300px;
  color:var(--msgon-muted);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:1px;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.msgon_header_actions{
  position:relative;
  z-index:110;
  display:flex;
  align-items:center;
  gap:10px;
}
.msgon_header_actions form,
.msgon_header_actions .msgon_header_form{ margin:0; }
.msgon_header_actions button,
.msgon_header_actions a,
.msgon_manage summary{
  width:34px;
  height:34px;
  padding:0;
  display:grid;
  place-items:center;
  margin:0;
  text-decoration:none !important;
}
.msgon_manage{
  position:relative;
  z-index:120;
}
.msgon_manage summary{
  list-style:none;
  cursor:pointer;
  border-radius:12px;
  background:linear-gradient(135deg, rgba(255,118,190,.20), rgba(142,215,208,.10));
  color:#f7e4ef;
}
.msgon_manage summary::-webkit-details-marker{ display:none; }
.msgon_manage > div{
  position:absolute;
  top:42px;
  right:0;
  width:250px;
  z-index:9999;
  padding:10px;
  border-radius:18px;
  display:grid;
  gap:8px;
  background:rgba(18,14,13,.97);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 40px rgba(0,0,0,.45);
}
.msgon_manage form{ margin:0; display:grid; gap:6px; }
.msgon_manage .msgon_checklist{ max-height:180px; overflow:auto; margin:6px 0; }
.msgon_manage .msgon_empty_inline{ font-size:11px; padding:9px; }

.msgon_header_actions .msgon_pin_btn,
.msgon_header_actions .msgon_mute_btn,
.msgon_header_actions .msgon_block_btn{
  color:rgba(232,222,209,.55);
  background:rgba(255,255,255,.055);
}
.msgon_header_actions .msgon_pin_btn:hover,
.msgon_header_actions .msgon_mute_btn:hover,
.msgon_header_actions .msgon_block_btn:hover{ color:#ffe7f3; background:linear-gradient(135deg, rgba(255,118,190,.18), rgba(142,215,208,.10)); }
.msgon_header_actions .msgon_pin_btn.active{
  color:#ffcf6f;
  background:rgba(255,207,111,.13);
  text-shadow:0 0 8px rgba(255,207,111,.38);
  box-shadow:inset 0 0 0 1px rgba(255,207,111,.24), 0 0 12px rgba(255,207,111,.10);
}
.msgon_header_actions .msgon_mute_btn.active{
  color:#b9a6ff;
  background:rgba(145,118,255,.13);
  text-shadow:0 0 8px rgba(145,118,255,.38);
  box-shadow:inset 0 0 0 1px rgba(145,118,255,.24), 0 0 12px rgba(145,118,255,.10);
}
.msgon_header_actions .msgon_block_btn.active{
  color:#ff8fa3;
  background:rgba(160,55,70,.16);
  text-shadow:0 0 8px rgba(255,120,150,.30);
  box-shadow:inset 0 0 0 1px rgba(255,120,150,.24), 0 0 12px rgba(160,55,70,.10);
}
.msgon_header_actions button.msgon_leave_btn{ background:rgba(142,215,208,.13); color:#dffffa; }
.msgon_header_actions button.msgon_delete_btn{ background:rgba(160,55,70,.36); color:#ffd8d8; }

.msgon_quickadd_btn{ background:linear-gradient(135deg, rgba(246,114,183,.20), rgba(142,215,208,.14)); color:#fff1fb; }
.msgon_quickadd_manage > summary{ position:relative; }
.msgon_quickadd_manage > summary span{ right:-5px; top:-5px; }
.msgon_quickadd_list{ min-width:230px; max-height:220px; overflow:auto; padding:6px; }
.msgon_quickadd_item{
  display:grid;
  grid-template-columns:26px 1fr auto;
  grid-template-areas:'av name btn' 'av code btn';
  align-items:center;
  gap:2px 7px;
  margin:0 0 6px;
  padding:7px;
  border-radius:12px;
  background:rgba(255,255,255,.045);
}
.msgon_quickadd_item .msgon_avatar{ grid-area:av; }
.msgon_quickadd_item b{ grid-area:name; font-size:11px; }
.msgon_quickadd_item em{ grid-area:code; font-size:9px; opacity:.62; font-style:normal; }
.msgon_quickadd_item button{ grid-area:btn; border:0; border-radius:999px; padding:5px 7px; background:rgba(142,215,208,.18); color:#eafffb; font-size:9px; text-transform:uppercase; cursor:pointer; }

/* ============================================================
   Chiamate / videochiamate
   ============================================================ */

.msgon_call_header_slot{ display:inline-flex; align-items:center; gap:4px; }
.msgon_header_actions button.msgon_call_btn{ background:linear-gradient(135deg, rgba(142,215,208,.20), rgba(246,114,183,.18)); color:#eafffb; }
.msgon_header_actions button.msgon_call_btn.video{ background:linear-gradient(135deg, rgba(246,114,183,.22), rgba(48,83,111,.24)); color:#ffeafd; }
.msgon_header_actions button.msgon_call_btn.active{ background:rgba(160,55,70,.40); color:#ffe1e1; }
.msgon_header_actions button.msgon_call_btn.active.video{ background:linear-gradient(135deg, rgba(160,55,70,.42), rgba(246,114,183,.22)); color:#ffeafd; }
.msgon_header_actions button.msgon_call_btn.active.voice{ background:linear-gradient(135deg, rgba(160,55,70,.42), rgba(142,215,208,.16)); color:#eafffb; }
.msgon_header_actions button.msgon_call_btn.disabled{ opacity:.38; cursor:not-allowed; filter:grayscale(.35); box-shadow:none; }
.msgon_header_actions button.msgon_call_btn.disabled:hover{ transform:none; }

.msgon_call_panel{
  width:min(92%,520px);
  margin:8px auto 14px;
  padding:10px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid rgba(142,215,208,.34);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(48,83,111,.55), rgba(246,114,183,.13));
  box-shadow:0 12px 30px rgba(0,0,0,.20);
}
.msgon_call_panel.video{ border-color:rgba(246,114,183,.46); background:linear-gradient(135deg, rgba(246,114,183,.18), rgba(48,83,111,.48)); }
.msgon_call_panel.ringing{ border-color:rgba(246,114,183,.45); }
.msgon_call_panel.active,
.msgon_call_panel.active.rejoin_available{
  width:max-content;
  max-width:86%;
  padding:6px 8px;
  border-radius:999px;
  gap:8px;
  opacity:.92;
  box-shadow:0 6px 16px rgba(0,0,0,.16);
}
.msgon_call_panel.active.not_participant{
  width:min(92%,520px);
  padding:10px 12px;
  border-radius:18px;
  gap:12px;
  opacity:1;
}
.msgon_call_panel_text{ display:flex; align-items:center; gap:10px; min-width:0; color:#eefdfa; }
.msgon_call_panel_text > i{ font-size:18px; color:#8ed7d0; }
.msgon_call_panel.video .msgon_call_panel_text > i{ color:#f6a5d0; }
.msgon_call_panel_text b{ display:block; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.msgon_call_panel_text em{ display:block; font-size:11px; opacity:.78; font-style:normal; }
.msgon_call_panel.active .msgon_call_panel_text,
.msgon_call_panel.active.rejoin_available .msgon_call_panel_text{ gap:6px; }
.msgon_call_panel.active .msgon_call_panel_text > i,
.msgon_call_panel.active.rejoin_available .msgon_call_panel_text > i{ font-size:13px; }
.msgon_call_panel.active .msgon_call_panel_text b,
.msgon_call_panel.active.rejoin_available .msgon_call_panel_text b{ font-size:10px; letter-spacing:.06em; }
.msgon_call_panel.active .msgon_call_panel_text em,
.msgon_call_panel.active.rejoin_available .msgon_call_panel_text em{ display:none; }
.msgon_call_panel.active.not_participant .msgon_call_panel_text{ gap:10px; }
.msgon_call_panel.active.not_participant .msgon_call_panel_text > i{ font-size:18px; }
.msgon_call_panel.active.not_participant .msgon_call_panel_text b{ font-size:12px; letter-spacing:.08em; }
.msgon_call_panel.active.not_participant .msgon_call_panel_text em{ display:block; }
.msgon_call_panel_actions{ display:flex; align-items:center; gap:6px; flex-shrink:0; }
.msgon_call_panel_actions form{ margin:0; }
.msgon_call_panel_actions button{
  border:0;
  border-radius:999px;
  padding:7px 10px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.05em;
  cursor:pointer;
}
.msgon_call_panel.active .msgon_call_panel_actions button,
.msgon_call_panel.active.rejoin_available .msgon_call_panel_actions button{ padding:4px 7px; font-size:9px; }
.msgon_call_panel.active.not_participant .msgon_call_panel_actions button{ padding:7px 10px; font-size:11px; }
.msgon_call_accept{ background:rgba(142,215,208,.28); color:#eafffb; }
.msgon_call_reject{ background:rgba(160,55,70,.42); color:#ffe1e1; }

/* ============================================================
   Chat / messaggi
   ============================================================ */

.msgon_chat_window{
  position:relative;
  z-index:1;
  min-height:0;
  overflow-y:auto;
  padding:18px 20px 22px;
  box-sizing:border-box;
  scrollbar-width:thin;
  display:flex;
  flex-direction:column-reverse;
  background:url(/themes/advanced/imgs/bg_telegram.png) top left rgba(18,14,16,.35);
  background-size:50%;
}
.msgon_messages_inner{ display:flex; flex-direction:column; gap:10px; }
.msgon_bubble{
  display:flex;
  gap:9px;
  max-width:72%;
  position:relative;
}
.msgon_bubble.me{ align-self:flex-end; flex-direction:row-reverse; }
.msgon_bubble.other{ align-self:flex-start; }
.msgon_bubble.system{
  align-self:center;
  max-width:78%;
  display:block;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:#c7b9a9;
  font-size:11px;
  text-align:center;
}
.msgon_system_text{ line-height:1.35; }
.msgon_bubble_body{
  min-width:0;
  padding:10px 12px;
  border-radius:18px;
  background:rgba(33,27,25,.92);
  border:1px solid rgba(255,255,255,.055);
  box-shadow:0 10px 18px rgba(0,0,0,.18);
}
.msgon_bubble.me .msgon_bubble_body{
  position:relative;
  padding-bottom:24px;
  background:linear-gradient(135deg, rgba(56,38,52,.95), rgba(31,41,43,.92));
  border-color:rgba(255,118,190,.16);
}
.msgon_bubble.other .msgon_bubble_body{ background:linear-gradient(135deg, rgba(35,27,24,.94), rgba(24,28,29,.90)); }
.msgon_bubble_head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:5px;
}
.msgon_bubble_head span{ color:#f3cfe3; font-size:10px; font-weight:bold; text-transform:uppercase; letter-spacing:1px; }
.msgon_bubble_head em{ color:var(--msgon-muted); font-size:9px; font-style:normal; white-space:nowrap; }
.msgon_text{ color:var(--msgon-text); font-size:12px; line-height:1.42; overflow-wrap:anywhere; }
.msgon_text img{ max-width:260px; max-height:260px; object-fit:cover; border-radius:14px; display:block; margin-top:6px; }

.msgon_media_label{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-bottom:6px;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:1px;
}
.msgon_voice_label,
.msgon_bubble.in_call .msgon_call_label{ color:var(--msgon-teal); }
.msgon_video_label{ color:#d8847a; }
.msgon_bubble.voice .msgon_bubble_body{ border-color:rgba(142,215,208,.20); }
.msgon_bubble.video .msgon_bubble_body{ border-color:rgba(255,152,118,.24); }
.msgon_bubble.in_call .msgon_bubble_body{ border-left:3px solid rgba(142,215,208,.78); box-shadow:inset 0 0 0 1px rgba(142,215,208,.12); }
.msgon_bubble.in_call_video .msgon_bubble_body{ border-left-color:rgba(246,114,183,.82); box-shadow:inset 0 0 0 1px rgba(246,114,183,.13); }
.msgon_bubble.in_call_video .msgon_call_label{ color:#f6a5d0; }

.msgon_bubble.deleted .msgon_bubble_body,
.msgon_bubble.blocked .msgon_bubble_body{ opacity:.82; }
.msgon_deleted_text,
.msgon_blocked_text{
  margin-top:6px;
  display:flex;
  align-items:center;
  gap:6px;
  color:rgba(232,222,209,.58);
  font-size:11px;
  font-style:italic;
}
.msgon_deleted_text i{ color:rgba(246,114,183,.65); font-size:10px; }
.msgon_blocked_text i{ color:rgba(255,143,163,.65); font-size:10px; }

.msgon_block_notice{
  margin:8px 12px 0;
  padding:9px 12px;
  border-radius:14px;
  color:#ffd8df;
  background:#481d23;
  border:1px solid rgba(255,120,150,.16);
  font-size:11px;
  line-height:1.35;
  display:flex;
  align-items:center;
  gap:8px;
  z-index:99;
}
.msgon_block_notice i{ color:#ff8fa3; font-size:11px; }

.msgon_readcheck{
  position:absolute;
  right:8px;
  bottom:8px;
  margin:0;
  font-size:10px;
  line-height:1;
  cursor:default;
  z-index:2;
}
.msgon_readcheck.sent{ color:rgba(159,147,133,.65); }
.msgon_readcheck.seen{ color:var(--msgon-teal); text-shadow:0 0 6px rgba(142,215,208,.25); }
.msgon_readcheck i{ font-size:10px; }

.msgon_msg_actions{ display:flex; gap:4px; }
.msgon_edit_toggle,
.msgon_msg_actions form button{
  position:absolute;
  width:21px;
  height:21px;
  border:0;
  border-radius:9px;
  display:grid;
  place-items:center;
  padding:0 !important;
  margin:0 !important;
  color:#f7e4ef;
  cursor:pointer;
  font-size:9px;
}
.msgon_edit_toggle{ left:8px; bottom:2px; }
.msgon_msg_actions form button{ left:32px; bottom:2px; }
.msgon_edit_toggle:hover,
.msgon_msg_actions form button:hover{ color:#ffe7f3; background:linear-gradient(135deg, rgba(255,118,190,.20), rgba(142,215,208,.10)); }

.msgon_edit_form{
  margin-top:10px;
  padding:9px;
  display:grid;
  gap:7px;
  border-radius:14px;
  background:rgba(8,8,10,.42);
  border:1px solid rgba(255,255,255,.06);
  box-shadow:inset 0 0 18px rgba(0,0,0,.18);
}
.msgon_edit_form textarea{
  width:100%;
  min-height:64px;
  box-sizing:border-box;
  resize:none;
  border:0;
  border-radius:12px;
  padding:8px 10px;
  background:rgba(18,14,13,.86);
  color:#e8ded1;
  font-family:'Hind Siliguri', serif;
  font-size:11px;
  line-height:1.35;
  outline:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.07), inset 0 -1px 0 rgba(255,118,190,.18);
}
.msgon_edit_form textarea:focus{ box-shadow:inset 0 0 0 1px rgba(255,118,190,.30), 0 0 12px rgba(255,118,190,.10); }
.msgon_edit_actions{ display:flex; justify-content:flex-end; align-items:center; gap:6px; }
.msgon_edit_actions button{
  width:auto;
  min-height:22px;
  margin:12px 0 0;
  border:0;
  border-radius:999px;
  padding:4px 10px;
  color:#e8ded1;
  background:rgba(255,255,255,.055);
  font-family:'Hind Siliguri', serif;
  font-size:10px;
  line-height:1;
  letter-spacing:.6px;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);
}
.msgon_edit_actions button[type='submit']{ color:#dffffa; background:linear-gradient(135deg, rgba(142,215,208,.22), rgba(255,118,190,.10)); }
.msgon_edit_actions button[type='submit']:hover{ color:#fff; background:linear-gradient(135deg, rgba(142,215,208,.32), rgba(255,118,190,.16)); }
.msgon_edit_actions .msgon_edit_cancel{ color:rgba(232,222,209,.70); background:rgba(255,255,255,.035); }
.msgon_edit_actions .msgon_edit_cancel:hover{ color:#ffe7f3; background:rgba(255,118,190,.12); }

/* ============================================================
   Composer / emoji
   ============================================================ */

.msgon_composer_wrap{
  display:flex;
  align-items:stretch;
  gap:7px;
  padding:10px;
  box-sizing:border-box;
  background:rgba(13,10,9,.74);
  border-top:1px solid var(--msgon-line);
}
.msgon_composer{
  position:relative;
  flex:1;
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:7px;
  margin:0;
}
.msgon_type_switch{ display:flex; gap:6px; }
.msgon_type_switch button,
.msgon_send{
  width:36px;
  height:36px;
  border:0;
  border-radius:14px;
  display:grid;
  place-items:center;
  cursor:pointer;
  color:#f7e4ef;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.msgon_type_switch button.active,
.msgon_send{ background:linear-gradient(135deg, rgba(255,118,190,.30), rgba(142,215,208,.14)); color:#fff; }
.msgon_textarea_area{ position:relative; min-width:0; }
.msgon_composer textarea{
  width:95%;
  min-height:42px;
  height:60px;
  box-sizing:border-box;
  resize:none;
  border:1px solid rgba(255,255,255,.07);
  border-bottom-color:rgba(255,118,190,.28);
  border-radius:18px;
  padding:7px 42px 7px 13px;
  background:rgba(255,255,255,.045);
  color:var(--msgon-text);
  font-family:'Hind Siliguri', Verdana, sans-serif;
  font-size:12px;
  outline:none !important;
}
.msgon_composer textarea:focus{ border-color:rgba(255,118,190,.40); box-shadow:0 0 0 3px rgba(255,118,190,.08); }
.msgon_emoji_button{
  position:absolute;
  top:25%;
  right:10px;
  width:28px;
  height:28px;
  border:0;
  border-radius:50%;
  display:grid;
  place-items:center;
  padding:0;
  margin:0;
  cursor:pointer;
  color:rgba(232,222,209,.72) !important;
}
.msgon_emoji_button:hover{ color:#ffe7f3 !important; background:linear-gradient(135deg, rgba(255,118,190,.20), rgba(142,215,208,.10)); }
.msgon_emoji_shell{
  position:absolute;
  right:0;
  left:auto;
  bottom:48px;
  z-index:99999;
  width:330px;
  height:390px;
  overflow:hidden;
  border-radius:18px;
  box-shadow:0 18px 40px rgba(0,0,0,.55);
}
.msgon_emoji_shell emoji-picker{
  width:100%;
  height:100%;
  --background:#120e0e;
  --border-color:rgba(255,255,255,.08);
  --button-hover-background:rgba(255,118,190,.18);
  --button-active-background:rgba(142,215,208,.18);
  --category-emoji-padding:8px;
  --emoji-size:1.35rem;
  --indicator-color:#ff76be;
  --input-border-color:rgba(255,255,255,.10);
  --input-font-color:#e8ded1;
  --input-placeholder-color:#9f9385;
  --outline-color:#ff76be;
  --text-color:#e8ded1;
}
.msgon_no_reply_form{ flex:0 0 auto; margin:0; padding:0; display:grid; place-items:center; }
.msgon_no_reply_btn{
  width:26px;
  height:26px;
  border:0;
  border-radius:10px;
  display:grid;
  place-items:center;
  padding:0;
  margin:0;
  cursor:pointer;
  font-size:12px;
  line-height:1;
  color:rgba(232,222,209,.70);
  background:rgba(69,30,33,.81);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.07), 0 0 10px rgba(0,0,0,.12);
  appearance:none;
  -webkit-appearance:none;
}
.msgon_no_reply_btn:hover{ color:#ffe7f3; background:linear-gradient(135deg, rgba(255,118,190,.20), rgba(142,215,208,.10)); }
.msgon_no_reply_btn i{ font-size:12px; line-height:1; margin:0; padding:0; }

/* ============================================================
   Responsive
   ============================================================ */

@media (max-width:900px){
  .msgon_page{ grid-template-columns:260px minmax(0,1fr); }
  .msgon_bubble{ max-width:86%; }
  .msgon_page.no_identity{ overflow-y:auto; }
  .msgon_page.no_identity .msgon_start{ overflow:visible; padding:22px; }
  .msgon_page.no_identity .msgon_start_grid{ grid-template-columns:1fr; }
  .msgon_page.no_identity .msgon_start_hero h1,
  .msgon_page.no_identity .msgon_start_hero .tapback_logo{ font-size:42px; }
  .msgon_form_row{ grid-template-columns:1fr; }
  .msgon_start_grid{ grid-template-columns:1fr; }
}

@media (max-width:760px){
  .msgon_form.msgon_status_form_compact{ grid-template-columns:1fr; }
  .msgon_status_grid{ grid-template-columns:1fr; }
}


.msgon_status_stats{ margin-top:8px; display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.msgon_status_stats span{ min-height:20px; padding:3px 7px; border-radius:999px; display:inline-flex; align-items:center; gap:5px; background:rgba(255,255,255,.08); color:rgba(255,255,255,.84); font-size:10px; line-height:1; box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); }
.msgon_status_stats span i{ font-size:10px; color:rgba(246,114,183,.92); }
.msgon_status_stats span.msgon_status_stat_hearts i{ color:#ff8dbc; }
.msgon_status_heart_form{ margin-top:8px; display:flex; justify-content:flex-end; }
.msgon_status_heart_form button{ border:0; border-radius:999px; padding:5px 9px; display:inline-flex; align-items:center; gap:5px; color:#ffe4f1; background:rgba(255,255,255,.08); box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); cursor:pointer; font-size:10px; line-height:1; }
.msgon_status_heart_form button:hover{ background:rgba(246,114,183,.18); color:#fff; }
.msgon_status_heart_form button.active{ background:linear-gradient(135deg, rgba(246,114,183,.42), rgba(229,109,95,.28)); color:#fff; box-shadow:inset 0 0 0 1px rgba(246,114,183,.26), 0 0 12px rgba(246,114,183,.18); }
.msgon_status_heart_form button i{ font-size:10px; }


/* ============================================================
   Quote messaggi, reazioni e stati preview/dettaglio
   ============================================================ */
.msgon_reply_quote{
  margin: 0 0 8px;
  padding: 7px 9px;
  border-radius: 12px;
  border-left: 3px solid rgba(246,114,183,.75);
  background: rgba(255,255,255,.055);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.055);
}
.msgon_reply_quote b{
  display:block;
  margin-bottom:3px;
  color:#ffd3eb;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.msgon_reply_quote b i{ margin-right:4px; }
.msgon_reply_quote span{
  display:block;
  color:rgba(232,222,209,.72);
  font-size:11px;
  line-height:1.25;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.msgon_reply_quote.unavailable{
  border-left-color:rgba(159,147,133,.5);
  opacity:.72;
}
.msgon_message_tools{
  display:flex;
  justify-content:flex-start;
  gap:5px;
  margin-top:8px;
}
.msgon_reply_btn{
  width:22px;
  height:22px;
  border:0;
  border-radius:9px;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  color:rgba(232,222,209,.72);
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.msgon_reply_btn:hover{
  color:#fff;
  background:linear-gradient(135deg, rgba(246,114,183,.18), rgba(142,215,208,.10));
}

.msgon_bubble_body.has_reply_corner{
  position:relative;
  padding-right:64px;
}
.msgon_bubble.me .msgon_bubble_body.has_reply_corner{
  padding-right:64px;
}
.msgon_reply_corner_btn{
  position:absolute;
  top:7px;
  right:8px;
  opacity:.50;
  z-index:4;
}
.msgon_bubble:hover .msgon_reply_corner_btn{
  opacity:1;
}
.msgon_reaction_form{ margin:0; padding:0; }
.msgon_reaction_button{
  min-width:23px;
  height:22px;
  border:0;
  border-radius:999px;
  padding:0 6px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:3px;
  cursor:pointer;
  color:#fff;
  background:rgba(255,255,255,.05);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
  font-size:11px;
  line-height:1;
}
.msgon_reaction_button em{
  font-style:normal;
  color:rgba(255,255,255,.72);
  font-size:9px;
}
.msgon_reaction_button:hover,
.msgon_reaction_button.active{
  background:linear-gradient(135deg, rgba(246,114,183,.24), rgba(229,109,95,.14));
  box-shadow:inset 0 0 0 1px rgba(246,114,183,.22), 0 0 10px rgba(246,114,183,.10);
}
.msgon_reply_composer{
  margin:0 0 6px;
  padding:7px 34px 7px 9px;
  border-radius:13px;
  position:relative;
  background:linear-gradient(135deg, rgba(246,114,183,.12), rgba(48,83,111,.18));
  border-left:3px solid rgba(246,114,183,.82);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
}
.msgon_reply_composer b{
  display:block;
  color:#ffd3eb;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.msgon_reply_composer span{
  display:block;
  margin-top:2px;
  color:rgba(232,222,209,.70);
  font-size:11px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.msgon_reply_cancel{
  position:absolute;
  top:6px;
  right:7px;
  width:20px;
  height:20px;
  border:0;
  border-radius:50%;
  display:grid;
  place-items:center;
  cursor:pointer;
  color:rgba(232,222,209,.74);
  background:rgba(255,255,255,.06);
}
.msgon_status_people_tip{
  margin:5px 0 0;
  padding-left:15px;
}
.msgon_status_people_tip li{
  margin:2px 0;
  line-height:1.25;
}
.msgon_status_preview_grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:9px;
}
.msgon_status_preview_card{
  min-width:0;
  min-height:98px;
  display:grid;
  grid-template-columns:82px minmax(0,1fr);
  gap:10px;
  align-items:stretch;
  padding:8px;
  border-radius:20px;
  text-decoration:none!important;
  color:#fff7fb!important;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 10px 24px rgba(0,0,0,.15), inset 0 1px 0 rgba(255,255,255,.045);
  overflow:hidden;
}
.msgon_status_preview_card:hover{
  transform:translateY(-1px);
  border-color:rgba(246,114,183,.30);
  background:linear-gradient(135deg, rgba(246,114,183,.10), rgba(48,83,111,.14));
}
.msgon_status_preview_card.mine{
  border-color:rgba(246,114,183,.22);
}
.msgon_status_preview_img{
  border-radius:16px;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:linear-gradient(150deg, rgba(48,83,111,.58), rgba(246,114,183,.12));
}
.msgon_status_preview_img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.msgon_status_preview_img i{
  color:rgba(246,114,183,.72);
  font-size:23px;
}
.msgon_status_preview_body{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
}
.msgon_status_preview_body b{
  display:block;
  color:#fff8fb;
  font-size:13px;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.msgon_status_preview_body em,
.msgon_status_preview_body small{
  display:block;
  color:rgba(232,222,209,.66);
  font-size:10px;
  font-style:normal;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.msgon_status_preview_head{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
}
.msgon_status_preview_head > span:last-child{ min-width:0; }
.msgon_status_preview_meta{
  display:flex;
  align-items:center;
  gap:5px;
  margin-top:2px;
}
.msgon_status_preview_meta span{
  min-height:18px;
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:2px 6px;
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:rgba(255,255,255,.82);
  font-size:9px;
}
.msgon_status_detail_head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 10px;
}
.msgon_status_back{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border-radius:999px;
  text-decoration:none!important;
  color:#ffe7f3!important;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.065);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.msgon_status_detail_owner{
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px 9px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(246,114,183,.12), rgba(48,83,111,.16));
}
.msgon_status_detail_owner b,
.msgon_status_detail_owner em{
  display:block;
  line-height:1.05;
}
.msgon_status_detail_owner b{
  color:#fff8fb;
  font-size:12px;
}
.msgon_status_detail_owner em{
  margin-top:2px;
  color:rgba(232,222,209,.60);
  font-size:9px;
  font-style:normal;
}
.msgon_status_grid.detail{
  margin-top:0;
}
@media (max-width: 760px){
  .msgon_status_preview_grid{ grid-template-columns:1fr; }
  .msgon_status_detail_head{ align-items:flex-start; flex-direction:column; }
}

.msgon_bubble_content{
  min-width: 0;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.msgon_bubble.me .msgon_bubble_content{
  align-items: flex-end;
}

.msgon_reactions_bar{
  margin-top: 4px;
  padding-right: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
}

.msgon_bubble.me .msgon_reactions_bar{
  justify-content: flex-end;
}

/* ============================================================
   Inoltro messaggi
   ============================================================ */
.msgon_forwarded_label{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin:-1px 0 6px;
  color:rgba(255,211,235,.78);
  font-size:10px;
  line-height:1.15;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.msgon_forwarded_label i{
  font-size:9px;
  color:rgba(246,114,183,.88);
}
.msgon_forward_pick_btn{
  position:absolute;
  top:7px;
  right:34px;
  width:22px;
  height:22px;
  border:0;
  border-radius:9px;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  color:rgba(232,222,209,.62);
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
  opacity:.50;
  z-index:4;
}
.msgon_bubble:hover .msgon_forward_pick_btn,
.msgon_forward_pick_btn.active{
  opacity:1;
}
.msgon_forward_pick_btn:hover,
.msgon_forward_pick_btn.active{
  color:#fff;
  background:linear-gradient(135deg, rgba(246,114,183,.22), rgba(142,215,208,.12));
  box-shadow:inset 0 0 0 1px rgba(246,114,183,.18), 0 0 10px rgba(246,114,183,.10);
}
.msgon_forward_panel{
  position:absolute;
  left:12px;
  right:12px;
  bottom:66px;
  z-index:60;
  min-height:42px;
  display:grid;
  grid-template-columns:minmax(150px,1fr) minmax(190px, 260px) auto auto;
  align-items:center;
  gap:7px;
  padding:8px 10px;
  border-radius:18px;
  background:rgba(18,14,17,.96);
  border:1px solid rgba(246,114,183,.22);
  box-shadow:0 18px 40px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.055);
}
.msgon_forward_panel_text{
  min-width:0;
  display:block;
}
.msgon_forward_panel_text b{
  display:block;
  color:#ffe3f1;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.msgon_forward_panel_text em{
  display:block;
  margin-top:1px;
  color:rgba(232,222,209,.62);
  font-size:10px;
  font-style:normal;
}
.msgon_forward_panel select{
  width:100%;
  min-width:0;
  height:30px;
  box-sizing:border-box;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(10,8,9,.88);
  color:#e8ded1;
  font-family:'Hind Siliguri', Verdana, sans-serif;
  font-size:11px;
  outline:none;
}
.msgon_forward_send,
.msgon_forward_cancel{
  width:30px;
  height:30px;
  border:0;
  border-radius:12px;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  color:#fff;
  background:rgba(255,255,255,.06);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.065);
}
.msgon_forward_send{
  background:linear-gradient(135deg, rgba(246,114,183,.28), rgba(142,215,208,.15));
}
.msgon_forward_cancel{
  color:rgba(232,222,209,.72);
}
.msgon_forward_cancel:hover{
  color:#ffe3f1;
  background:rgba(160,55,70,.34);
}
@media (max-width:760px){
  .msgon_forward_panel{
    grid-template-columns:1fr auto auto;
  }
  .msgon_forward_panel select{
    grid-column:1 / -1;
  }
}


/* ============================================================
   Sequenza inoltrata raggruppata
   ============================================================ */
.msgon_forward_group{
  margin-top:6px;
  min-width:220px;
  max-width:100%;
  border-radius:16px;
  overflow:hidden;
  background:rgba(255,255,255,.04);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.msgon_forward_group_title{
  display:flex;
  align-items:center;
  gap:7px;
  padding:8px 10px;
  color:#ffd3eb;
  background:linear-gradient(135deg, rgba(246,114,183,.12), rgba(48,83,111,.14));
  border-bottom:1px solid rgba(255,255,255,.055);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.msgon_forward_group_title i{
  color:#ff8dbc;
  font-size:10px;
}
.msgon_forward_group_title span{
  font-weight:700;
}
.msgon_forward_group_title em{
  margin-left:auto;
  color:rgba(232,222,209,.58);
  font-style:normal;
  font-size:9px;
  letter-spacing:.05em;
}
.msgon_forward_group_items{
  display:grid;
  gap:0;
}
.msgon_forward_group_item{
  padding:8px 10px 9px;
  border-top:1px solid rgba(255,255,255,.045);
}
.msgon_forward_group_item:first-child{
  border-top:0;
}
.msgon_forward_group_head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  margin-bottom:4px;
}
.msgon_forward_group_head b{
  min-width:0;
  color:#f3cfe3;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.msgon_forward_group_head em{
  flex:0 0 auto;
  color:rgba(232,222,209,.45);
  font-size:9px;
  font-style:normal;
}
.msgon_forward_group_nested{
  margin:0 0 4px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:rgba(255,211,235,.60);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.msgon_forward_group_text{
  color:var(--msgon-text);
  font-size:11px;
  line-height:1.38;
  overflow-wrap:anywhere;
}
.msgon_forward_group_text.empty{
  color:rgba(232,222,209,.45);
  font-style:italic;
}
.msgon_forward_group_text img{
  max-width:220px;
  max-height:220px;
  object-fit:cover;
  border-radius:12px;
  display:block;
  margin-top:5px;
}


/* ============================================================
   Reaction picker compatto
   - il menu reaction si apre dal bottone emoji
   - sotto al messaggio restano solo le reaction giÃ  usate
   ============================================================ */

.msgon_bubble_body.has_reply_corner{
  position:relative;
  padding-right:64px;
}

.msgon_bubble.me .msgon_bubble_body.has_reply_corner{
  padding-right:64px;
}

.msgon_reply_forward_wrap{
  position:absolute;
  top:0;
  right:0;
  z-index:8;
}

.msgon_reply_corner_btn{
  position:absolute;
  top:7px;
  right:8px;
  opacity:.50;
  z-index:9;
}

.msgon_forward_pick_btn{
  position:absolute;
  top:7px;
  right:34px;
  opacity:.50;
  z-index:9;
}

.msgon_reaction_picker{
  position:absolute;
  top:33px;
  right:8px;
  z-index:40;
  width:22px;
  height:22px;
}

.msgon_reaction_picker > summary{
  list-style:none;
}

.msgon_reaction_picker > summary::-webkit-details-marker{
  display:none;
}

.msgon_reaction_menu_toggle{
  width:22px;
  height:22px;
  border-radius:9px;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  color:rgba(232,222,209,.62);
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
  opacity:.50;
}

.msgon_bubble:hover .msgon_reply_corner_btn,
.msgon_bubble:hover .msgon_forward_pick_btn,
.msgon_bubble:hover .msgon_reaction_menu_toggle,
.msgon_forward_pick_btn.active,
.msgon_reaction_picker.open .msgon_reaction_menu_toggle{
  opacity:1;
}

.msgon_reaction_menu_toggle:hover,
.msgon_reaction_picker.open .msgon_reaction_menu_toggle{
  color:#fff;
  background:linear-gradient(135deg, rgba(246,114,183,.22), rgba(142,215,208,.12));
  box-shadow:inset 0 0 0 1px rgba(246,114,183,.18), 0 0 10px rgba(246,114,183,.10);
}

.msgon_reaction_menu{
  position:absolute;
  top:25px;
  right:0;
  z-index:80;
  display:flex;
  align-items:center;
  gap:4px;
  padding:6px;
  border-radius:999px;
  background:rgba(18,14,17,.98);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 16px 34px rgba(0,0,0,.42), 0 0 18px rgba(246,114,183,.10);
}

.msgon_reaction_menu .msgon_reaction_form{
  margin:0;
  padding:0;
}

.msgon_reaction_menu_button{
  width:25px;
  height:25px;
  border:0;
  border-radius:999px;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  color:#fff;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
  font-size:13px;
  line-height:1;
}

.msgon_reaction_menu_button:hover,
.msgon_reaction_menu_button.active{
  background:linear-gradient(135deg, rgba(246,114,183,.28), rgba(229,109,95,.16));
  box-shadow:inset 0 0 0 1px rgba(246,114,183,.24), 0 0 10px rgba(246,114,183,.12);
}

.msgon_reactions_bar{
  margin-top:4px;
  padding-right:0;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:4px;
}

.msgon_bubble.me .msgon_reactions_bar{
  justify-content:flex-end;
}
/* ============================================================
   Azioni messaggio verticali tra avatar e bubble
   - forward / quote / reaction in colonna
   - bottoni compatti 16x16
   ============================================================ */

.msgon_bubble{
  align-items:flex-start;
  overflow:visible;
}

.msgon_bubble_body.has_reply_corner,
.msgon_bubble.me .msgon_bubble_body.has_reply_corner{
  padding-right:12px;
}

.msgon_reply_forward_wrap{
  position:relative;
  top:auto;
  right:auto;
  left:auto;
  z-index:35;
  flex:0 0 16px;
  width:16px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:3px;
  margin-top:7px;
}

.msgon_reply_forward_wrap .msgon_reply_corner_btn,
.msgon_reply_forward_wrap .msgon_forward_pick_btn,
.msgon_reply_forward_wrap .msgon_reaction_menu_toggle{
  position:relative;
  top:auto;
  right:auto;
  left:auto;
  width:16px;
  min-width:16px;
  height:16px;
  min-height:16px;
  border:0;
  border-radius:6px;
  display:grid;
  place-items:center;
  padding:0;
  margin:0;
  cursor:pointer;
  color:rgba(232,222,209,.62);
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
  opacity:.42;
  z-index:36;
  font-size:8px;
  line-height:1;
}

.msgon_reply_forward_wrap .msgon_reply_corner_btn i,
.msgon_reply_forward_wrap .msgon_forward_pick_btn i{
  font-size:8px;
  line-height:1;
}

.msgon_reply_forward_wrap .msgon_reaction_menu_toggle span{
  display:block;
  font-size:9px;
  line-height:1;
  transform:translateY(-.5px) scale(.9);
}

.msgon_bubble:hover .msgon_reply_forward_wrap .msgon_reply_corner_btn,
.msgon_bubble:hover .msgon_reply_forward_wrap .msgon_forward_pick_btn,
.msgon_bubble:hover .msgon_reply_forward_wrap .msgon_reaction_menu_toggle,
.msgon_reply_forward_wrap .msgon_forward_pick_btn.active,
.msgon_reply_forward_wrap .msgon_reaction_picker.open .msgon_reaction_menu_toggle{
  opacity:1;
}

.msgon_reply_forward_wrap .msgon_reply_corner_btn:hover,
.msgon_reply_forward_wrap .msgon_forward_pick_btn:hover,
.msgon_reply_forward_wrap .msgon_forward_pick_btn.active,
.msgon_reply_forward_wrap .msgon_reaction_menu_toggle:hover,
.msgon_reply_forward_wrap .msgon_reaction_picker.open .msgon_reaction_menu_toggle{
  color:#fff;
  background:linear-gradient(135deg, rgba(246,114,183,.22), rgba(142,215,208,.12));
  box-shadow:inset 0 0 0 1px rgba(246,114,183,.18), 0 0 8px rgba(246,114,183,.10);
}

.msgon_reply_forward_wrap .msgon_reaction_picker{
  position:relative;
  top:auto;
  right:auto;
  left:auto;
  z-index:50;
  width:16px;
  height:16px;
  flex:0 0 16px;
}


.msgon_reply_forward_wrap .msgon_reaction_menu{
  position:absolute;
  top:-5px;
  left:21px;
  right:auto;
  z-index:90;
  display:flex;
  align-items:center;
  gap:3px;
  padding:5px;
  border-radius:999px;
  background:rgba(18,14,17,.98);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 16px 34px rgba(0,0,0,.42), 0 0 18px rgba(246,114,183,.10);
}

.msgon_bubble.me .msgon_reply_forward_wrap .msgon_reaction_menu{
  left:auto;
  right:21px;
}

.msgon_reply_forward_wrap .msgon_reaction_menu .msgon_reaction_form{
  margin:0;
  padding:0;
}

.msgon_reply_forward_wrap .msgon_reaction_menu_button{
  width:22px;
  height:22px;
  border:0;
  border-radius:999px;
  display:grid;
  place-items:center;
  padding:0;
  cursor:pointer;
  color:#fff;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
  font-size:12px;
  line-height:1;
}

.msgon_reply_forward_wrap .msgon_reaction_menu_button:hover,
.msgon_reply_forward_wrap .msgon_reaction_menu_button.active{
  background:linear-gradient(135deg, rgba(246,114,183,.28), rgba(229,109,95,.16));
  box-shadow:inset 0 0 0 1px rgba(246,114,183,.24), 0 0 10px rgba(246,114,183,.12);
}


/* ============================================================
   Fix picker reaction stabile: niente details/hover fragile
   ============================================================ */
.msgon_reaction_picker:not(.open) .msgon_reaction_menu{
  display:none !important;
  pointer-events:none;
}

.msgon_reaction_picker.open .msgon_reaction_menu{
  display:flex !important;
  pointer-events:auto;
}

.msgon_reply_forward_wrap .msgon_reaction_menu_toggle{
  appearance:none;
  -webkit-appearance:none;
}

.msgon_reply_forward_wrap .msgon_reaction_picker::after{
  content:'';
  position:absolute;
  top:-7px;
  bottom:-7px;
  left:14px;
  width:12px;
  pointer-events:auto;
}

.msgon_bubble.me .msgon_reply_forward_wrap .msgon_reaction_picker::after{
  left:auto;
  right:14px;
}

.msgon_reply_forward_wrap .msgon_reaction_picker.open .msgon_reaction_menu_toggle{
  opacity:1;
  color:#fff;
  background:linear-gradient(135deg, rgba(246,114,183,.22), rgba(142,215,208,.12));
  box-shadow:inset 0 0 0 1px rgba(246,114,183,.18), 0 0 8px rgba(246,114,183,.10);
}


/* ============================================================
   Chat archiviate / eliminazione rubrica / parlato tra asterischi
   ============================================================ */

.msgon_archived_section{
  width: 99%;
    margin: 9px auto 0;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 14px;
    background: rgba(255,255,255,.025);
    overflow: hidden;
}
.msgon_archived_section > summary{
  min-height: 18px;
    padding: 7px 9px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    list-style: none;
    cursor: pointer;
    color: #d9cbd3;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .09em;
}
.msgon_archived_section > summary::-webkit-details-marker{ display:none; }
.msgon_archived_section > summary span{ display:inline-flex; align-items:center; gap:7px; }
.msgon_archived_section > summary i{ color:rgba(142,215,208,.82); }
.msgon_archived_section > summary em{
  min-width:18px;
  height:18px;
  padding:0 5px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(142,215,208,.12);
  color:#cffff8;
  font-size:9px;
  font-style:normal;
}
.msgon_archived_section[open] > summary{
  color:#f5e8ef;
  background:linear-gradient(135deg, rgba(142,215,208,.08), rgba(246,114,183,.06));
  border-bottom:1px solid rgba(255,255,255,.055);
}
.msgon_archived_conversations{
  display:grid;
  gap:7px;
  padding:7px;
}
.msgon_archived_conversations .msgon_empty_inline{ padding:9px; font-size:10px; }

.msgon_conv_item{
  position:relative;
  min-width:0;
}
.msgon_conv_item .msgon_conv_row{
  min-width:0;
  width:100%;
}
.msgon_archive_conv_form{
  position:absolute;
  right:5px;
  bottom:8px;
  z-index:3;
  margin:0;
  line-height:1;
}
.msgon_archive_conv_btn{
  width:14px;
  height:14px;
  padding:0;
  display:grid;
  place-items:center;
  border:0;
  border-radius:0;
  cursor:pointer;
  color: rgb(140 224 210);
  text-shadow: 0px 0px 6px #0092ffb0;
  background:transparent;
  box-shadow:none;
  font-size:8px;
  line-height:1;
  opacity:.72;
  transition:color .16s ease, opacity .16s ease, transform .16s ease;
}
.msgon_archive_conv_btn:hover{
  color:#eafffb;
  background:transparent;
  box-shadow:none;
  opacity:1;
  transform:translateY(-1px);
}
.msgon_archive_conv_btn.restore{ color:rgba(142,215,208,.72); }
.msgon_archive_conv_btn.restore:hover{ color:#cffff8; }
.msgon_conv_item.archived .msgon_conv_row{ opacity:.88; }

.msgon_contact_edit_actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:stretch;
  gap:6px;
}
.msgon_delete_contact_form{ margin:0; }
.msgon_delete_contact_form button{
  width:34px;
  height:100%;
  min-height:32px;
  padding:0;
  display:grid;
  place-items:center;
  border:0;
  border-radius:10px;
  cursor:pointer;
  color:#ffd8df;
  background:rgba(160,55,70,.26);
  box-shadow:inset 0 0 0 1px rgba(255,120,150,.16);
}
.msgon_delete_contact_form button:hover{ background:rgba(160,55,70,.42); }

.msgon_spoken_quote{ white-space:normal; }
.msgon_spoken_bracket{
  color: #50bdb4;
  font-style:normal;
  font-weight:200;
}
.msgon_spoken_words{
  color: #a1c4c1;
  font-style:italic;
}
.msgon_bubble.video .msgon_spoken_words,
.msgon_bubble.in_call_video .msgon_spoken_words{ color:#d5abc1; }
.msgon_bubble.in_call_video .msgon_spoken_bracket{
  color: #ed59a8;
  font-style:normal;
  font-weight:200;
}

.msgon_status_preview_card:not(.mine) .msgon_status_preview_img img{
  filter:blur(8px);
  transform:scale(1.12);
}

.msgon_status_preview_card:not(.mine) .msgon_status_preview_body > small{
  filter:blur(3px);
  user-select:none;
}


/* ============================================================
   Tribes Frequencies nella home TalkBack
   ============================================================ */

.msgon_page.no_identity .msgon_start{
  padding:18px 20px 22px;
}

.msgon_home_shell{
  width:min(1180px,100%);
  height:100%;
  max-height:100%;
  min-height:0;
  margin:0 auto;
  display:grid;
  grid-template-columns:250px minmax(0,1fr);
  gap:14px;
  align-items:stretch;
  overflow:hidden;
}

.msgon_home_main{
  min-width:0;
  min-height:0;
  overflow:auto;
  padding-right:2px;
  scrollbar-width:thin;
}

.msgon_home_main.frequency_channel_open{
  height:100%;
  max-height:100%;
  min-height:0;
  overflow:hidden;
  padding-right:0;
}

.msgon_page.no_identity .msgon_home_main .msgon_start_grid{
  width:100%;
  min-height:100%;
  grid-template-columns:minmax(0,1.08fr) minmax(300px,.82fr);
  margin:0;
}

.msgon_frequency_panel{
  min-width:0;
  min-height:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border-radius:25px;
  background:
  radial-gradient(circle at 10% 0%, rgb(215 142 215 / 12%), transparent 34%), linear-gradient(150deg, rgba(16,22,26,.88), rgba(28,14,24,.78));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055), 0 18px 42px rgba(0,0,0,.22);
  backdrop-filter:blur(10px);
}

.msgon_frequency_panel_head{
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 14px 12px;
  border-bottom:1px solid rgba(255,255,255,.065);
}

.msgon_frequency_panel_head > span{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:13px;
  color: #ffdfed;
  background: linear-gradient(135deg, rgb(215 142 175 / 24%), rgba(48, 83, 111, .28));
  box-shadow: inset 0 0 0 1px rgb(198 142 215 / 16%);
}

.msgon_frequency_panel_head h2{
  margin:0;
  color:#f7eff4;
  font-family:'Space Grotesk',sans-serif;
  font-size:14px;
  letter-spacing:-.02em;
}

.msgon_frequency_panel_head p{
  margin:3px 0 0;
  color:rgba(232,222,209,.55);
  font-family:'Outfit',sans-serif;
  font-size:9px;
  line-height:1.25;
}

.msgon_frequency_list{
  min-height:0;
  overflow-y:auto;
  display:grid;
  align-content:start;
  gap:7px;
  padding:10px;
  scrollbar-width:thin;
}

.msgon_frequency_pair{
  display:grid;
  gap:4px;
  padding:2px;
  border-radius:16px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.045);
}

.msgon_frequency_link{
  min-width: 0;
  min-height: 25px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  padding: 3px 7px;
  border-radius: 13px;
  color: #e8ded1 !important;
  text-decoration: none !important;
  background: rgba(255, 255, 255, .035);
  border: 1px solid transparent;
  transition: .16s ease;
}

.msgon_frequency_link:hover,
.msgon_frequency_link.active{
  transform:none;
  color:#fff !important;
  background:linear-gradient(135deg, rgba(142,215,208,.12), rgba(246,114,183,.08));
  border-color:rgba(142,215,208,.18);
}

.msgon_frequency_link.OFF:hover,
.msgon_frequency_link.OFF.active{
  background:linear-gradient(135deg, rgba(246,114,183,.13), rgba(229,109,95,.08));
  border-color:rgba(246,114,183,.18);
}

.msgon_frequency_link.compact{
  min-height:32px;
  margin-left:17px;
  grid-template-columns:22px minmax(0,1fr);
  padding:4px 6px;
  background:rgba(246,114,183,.045);
}

.msgon_frequency_link_icon{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:10px;
  color:#9be1da;
  background:rgba(142,215,208,.09);
  box-shadow:inset 0 0 0 1px rgba(142,215,208,.10);
}

.msgon_frequency_link.OFF .msgon_frequency_link_icon{
  color:#ffc6dc;
  background:rgba(246,114,183,.09);
  box-shadow:inset 0 0 0 1px rgba(246,114,183,.10);
}

.msgon_frequency_link.compact .msgon_frequency_link_icon{
  width:22px;
  height:22px;
  border-radius:8px;
  font-size:9px;
}

.msgon_frequency_link_icon img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.msgon_frequency_link_icon > i{
  display:block;
  font-size:12px;
  line-height:1;
}

.msgon_frequency_link.compact .msgon_frequency_link_icon > i{
  font-size:10px;
}

.msgon_frequency_link_text{
  min-width:0;
  display:flex;
  align-items:center;
  gap:6px;
}

.msgon_frequency_link_text em{
  flex:0 0 auto;
  color:#70cabf;
  font-family:'Space Grotesk',sans-serif;
  font-size:8px;
  font-style:normal;
  font-weight:700;
  letter-spacing:.08em;
}

.msgon_frequency_link.OFF .msgon_frequency_link_text em{
  color:#f49abf;
}

.msgon_frequency_link_name{
  min-width:0;
  max-width:100%;
  flex:1 1 auto;
  display:flex;
  align-items:center;
  gap:5px;
}

.msgon_frequency_link_text b{
  min-width:0;
  flex:0 1 auto;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  color:#e8ded1;
  font-family:'Outfit',sans-serif;
  font-size:10px;
  font-weight:600;
}

.msgon_frequency_unread{
  position:relative;
  z-index:2;
  flex:0 0 auto;
  min-width:17px;
  height:17px;
  padding:0 4px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#081313;
  background:#8ed7d0;
  font-size:8px;
  font-weight:800;
  box-shadow:0 0 10px rgba(142,215,208,.24);
}

.msgon_frequency_link.OFF .msgon_frequency_unread{
  color:#211018;
  background:#f6a5d0;
  box-shadow:0 0 10px rgba(246,165,208,.24);
}

.msgon_frequency_group_title{
  margin:7px 4px 1px;
  color:rgba(232,222,209,.46);
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.msgon_frequency_panel_actions{
  display:grid;
  grid-template-columns:1fr;
  gap:5px;
  padding:9px 10px 10px;
  border-top:1px solid rgba(255,255,255,.065);
}

.msgon_frequency_panel_actions a{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:14px;
  padding:6px 8px;
  border-radius:11px;
  color:#decfd8 !important;
  text-decoration:none !important;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:8px;
  background:rgba(255,255,255,.035);
}

.msgon_frequency_panel_actions a:hover{
  color:#fff !important;
  background:linear-gradient(135deg, rgba(142,215,208,.12), rgba(246,114,183,.08));
}

.msgon_frequency_missing{
  margin:12px;
  padding:14px 10px;
  display:grid;
  justify-items:center;
  gap:5px;
  border-radius:16px;
  text-align:center;
  color:#ddcfd7;
  background:rgba(160,55,70,.10);
  border:1px dashed rgba(255,120,150,.20);
}

.msgon_frequency_missing i{ color:#ff9db4; font-size:18px; }
.msgon_frequency_missing b{ font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.msgon_frequency_missing span{ color:rgba(232,222,209,.55); font-size:9px; line-height:1.3; }

.msgon_frequency_view,
.msgon_frequency_mentions_view,
.msgon_frequency_manage_view{
  min-height:0;
  overflow:hidden;
  border-radius:25px;
  box-sizing:border-box;
  background:
    radial-gradient(circle at 80% 0%, rgba(246,114,183,.09), transparent 28%),
    linear-gradient(150deg, rgba(25,17,23,.88), rgba(13,18,21,.84));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055), 0 18px 42px rgba(0,0,0,.22);
}

.msgon_frequency_view{
  width:100%;
  height:100%;
  max-height:100%;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
}

.msgon_home_main.frequency_channel_open .msgon_frequency_view{
  height:100%;
  max-height:100%;
}

.msgon_frequency_view_head{
  position:relative;
  z-index:8;
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-bottom:1px solid rgba(255,255,255,.065);
  background:rgba(8,8,12,.28);
}

.msgon_frequency_simple_head{
  min-width:0;
  display:flex;
  align-items:center;
  gap:11px;
  padding:12px 14px;
  border-bottom:1px solid rgba(255,255,255,.065);
  background:rgba(8,8,12,.20);
}

.msgon_frequency_back,
.msgon_frequency_mentions_btn{
  width:27px;
  height:27px;
  flex:0 0 27px;
  display:grid;
  place-items:center;
  border-radius:9px;
  color:#f0dce8 !important;
  text-decoration:none !important;
  background:rgba(255,255,255,.05);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
}

.msgon_frequency_simple_head > a{
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:#f0dce8 !important;
  text-decoration:none !important;
  background:rgba(255,255,255,.05);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
}

.msgon_frequency_view_icon{
  width:32px;
  height:32px;
  flex:0 0 32px;
  overflow:hidden;
  display:grid;
  place-items:center;
  border-radius:10px;
  color:#cffff8;
  background:linear-gradient(135deg, rgba(142,215,208,.18), rgba(48,83,111,.24));
  box-shadow:inset 0 0 0 1px rgba(142,215,208,.14);
}

.msgon_frequency_view_icon img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.msgon_frequency_view_icon > i{
  display:block;
  font-size:14px;
  line-height:1;
}

.msgon_frequency_view_meta,
.msgon_frequency_simple_head > div{
  min-width:0;
  flex:1;
}

.msgon_frequency_view_titleline{
  min-width:0;
  display:flex;
  align-items:center;
  gap:7px;
}

.msgon_frequency_view_titleline h2,
.msgon_frequency_simple_head h2{
  min-width:0;
  margin:0;
  overflow:hidden;
  color:#fff5fa;
  font-family:'Space Grotesk',sans-serif;
  letter-spacing:-.025em;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.msgon_frequency_view_titleline h2{
  font-size:14px;
}

.msgon_frequency_simple_head h2{
  font-size:17px;
}

.msgon_frequency_simple_head p{
  margin:3px 0 0;
  color:rgba(232,222,209,.56);
  font-size:9px;
}

.msgon_frequency_game_badge,
.msgon_frequency_mention_card_head span,
.msgon_frequency_manage_item summary > span{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  padding:2px 5px;
  border-radius:999px;
  color:#07201d;
  background:#8ed7d0;
  font-size:7px;
  font-weight:800;
  letter-spacing:.08em;
  line-height:1.1;
}

.msgon_frequency_game_badge.OFF,
.msgon_frequency_mention_card_head span.OFF,
.msgon_frequency_manage_item summary > span.OFF{
  color:#28101d;
  background:#f6a5d0;
}

.msgon_frequency_messages {
    position: relative;
    z-index: 1;
    min-height: 0;
    box-sizing: border-box;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px 14px;
    background: url(/themes/advanced/imgs/bg_telegram.png) top left rgba(18, 14, 16, .22);
    background-size: 44%;
    scrollbar-width: thin;
}

.msgon_frequency_message{
  max-width:78%;
  display:flex;
  align-items:flex-start;
  gap:8px;
}

.msgon_frequency_message.me{
  align-self:flex-end;
  flex-direction:row-reverse;
}

.msgon_frequency_message_avatar{
  width:30px;
  height:30px;
  flex:0 0 30px;
  overflow:hidden;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:#efdce7;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.075);
}

.msgon_frequency_message_avatar img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.msgon_frequency_message_avatar i{
  font-style:normal;
  font-size:11px;
}

.msgon_frequency_message_content{
  min-width:0;
  padding:8px 10px;
  border-radius:16px;
  color:#e8ded1;
  background:linear-gradient(135deg, rgba(35,27,24,.94), rgba(24,28,29,.90));
  border:1px solid rgba(255,255,255,.065);
  box-shadow:0 9px 18px rgba(0,0,0,.14);
}

.msgon_frequency_message.me .msgon_frequency_message_content{
  background:linear-gradient(135deg, rgba(56,38,52,.92), rgba(31,41,43,.88));
  border-color:rgba(246,114,183,.15);
}

.msgon_frequency_message_head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:4px;
}

.msgon_frequency_message_head b{
  color:#8ed7d0;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.msgon_frequency_message_author{
  min-width:0;
  display:flex;
  align-items:baseline;
  gap:6px;
}

.msgon_frequency_message_author b{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.msgon_frequency_message_phone{
  min-width:0;
  max-width:145px;
  padding:0;
  border:0;
  outline:0;
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:#aaa0a2;
  background:transparent;
  font-family:inherit;
  font-size:8px;
  font-weight:500;
  letter-spacing:.03em;
  line-height:1;
  white-space:nowrap;
  cursor:pointer;
  transition:color .18s ease, opacity .18s ease;
}

.msgon_frequency_message_phone i{
  flex:0 0 auto;
  font-size:8px;
}

.msgon_frequency_message_phone span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}

.msgon_frequency_message_phone:hover{
  color:#d8f7f2;
}

.msgon_frequency_message.me .msgon_frequency_message_head b{
  color:#f6a5d0;
}

.msgon_frequency_message_head em{
  color:#8f8586;
  font-size:8px;
  font-style:normal;
  white-space:nowrap;
}

.msgon_frequency_message_text{
  color:#e8ded1;
  font-size:11px;
  line-height:1.38;
  overflow-wrap:anywhere;
}

.msgon_frequency_message_text img{
  max-width:280px;
  max-height:260px;
  display:block;
  object-fit:cover;
  margin-top:6px;
  border-radius:12px;
}

.msgon_frequency_mention{
  padding:1px 3px;
  border-radius:4px;
  color:#bffcf2;
  background:rgba(142,215,208,.13);
  font-weight:700;
}

.msgon_frequency_account_required{
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  padding:7px;
  border-radius:10px;
  color:#e8ded1;
  background:rgba(130,64,76,.12);
}

.msgon_frequency_account_required > i{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:9px;
  color:#ffb5c8;
  background:rgba(246,114,183,.10);
}

.msgon_frequency_account_required div{
  min-width:0;
  display:grid;
  gap:2px;
}

.msgon_frequency_account_required b{
  font-family:'Space Grotesk',sans-serif;
  font-size:9px;
}

.msgon_frequency_account_required span{
  color:rgba(232,222,209,.56);
  font-family:'Outfit',sans-serif;
  font-size:8px;
  line-height:1.25;
}

.msgon_frequency_account_required a{
  padding:5px 7px;
  border-radius:8px;
  color:#c8fff8 !important;
  text-decoration:none !important;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:7px;
  background:rgba(142,215,208,.08);
}

.msgon_frequency_system_event{
  width:fit-content;
  max-width:82%;
  align-self:center;
  display:grid;
  grid-template-columns:18px minmax(0,1fr) auto;
  align-items:center;
  gap:7px;
  margin:8px auto;
  padding:7px 10px;
  border-radius:12px;
  color:rgba(232,222,209,.72);
  background:rgba(142,215,208,.055);
  box-shadow:inset 0 0 0 1px rgba(142,215,208,.08);
  font-family:'Outfit',sans-serif;
  font-size:9px;
  line-height:1.35;
}

.msgon_frequency_system_event > i{
  color:#9be5dc;
  text-align:center;
}

.msgon_frequency_system_event > em{
  color:rgba(232,222,209,.38);
  font-size:8px;
  font-style:normal;
  white-space:nowrap;
}

.msgon_frequency_channel_account{
  position:relative;
  width:min(430px,100%);
  margin-top:2px;
  font-family:'Outfit',sans-serif;
}

.msgon_frequency_channel_account > summary{
  min-width: 0;
      min-height: 19px;
      display: flex;
      align-items: center;
      gap: 5px;
      padding: 0px 5px;
      cursor: pointer;
      list-style: none;
      user-select: none;
      color: #e8ded1;
      background: #3d1e3042;
      border-radius: 4px;
}

.msgon_frequency_channel_account > summary::-webkit-details-marker{
  display:none;
}

.msgon_frequency_channel_account_avatar{
  width:17px;
  height:17px;
  flex:0 0 17px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:6px;
  color:#c8fff8;
  background:rgba(142,215,208,.09);
  box-shadow:inset 0 0 0 1px rgba(142,215,208,.08);
  font-size:7px;
  font-style:normal;
}

.msgon_frequency_channel_account_avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.msgon_frequency_channel_account_avatar .fa-solid{
  font-size:8px;
}

.msgon_frequency_channel_account_summary_text{
  min-width:0;
  flex:1;
  display:flex;
  align-items:baseline;
  gap:4px;
  white-space:nowrap;
  overflow:hidden;
}

.msgon_frequency_channel_account_summary_text em{
  flex: 0 0 auto;
      color: rgb(255 244 229 / 60%);
      font-size: 8px;
      font-style: normal;
      font-weight: 700;
      letter-spacing: .07em;
      text-transform: uppercase;
}

.msgon_frequency_channel_account_summary_text b{
  min-width:0;
  overflow:hidden;
  color:#dffffa;
  font-size:10px;
  text-overflow:ellipsis;
}

.msgon_frequency_channel_account.missing_identity .msgon_frequency_channel_account_summary_text b{
  color:#f2c7d9;
}

.msgon_frequency_channel_account_summary_text small{
  flex: 0 0 auto;
      color: rgb(255 244 229 / 62%);
      font-size: 10px;
}

.msgon_frequency_channel_account_toggle{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:4px;
  color:rgba(232,222,209,.42);
  font-size:6px;
  font-weight:700;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.msgon_frequency_channel_account_toggle i{
  font-size:7px;
  transition:transform .18s ease;
}

.msgon_frequency_channel_account[open] .msgon_frequency_channel_account_toggle i{
  transform:rotate(180deg);
}

.msgon_frequency_channel_account_panel{
  position:absolute;
  z-index:30;
  top:calc(100% + 5px);
  left:0;
  width:min(430px,calc(100vw - 40px));
  box-sizing:border-box;
  display:grid;
  gap:5px;
  padding:7px;
  border-radius:12px;
  background:rgba(18,17,22,.98);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 14px 32px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(12px);
}

.msgon_frequency_channel_account_form{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:6px;
}

.msgon_frequency_channel_account_form select{
  width:100%;
  min-width:0;
  height:29px;
  box-sizing:border-box;
  padding:4px 8px;
  border:1px solid rgba(255,255,255,.08);
  border-bottom-color:rgba(142,215,208,.25);
  border-radius:9px;
  outline:none;
  color:#e8ded1;
  background:#17161b;
  font-family:'Outfit',sans-serif;
  font-size:11px;
}

.msgon_frequency_channel_account_form > button{
  min-width:68px;
  height:29px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:4px 8px;
  border:0;
  border-radius:9px;
  cursor:pointer;
  color:#eafffb;
  background:rgba(142,215,208,.12);
  box-shadow:inset 0 0 0 1px rgba(142,215,208,.10);
  font-family:'Outfit',sans-serif;
  font-size:7px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.msgon_frequency_channel_account_form > button:disabled,
.msgon_frequency_channel_account_form select:disabled{
  cursor:not-allowed;
  opacity:.46;
}

.msgon_frequency_channel_account_note{
  min-height:12px;
  display:flex;
  align-items:center;
  gap:5px;
  color:rgba(232,222,209,.44);
  font-size:7px;
  line-height:1.2;
}

.msgon_frequency_channel_account_note i{
  color:#8ed7d0;
  font-size:8px;
}

.msgon_frequency_channel_account_note.locked,
.msgon_frequency_channel_account_note.locked i{
  color:#e7adbc;
}

.msgon_frequency_composer{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) 34px;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-top:1px solid rgba(255,255,255,.065);
  background:rgba(8,8,12,.30);
}

.msgon_frequency_composer textarea{
  width:100%;
  height:38px;
  min-height:38px;
  max-height:38px;
  resize:none;
  box-sizing:border-box;
  padding:7px 9px;
  border-radius:11px;
  outline:none;
  color:#e8ded1;
  background:rgba(4,5,8,.56);
  border:1px solid rgba(255,255,255,.08);
  border-bottom-color:rgba(142,215,208,.28);
  font-family:'Hind Siliguri',sans-serif;
  font-size:10px;
  line-height:1.25;
}

.msgon_frequency_composer textarea:focus{
  border-color:rgba(142,215,208,.34);
  box-shadow:0 0 0 3px rgba(142,215,208,.07);
}

.msgon_frequency_composer button{
  width:34px;
  height:34px;
  min-height:34px;
  align-self:center;
  display:grid;
  place-items:center;
  border:0;
  border-radius:13px;
  cursor:pointer;
  color:#eafffb;
  background:linear-gradient(135deg, rgba(142,215,208,.28), rgba(246,114,183,.16));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.075);
}

.msgon_frequency_mentions_view,
.msgon_frequency_manage_view{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}

.msgon_frequency_mentions_list,
.msgon_frequency_manage_list{
  min-height:0;
  overflow-y:auto;
  display:grid;
  align-content:start;
  gap:8px;
  padding:12px;
  scrollbar-width:thin;
}

.msgon_frequency_mention_card{
  display:block;
  padding:10px 11px;
  border-radius:15px;
  color:#e8ded1 !important;
  text-decoration:none !important;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.055);
}

.msgon_frequency_mention_card:hover{
  background:linear-gradient(135deg, rgba(142,215,208,.08), rgba(246,114,183,.06));
  border-color:rgba(142,215,208,.14);
}

.msgon_frequency_mention_card_head{
  display:flex;
  align-items:center;
  gap:7px;
}

.msgon_frequency_mention_card_head b{
  color:#f7e4ef;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.07em;
}

.msgon_frequency_mention-card_head em,
.msgon_frequency_mention_card_head em{
  margin-left:auto;
  color:#8f8586;
  font-size:8px;
  font-style:normal;
}

.msgon_frequency_mention_author{
  margin-top:6px;
  color:#8ed7d0;
  font-size:9px;
  font-weight:700;
}

.msgon_frequency_mention_body{
  margin-top:3px;
  color:rgba(232,222,209,.78);
  font-size:10px;
  line-height:1.35;
}

.msgon_frequency_manage_view{
  overflow-y:auto;
}

.msgon_frequency_manage_create,
.msgon_frequency_manage_item{
  margin:10px 12px 0;
  border-radius:17px;
  overflow:hidden;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
}

.msgon_frequency_manage_create > summary,
.msgon_frequency_manage_item > summary{
  min-height:38px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  cursor:pointer;
  list-style:none;
  color:#f1dce8;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.07em;
  background:rgba(255,255,255,.035);
}

.msgon_frequency_manage_create > summary::-webkit-details-marker,
.msgon_frequency_manage_item > summary::-webkit-details-marker{
  display:none;
}

.msgon_frequency_manage_item > summary b{
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.msgon_frequency_manage_item > summary em{
  margin-left:auto;
  color:#8f8586;
  font-size:8px;
  font-style:normal;
}

.msgon_frequency_manage_form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:10px;
}

.msgon_frequency_field{
  min-width:0;
  display:grid;
  gap:4px;
}

.msgon_frequency_field.full{
  grid-column:1/-1;
}

.msgon_frequency_field > span{
  color:rgba(232,222,209,.52);
  font-size:8px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.msgon_frequency_field input[type="text"],
.msgon_frequency_field input[type="number"],
.msgon_frequency_field select{
  width:100%;
  min-height:32px;
  box-sizing:border-box;
  padding:6px 8px;
  border-radius:10px;
  outline:none;
  color:#e8ded1;
  background:rgba(5,5,8,.54);
  border:1px solid rgba(255,255,255,.075);
  font-family:'Hind Siliguri',sans-serif;
  font-size:10px;
}

.msgon_frequency_roles{
  max-height:130px;
  overflow-y:auto;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:3px 8px;
  padding:7px;
  border-radius:11px;
  background:rgba(0,0,0,.14);
  scrollbar-width:thin;
}

.msgon_frequency_role_option{
  min-width:0;
  display:flex;
  align-items:center;
  gap:5px;
  color:rgba(232,222,209,.70);
  font-size:9px;
}

.msgon_frequency_role_option input{
  margin:0;
  accent-color:#8ed7d0;
}

.msgon_frequency_manage_form > button{
  grid-column:1/-1;
  justify-self:end;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border:0;
  border-radius:11px;
  cursor:pointer;
  color:#eafffb;
  background:rgba(142,215,208,.15);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.07em;
}

.msgon_frequency_delete_channel{
  display:flex;
  justify-content:flex-end;
  padding:0 10px 10px;
}

.msgon_frequency_delete_channel button{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 9px;
  border:0;
  border-radius:10px;
  cursor:pointer;
  color:#ffd9e1;
  background:rgba(160,55,70,.24);
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.msgon_frequency_manage_list{
  overflow:visible;
  padding-top:0;
}

.msgon_frequency_manage_view{
  display:block;
  overflow-y:auto;
  scrollbar-width:thin;
}

.msgon_frequency_manage_view .msgon_frequency_simple_head{
  position:sticky;
  top:0;
  z-index:4;
  backdrop-filter:blur(10px);
}

.msgon_frequency_error_view{
  min-height:100%;
  display:grid;
  place-items:center;
}

@media (max-width:900px){
  .msgon_home_shell{
    grid-template-columns:220px minmax(0,1fr);
  }

  .msgon_page.no_identity .msgon_home_main .msgon_start_grid{
    grid-template-columns:1fr;
  }
}


.msgon_form_caption small{
  color:rgba(255,255,255,.38);
  font-weight:400;
  letter-spacing:0;
  text-transform:none;
}

.msgon_form_caption{
  color:rgba(255,255,255,.58);
  font-family:'Outfit',sans-serif;
  font-size:9px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

/* ============================================================
   Carica cronologia precedente
   ============================================================ */
.msgon_load_older_wrap{
  display:flex;
  justify-content:center;
  padding:10px 8px 14px;
}

.msgon_load_older_btn{
  width:auto;
  min-width:190px;
  min-height:32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:7px 14px;
  border:1px solid rgba(246,114,183,.18);
  border-radius:999px;
  outline:0;
  cursor:pointer;
  color:rgba(255,245,250,.86);
  background:
    linear-gradient(135deg, rgba(246,114,183,.13), rgba(142,215,208,.075)),
    rgba(18,14,17,.74);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 7px 18px rgba(0,0,0,.16),
    0 0 0 1px rgba(142,215,208,.025);
  font-family:'Outfit',sans-serif;
  font-size:9px;
  font-weight:700;
  line-height:1;
  letter-spacing:.085em;
  text-transform:uppercase;
  transition:
    color .18s ease,
    background .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    transform .18s ease,
    opacity .18s ease;
  appearance:none;
  -webkit-appearance:none;
}

.msgon_load_older_btn i{
  color:#8ed7d0;
  font-size:10px;
  line-height:1;
  transition:color .18s ease, transform .18s ease;
}

.msgon_load_older_btn:hover:not(:disabled){
  color:#fff;
  border-color:rgba(246,114,183,.34);
  background:
    linear-gradient(135deg, rgba(246,114,183,.22), rgba(142,215,208,.12)),
    rgba(18,14,17,.84);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 9px 22px rgba(0,0,0,.20),
    0 0 16px rgba(246,114,183,.08);
  transform:translateY(-1px);
}

.msgon_load_older_btn:hover:not(:disabled) i{
  color:#bffcf2;
}

.msgon_load_older_btn:active:not(:disabled){
  transform:translateY(0);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 4px 11px rgba(0,0,0,.18);
}

.msgon_load_older_btn:disabled{
  cursor:default;
  opacity:.64;
  color:rgba(232,222,209,.64);
  border-color:rgba(142,215,208,.14);
  background:
    linear-gradient(135deg, rgba(142,215,208,.08), rgba(246,114,183,.06)),
    rgba(18,14,17,.66);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}

.msgon_load_older_btn:disabled i{
  color:rgba(142,215,208,.72);
}

/* ============================================================
   Profilo TalkBack / anteprima miniavatar
   ============================================================ */

.msgon_profile_avatar_field{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  align-items:center;
  gap:11px;
  margin-top:2px;
}

.msgon_profile_avatar_preview{
  position:relative;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:13px;
  color:#f3dbe7;
  background:linear-gradient(135deg, rgba(246,114,183,.14), rgba(48,83,111,.22));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 8px 18px rgba(0,0,0,.15);
}

.msgon_profile_avatar_preview img{
  position:absolute;
  inset:0;
  z-index:2;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.msgon_profile_avatar_preview i{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  font-family:'Neucha', sans-serif;
  font-size:20px;
  font-style:normal;
  color:#f3dbe7;
}

.msgon_profile_avatar_input{
  min-width:0;
}

.msgon_profile_avatar_input input[type='text']{
  width:100%;
  box-sizing:border-box;
}

.msgon_profile_avatar_input > small{
  display:block;
  margin-top:4px;
  color:rgba(232,222,209,.42);
  font-size:9px;
  line-height:1.2;
}

/* ============================================================
   Messaggi preferiti
   ============================================================ */
.msgon_bubble_head_meta{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
  min-width:0;
}

.msgon_bubble_head_meta > em{
  flex:0 0 auto;
}

.msgon_favorite_toggle{
  width:16px;
  height:16px;
  min-width:16px;
  min-height:16px;
  display:grid;
  place-items:center;
  padding:0;
  margin:0;
  border:0;
  border-radius:6px;
  outline:0;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  color:rgba(232,222,209,.38);
  background:transparent;
  box-shadow:none;
  font-size:9px;
  line-height:1;
  transition:color .16s ease, background .16s ease, transform .16s ease, opacity .16s ease;
}

.msgon_favorite_toggle:hover{
  color:#ffe3a1;
  background:rgba(255,211,111,.09);
  transform:translateY(-1px);
}

.msgon_favorite_toggle.active{
  color:#ffd36f;
  text-shadow:0 0 8px rgba(255,211,111,.32);
}

.msgon_favorite_toggle.loading{
  pointer-events:none;
  opacity:.45;
}

.msgon_favorites_menu_link{
  position:relative;
}

.msgon_favorites_menu_link > i{
  color:#ffd36f;
}

.msgon_favorites_count{
  min-width:16px;
  height:16px;
  padding:0 4px;
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  color:#26180a;
  background:#ffd36f;
  box-shadow:0 0 9px rgba(255,211,111,.18);
  font-size:8px;
  font-weight:800;
  line-height:1;
  letter-spacing:0;
}

.msgon_favorites_count.empty{
  display:none;
}

.msgon_favorites_view{
  overflow:hidden !important;
}

.msgon_favorites_panel{
  height:100%;
  min-height:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  overflow:hidden;
}

.msgon_favorites_head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}

.msgon_favorites_head > div{
  min-width:0;
}

.msgon_favorites_head h2{
  display:flex;
  align-items:center;
  gap:8px;
}

.msgon_favorites_head h2 i{
  color:#ffd36f;
  font-size:16px;
  text-shadow:0 0 10px rgba(255,211,111,.22);
}

.msgon_favorites_total{
  min-width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:13px;
  color:#ffe9ad;
  background:linear-gradient(135deg, rgba(255,211,111,.13), rgba(246,114,183,.08));
  border:1px solid rgba(255,211,111,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
  font-family:'Space Grotesk',sans-serif;
  font-size:11px;
  font-weight:700;
}

.msgon_favorites_list{
  min-height:0;
  overflow-y:auto;
  display:grid;
  align-content:start;
  gap:8px;
  padding:2px 4px 2px 0;
  scrollbar-width:thin;
}

.msgon_favorite_card{
  position:relative;
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) 28px;
  align-items:stretch;
  border-radius:17px;
  overflow:hidden;
  background:linear-gradient(135deg, rgba(255,255,255,.045), rgba(255,211,111,.025));
  border:1px solid rgba(255,255,255,.065);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035), 0 8px 18px rgba(0,0,0,.10);
  transition:border-color .16s ease, background .16s ease, transform .16s ease;
}

.msgon_favorite_card:hover{
  transform:translateY(-1px);
  border-color:rgba(255,211,111,.20);
  background:linear-gradient(135deg, rgba(255,211,111,.07), rgba(246,114,183,.045));
}

.msgon_favorite_card_link{
  min-width:0;
  display:grid;
  grid-template-columns:30px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  padding:9px 8px 9px 10px;
  color:inherit !important;
  text-decoration:none !important;
}

.msgon_favorite_card_icon{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:#ffd36f;
  background:rgba(255,211,111,.085);
  box-shadow:inset 0 0 0 1px rgba(255,211,111,.11);
  font-size:11px;
}

.msgon_favorite_card_body{
  min-width:0;
  display:grid;
  gap:2px;
}

.msgon_favorite_card_top{
  min-width:0;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
}

.msgon_favorite_card_top b{
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  color:#f6e6ee;
  font-family:'Outfit',sans-serif;
  font-size:11px;
  font-weight:700;
}

.msgon_favorite_card_top em{
  flex:0 0 auto;
  color:rgba(232,222,209,.42);
  font-size:8px;
  font-style:normal;
  white-space:nowrap;
}

.msgon_favorite_card_sender{
  color:#e3bfcf;
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.msgon_favorite_card_preview{
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  color:rgba(232,222,209,.72);
  font-size:10px;
  line-height:1.3;
}

.msgon_favorite_card_body small{
  color:rgba(232,222,209,.34);
  font-size:8px;
}

.msgon_favorite_card_arrow{
  color:rgba(255,211,111,.42);
  font-size:9px;
}

.msgon_favorite_card_remove{
  align-self:center;
  justify-self:center;
  width:22px;
  height:22px;
  min-width:22px;
  min-height:22px;
  border-radius:9px;
  background:rgba(255,211,111,.055);
}

.msgon_favorite_card_remove:hover{
  background:rgba(160,55,70,.20);
  color:#ffb7c3;
  text-shadow:none;
}

.msgon_favorites_empty{
  align-self:center;
  justify-self:center;
  width:min(360px,90%);
  padding:28px 24px;
  display:grid;
  justify-items:center;
  gap:7px;
  text-align:center;
  border-radius:22px;
  color:rgba(232,222,209,.62);
  background:rgba(255,255,255,.028);
  border:1px dashed rgba(255,211,111,.16);
}

.msgon_favorites_empty > i{
  font-size:27px;
  color:rgba(255,211,111,.58);
}

.msgon_favorites_empty b{
  color:#f2e4ea;
  font-family:'Outfit',sans-serif;
  font-size:12px;
}

.msgon_favorites_empty span{
  max-width:280px;
  font-size:10px;
  line-height:1.4;
}

.msgon_bubble.msgon_favorite_focus .msgon_bubble_body{
  animation:msgon_favorite_focus_pulse 2.5s ease;
}

@keyframes msgon_favorite_focus_pulse{
  0%{
    border-color:rgba(255,211,111,.72);
    box-shadow:0 0 0 2px rgba(255,211,111,.14), 0 0 24px rgba(255,211,111,.17);
  }
  45%{
    border-color:rgba(255,211,111,.42);
    box-shadow:0 0 0 1px rgba(255,211,111,.08), 0 0 16px rgba(255,211,111,.10);
  }
  100%{
    box-shadow:0 10px 18px rgba(0,0,0,.18);
  }
}

/* ============================================================
   Preferiti della singola conversazione
   ============================================================ */

.msgon_conversation_favorites_slot{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
}

.msgon_conversation_favorites_manage{
  position:relative;
  z-index:150;
}

.msgon_header_actions .msgon_conversation_favorites_manage > summary,
.msgon_conversation_favorites_btn{
  position:relative;
  width:34px;
  height:34px;
  padding:0;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:rgba(232,222,209,.58);
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
  transition:background .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.msgon_header_actions .msgon_conversation_favorites_manage > summary:hover,
.msgon_conversation_favorites_manage[open] > summary{
  color:#ffd36a;
  background:linear-gradient(135deg, rgba(255,195,86,.15), rgba(246,114,183,.10));
  box-shadow:
    inset 0 0 0 1px rgba(255,211,106,.18),
    0 0 14px rgba(255,199,93,.08);
}

/* Se la chat ha preferiti, la stellina si riempie ma non sembra una notifica. */
.msgon_conversation_favorites_btn.active{
  color:#e7bd61;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 0 0 1px rgba(255,211,106,.10);
}

.msgon_conversation_favorites_btn > i{
  font-size:12px;
  line-height:1;
}

.msgon_manage.msgon_conversation_favorites_manage > .msgon_conversation_favorites_popover{
  position:absolute;
  top:42px;
  right:0;
  z-index:9999;
  width:380px;
  max-width:min(380px, calc(100vw - 32px));
  padding:0;
  display:block;
  overflow:hidden;
  border-radius:20px;
  background:rgba(17,14,17,.985);
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 20px 52px rgba(0,0,0,.52), 0 0 24px rgba(246,114,183,.07);
  backdrop-filter:blur(14px);
}

.msgon_conversation_favorites_head{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 11px;
  box-sizing:border-box;
  border-bottom:1px solid rgba(255,255,255,.065);
  background:linear-gradient(135deg, rgba(255,205,103,.075), rgba(246,114,183,.055));
}

.msgon_conversation_favorites_head > span{
  min-width:0;
  display:flex;
  align-items:center;
  gap:7px;
}

.msgon_conversation_favorites_head i{
  color:#ffd36a;
  font-size:11px;
}

.msgon_conversation_favorites_head b{
  color:#f7e9ef;
  font-family:'Outfit',sans-serif;
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.msgon_conversation_favorites_head em{
  flex:0 0 auto;
  padding:0;
  color:rgba(255,231,168,.58);
  background:none;
  font-family:'Outfit',sans-serif;
  font-size:8px;
  font-style:normal;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  box-shadow:none;
}

.msgon_conversation_favorites_list{
  max-height:330px;
  overflow-y:auto;
  padding:7px;
  display:grid;
  gap:5px;
  scrollbar-width:thin;
}

/*
 * Questi link vivono dentro .msgon_header_actions, che assegna 34x34 a tutti
 * gli <a> dell'header. Qui azzeriamo esplicitamente quelle dimensioni: senza
 * questo override ogni preferito viene compresso in un quadratino.
 */
.msgon_header_actions a.msgon_conversation_favorite_jump,
.msgon_conversation_favorite_jump{
  width:100%;
  height:auto;
  min-width:0;
  min-height:54px;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 12px;
  align-items:center;
  justify-items:stretch;
  place-items:initial;
  gap:8px;
  padding:8px 9px;
  border-radius:13px;
  color:#e8ded1 !important;
  text-decoration:none !important;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.045);
  transition:background .15s ease, border-color .15s ease, transform .15s ease;
  text-transform:none !important;
  letter-spacing:normal;
}

.msgon_conversation_favorite_jump:hover{
  transform:translateY(-1px);
  background:linear-gradient(135deg, rgba(255,211,106,.085), rgba(246,114,183,.06));
  border-color:rgba(255,211,106,.14);
}

.msgon_conversation_favorite_jump.loading{
  opacity:.52;
  pointer-events:none;
}

.msgon_conversation_favorite_star{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:9px;
  color:#ffd36a;
  background:rgba(255,211,106,.075);
  box-shadow:inset 0 0 0 1px rgba(255,211,106,.08);
}

.msgon_conversation_favorite_star i{
  font-size:9px;
}

.msgon_conversation_favorite_text{
  min-width:0;
  display:grid;
  gap:2px;
}

.msgon_conversation_favorite_meta{
  min-width:0;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:8px;
}

.msgon_conversation_favorite_meta b{
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  color:#f3dbe7;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.msgon_conversation_favorite_meta em{
  flex:0 0 auto;
  color:rgba(232,222,209,.40);
  font-size:8px;
  font-style:normal;
  white-space:nowrap;
}

.msgon_conversation_favorite_preview{
  min-width:0;
  overflow:hidden;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  white-space:normal;
  color:rgba(232,222,209,.72);
  font-size:10px;
  line-height:1.28;
  text-transform:none !important;
  letter-spacing:normal !important;
}

.msgon_conversation_favorite_arrow{
  color:rgba(232,222,209,.25);
  font-size:8px;
}

.msgon_conversation_favorite_jump:hover .msgon_conversation_favorite_arrow{
  color:#ffd36a;
}

.msgon_conversation_favorites_empty{
  min-height:105px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:7px;
  padding:16px;
  box-sizing:border-box;
  text-align:center;
  color:rgba(232,222,209,.52);
}

.msgon_conversation_favorites_empty > i{
  color:rgba(255,211,106,.52);
  font-size:20px;
}

.msgon_conversation_favorites_empty span{
  max-width:235px;
  font-size:10px;
  line-height:1.35;
}

.msgon_header_actions a.msgon_conversation_favorites_all,
.msgon_conversation_favorites_all{
  width:100%;
  height:auto;
  min-height:32px;
  box-sizing:border-box;
  display:flex;
  place-items:initial;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px 10px;
  border-radius:0;
  border-top:1px solid rgba(255,255,255,.055);
  color:rgba(232,222,209,.65) !important;
  text-decoration:none !important;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:8px;
  background:rgba(255,255,255,.02);
  box-shadow:none;
}

.msgon_conversation_favorites_all:hover{
  color:#ffe8a8 !important;
  background:rgba(255,211,106,.055);
}

@media (max-width:760px){
  .msgon_manage.msgon_conversation_favorites_manage > .msgon_conversation_favorites_popover{
    right:-48px;
    width:min(340px, calc(100vw - 24px));
  }
}


/* ============================================================
   TalkBack — simulazione telefono acceso / spento
   ============================================================ */
.msgon_identity_device{
  position:relative;
  min-width:0;
}

.msgon_identity_device .msgon_identity_card.bigcard{
  width:100%;
  box-sizing:border-box;
  padding-right:48px;
}

.msgon_phone_power_form{
  position:absolute;
  right:11px;
  top:50%;
  bottom:auto;
  z-index:8;
  margin:0;
  transform:translateY(-50%);
}

.msgon_phone_power_btn{
  width:29px;
  height:29px;
  min-width:29px;
  padding:0;
  display:grid;
  place-items:center;
  border-radius:11px;
  border:1px solid rgba(255,255,255,.09);
  cursor:pointer;
  font-size:11px;
  line-height:1;
  transition:background .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.msgon_phone_power_btn.on{
  color:#bffcf2;
  background:linear-gradient(135deg, rgba(142,215,208,.16), rgba(48,83,111,.24));
  border-color:rgba(142,215,208,.22);
  box-shadow:inset 0 0 0 1px rgba(142,215,208,.04), 0 0 12px rgba(142,215,208,.06);
}

.msgon_phone_power_btn.off{
  color:#ffc4dc;
  background:linear-gradient(135deg, rgba(246,114,183,.18), rgba(110,45,69,.24));
  border-color:rgba(246,114,183,.24);
  box-shadow:inset 0 0 0 1px rgba(246,114,183,.04), 0 0 12px rgba(246,114,183,.08);
}

.msgon_phone_power_btn:hover{
  transform:scale(1.04);
  color:#fff;
  border-color:rgba(255,255,255,.22);
  box-shadow:0 8px 18px rgba(0,0,0,.22), 0 0 14px rgba(246,114,183,.10);
}

.msgon_identity_device.is_powered_off .msgon_identity_card.bigcard{
  cursor:default;
  opacity:.64;
  filter:saturate(.55);
  border-color:rgba(255,255,255,.075);
  background:linear-gradient(135deg, rgba(255,255,255,.045), rgba(255,255,255,.018)) !important;
}

.msgon_page.no_identity .msgon_identity_device.is_powered_off .msgon_identity_card.bigcard:hover{
  opacity:.64;
  filter:saturate(.55);
  transform:none;
  border-color:rgba(255,255,255,.075);
  background:linear-gradient(135deg, rgba(255,255,255,.045), rgba(255,255,255,.018)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 10px 22px rgba(0,0,0,.14);
}

.msgon_phone_state_label{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin-top:4px;
  color:rgba(246,165,208,.72);
  font-family:'Outfit',sans-serif;
  font-size:8px;
  font-weight:600;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.msgon_phone_state_label i{
  font-size:7px;
}

/* ============================================================
   Fix layout card identità: badge piccolo sopra il power,
   sulla stessa asse verticale del pulsante.
   ============================================================ */
.msgon_page.no_identity .msgon_identity_device .msgon_identity_unread{
  top:8px;
  right:auto;
  left:calc(100% - 25.5px);
  transform:translateX(-50%);
  z-index:10;

  min-width:15px;
  width:auto;
  height:15px;
  padding:0 4px;
  box-sizing:border-box;
  border-radius:999px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  font-size:7px;
  line-height:15px;
  font-weight:700;
  letter-spacing:0;

  box-shadow:0 0 7px rgba(246,114,183,.32);
}

.msgon_page.no_identity .msgon_identity_device .msgon_identity_card.bigcard{
  padding-right:58px;
}

/* Il power resta centrato verticalmente sul lato destro. */
.msgon_page.no_identity .msgon_identity_device .msgon_phone_power_form{
  right:11px;
  top:50%;
  bottom:auto;
  transform:translateY(-50%);
}

/* ============================================================
   Messaggio non ancora consegnato
   ============================================================ */
.msgon_readcheck.pending{
  color:rgba(232,222,209,.38);
  text-shadow:none;
}
.msgon_readcheck.pending i{
  font-size:9px;
  opacity:.88;
}


/* ============================================================
   Disattivazione definitiva numero TalkBack
   ============================================================ */
.msgon_content_panel .msgon_identity_deactivate_box{
  width:100%;
  margin:20px 0 0;
  padding:14px 16px;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  border:1px solid rgba(255,126,156,.18);
  border-radius:16px;
  background:
    linear-gradient(135deg, rgba(111,37,58,.20), rgba(45,34,49,.34));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 8px 20px rgba(0,0,0,.08);
}

.msgon_content_panel .msgon_identity_deactivate_text{
  min-width:0;
  display:grid;
  grid-template-columns:26px minmax(0,1fr);
  align-items:start;
  gap:10px;
}

.msgon_content_panel .msgon_identity_deactivate_text > i{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  margin:0;
  border-radius:9px;
  color:#ff9fb3;
  background:rgba(255,120,150,.08);
  border:1px solid rgba(255,120,150,.11);
  font-size:11px;
  line-height:1;
}

.msgon_content_panel .msgon_identity_deactivate_text > div{
  min-width:0;
}

.msgon_content_panel .msgon_identity_deactivate_text b{
  display:block;
  margin:0;
  color:#f6dde4;
  font-family:'Outfit',sans-serif;
  font-size:11px;
  font-weight:700;
  line-height:1.25;
  letter-spacing:.01em;
  text-transform:none;
}

.msgon_content_panel .msgon_identity_deactivate_text span{
  display:block;
  margin-top:4px;
  max-width:700px;
  color:rgba(232,222,209,.58);
  font-family:'Outfit',sans-serif;
  font-size:9px;
  font-weight:400;
  line-height:1.45;
  letter-spacing:0;
  text-transform:none;
}

.msgon_content_panel form.msgon_identity_deactivate_form{
  width:auto;
  margin:0;
  padding:0;
  display:block;
  flex:0 0 auto;
}

.msgon_content_panel form.msgon_identity_deactivate_form button[type="submit"]{
  width:auto;
  min-width:138px;
  min-height:34px;
  margin:0;
  padding:7px 12px;
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid rgba(255,126,156,.20);
  border-radius:11px;
  cursor:pointer;
  color:#f7ced8;
  background:rgba(120,42,63,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  font-family:'Outfit',sans-serif;
  font-size:8px;
  font-weight:700;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}

.msgon_content_panel form.msgon_identity_deactivate_form button[type="submit"] i{
  font-size:10px;
  line-height:1;
}

.msgon_content_panel form.msgon_identity_deactivate_form button[type="submit"]:hover{
  color:#fff;
  background:rgba(145,48,74,.40);
  border-color:rgba(255,126,156,.34);
  transform:translateY(-1px);
}

.msgon_content_panel form.msgon_identity_deactivate_form button[type="submit"]:active{
  transform:translateY(0);
}

@media (max-width:760px){
  .msgon_content_panel .msgon_identity_deactivate_box{
    grid-template-columns:1fr;
    align-items:stretch;
    gap:12px;
  }

  .msgon_content_panel form.msgon_identity_deactivate_form,
  .msgon_content_panel form.msgon_identity_deactivate_form button[type="submit"]{
    width:100%;
  }
}

/* Indicatore discreto nelle chat storiche di un numero disattivato. */
.msgon_inactive_inline{
  flex:0 0 auto;
  display:inline-grid;
  place-items:center;
  width:13px;
  height:13px;
  color:rgba(255,151,170,.78);
  font-size:8px;
  line-height:1;
  text-shadow:0 0 6px rgba(255,120,150,.18);
}

/* Avviso read-only distinto dal blocco utente. */
.msgon_block_notice.inactive_number{
  color:#eedbe1;
  background:rgba(85,47,58,.78);
  border-color:rgba(255,151,170,.14);
}

.msgon_block_notice.inactive_number i{
  color:#eaa0b0;
}

@media (max-width:760px){
  .msgon_identity_deactivate_box{
    align-items:stretch;
    flex-direction:column;
  }

  .msgon_identity_deactivate_form button{
    width:100%;
  }
}

/* ============================================================
   Stabilità scroll chat durante gli aggiornamenti AJAX
   ============================================================ */
.msgon_chat_window,
.msgon_messages_inner{
  overflow-anchor:none;
}
