.telegram-family,.telegram-account{--telegram-muted:#5c6879;--telegram-accent:#0876ac;min-width:0;overflow-wrap:anywhere}
:root[data-theme=dark] .telegram-family,:root[data-theme=dark] .telegram-account{--telegram-muted:#a0aabd;--telegram-accent:#6ac9f6}
.telegram-family{margin:20px 0 24px;border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden;box-shadow:var(--shadow)}
.telegram-heading{display:flex;gap:11px;align-items:center;padding:17px 20px;border-bottom:1px solid var(--line);background:var(--surface-soft)}
.telegram-symbol{width:38px;height:38px;flex:0 0 38px;border-radius:11px;display:grid;place-items:center;font-size:25px;font-weight:700;background:#0876ac;color:#fff}
.telegram-heading h2{font-size:16px;line-height:1.5}.telegram-heading p{font-size:11px;color:var(--telegram-muted);margin-top:2px}
.telegram-update-label{margin-left:auto;font-size:10px;color:var(--telegram-muted);white-space:nowrap}
.telegram-chat{height:370px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:5px 20px;scroll-behavior:auto}
.telegram-message{padding:12px 0;border-bottom:1px solid var(--line)}.telegram-message:last-child{border-bottom:0}
.telegram-message-meta{display:flex;align-items:baseline;gap:10px;min-width:0;margin-bottom:4px}.telegram-message-meta strong{font-size:12px;font-weight:700;color:var(--telegram-accent);min-width:0;overflow-wrap:anywhere}.telegram-message-meta time{font-size:10px;color:var(--telegram-muted);flex-shrink:0;margin-left:auto}
.telegram-message>p{font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text)}
.telegram-empty{display:flex;align-items:center;justify-content:center;min-height:100%;padding:20px;color:var(--telegram-muted);text-align:center;font-size:12px}
.telegram-feedback{font-size:12px;line-height:1.7;color:var(--telegram-muted);margin-top:12px;white-space:pre-wrap}.telegram-feedback:empty{display:none}.telegram-family>.telegram-feedback{padding:0 20px}
.telegram-links{display:flex;flex-wrap:wrap;gap:9px;padding:15px 20px 0;border-top:1px solid var(--line)}.telegram-links>.btn{flex:1;min-width:0}
.telegram-join{background:#0876ac;border-color:#0876ac;color:#fff}.telegram-join:hover{background:#06618e;border-color:#06618e}
.telegram-family .telegram-disclosure{padding:12px 20px 16px;margin:0}.telegram-disclosure{font-size:11px!important;line-height:1.85!important;color:var(--telegram-muted)!important;margin:12px 0 0!important}.telegram-disclosure a{color:var(--telegram-accent);text-decoration:underline;text-underline-offset:3px}
.telegram-account-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.telegram-eyebrow{display:block;font-size:10px;letter-spacing:.12em;font-weight:700;color:var(--telegram-accent);margin-bottom:4px}.telegram-account-heading h2{font-size:18px}
.telegram-connection{font-size:11px;border:1px solid var(--line);border-radius:20px;padding:5px 11px;white-space:nowrap;background:var(--surface-soft);font-weight:700}
.telegram-connection[data-state=linked]{color:#087448;background:#edf9f2;border-color:#b8dfc9}.telegram-connection[data-state=pending]{color:#855b08;background:#fff7e3;border-color:#ebd49b}
.telegram-next-step{padding:12px 14px;margin:16px 0;font-size:12px;line-height:1.8;border:1px solid var(--line);border-radius:9px;background:var(--surface-soft);color:var(--text)}
:root[data-theme=dark] .telegram-connection[data-state=linked]{color:#83e3b4;background:#17362c;border-color:#315b49}:root[data-theme=dark] .telegram-connection[data-state=pending]{color:#f6d48a;background:#3a301c;border-color:#685536}
.telegram-account-state{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.telegram-account-state>div{padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface-soft);min-width:0}.telegram-account-state dt{font-size:11px;color:var(--telegram-muted);margin-bottom:4px}.telegram-account-state dd{margin:0;font-size:13px;font-weight:600;overflow-wrap:anywhere}.telegram-account-state small{display:block;font-size:10px;font-weight:400;color:var(--telegram-muted);margin-top:3px}.telegram-account-state small:empty{display:none}
.telegram-account-actions{display:flex;gap:8px;flex-wrap:wrap}.telegram-account-actions>.btn{margin:0!important}.telegram-account [hidden]{display:none!important}.telegram-start{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.telegram-start>p{font-size:12px;color:var(--telegram-muted);margin-top:10px;line-height:1.8}.telegram-start>small{display:block;font-size:11px;margin-top:6px;color:var(--telegram-muted)}
.telegram-family :focus-visible,.telegram-account :focus-visible{outline:3px solid var(--telegram-accent);outline-offset:3px}.telegram-account button:disabled{cursor:default}
@media(max-width:560px){.telegram-heading{padding:15px;gap:9px}.telegram-heading h2{font-size:15px}.telegram-update-label{font-size:9px}.telegram-chat{padding:5px 15px}.telegram-links{padding:14px 15px 0;gap:7px}.telegram-links>.btn{font-size:12px;padding:9px 10px}.telegram-family .telegram-disclosure{padding:11px 15px 15px}.telegram-family>.telegram-feedback{padding:0 15px}.telegram-account-state{gap:8px}.telegram-account-state>div{padding:11px}.telegram-account-actions>.btn{flex:1 1 auto;font-size:12px;padding:9px 11px}.telegram-start{padding:13px}.telegram-start>.btn{width:100%;white-space:normal}}
@media(max-width:360px){.telegram-update-label{display:none}.telegram-account-state{grid-template-columns:1fr}.telegram-links{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.telegram-family *,.telegram-account *{scroll-behavior:auto;transition:none!important}}

.rightbar>.telegram-family{margin:0;grid-column:1/-1}.rightbar .telegram-heading{padding:15px 14px}.rightbar .telegram-heading>div{min-width:0}.rightbar .telegram-heading h2{font-size:14px}.rightbar .telegram-symbol{width:32px;height:32px;flex-basis:32px;font-size:22px}.rightbar .telegram-update-label{display:none}.rightbar .telegram-chat{padding:5px 14px}.rightbar .telegram-links{flex-direction:column;padding:14px 14px 0}.rightbar .telegram-family .telegram-disclosure{padding:12px 14px 15px}.rightbar .telegram-family>.telegram-feedback{padding:0 14px}
.telegram-approval{display:flex;flex-direction:column;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.telegram-approval h3{font-size:15px}.telegram-approval p,.telegram-approval small{font-size:12px;line-height:1.8;color:var(--telegram-muted)}.telegram-approval small{font-size:11px}.telegram-approval>.btn{margin:0!important;white-space:normal;text-align:center}
.telegram-events{display:grid;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.telegram-events h3{font-size:15px}.telegram-events>p,.telegram-events>small{font-size:12px;line-height:1.8;color:var(--telegram-muted)}.telegram-events>small{font-size:11px}.telegram-event-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.telegram-event-card{min-width:0;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.telegram-event-card>div{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.telegram-event-card strong{font-size:12px}.telegram-event-card [data-telegram-event-points]{font-size:15px;font-weight:800;color:var(--accent,#ed2547)}.telegram-event-card>small{display:block;margin:7px 0 12px;font-size:11px;color:var(--telegram-muted)}.telegram-event-card>.btn{width:100%;margin:0!important;padding:9px 10px;font-size:12px;white-space:normal;text-align:center}.telegram-events>.btn{margin:0!important;width:100%;white-space:normal}@media(max-width:560px){.telegram-event-cards{grid-template-columns:1fr}.telegram-event-card{padding:12px}}

/* Family-chat accents; account verification and approval keep their blue palette. */
.telegram-family{--telegram-accent:#bf2238;--telegram-family-tint:#fff0f2}
:root[data-theme=dark] .telegram-family{--telegram-accent:#ff8292;--telegram-family-tint:#30212b}
.telegram-family .telegram-heading{background:var(--telegram-family-tint)}
.telegram-family .telegram-symbol,.telegram-family .telegram-join{background:#c3263c;border-color:#c3263c;color:#fff}
.telegram-family .telegram-join:hover{background:#aa1c30;border-color:#aa1c30}
.telegram-family[hidden],.telegram-fab[hidden],.telegram-backdrop[hidden]{display:none!important}
.telegram-fab,.telegram-mobile-close,.telegram-backdrop{display:none}
@keyframes telegram-fab-glow{0%,100%{box-shadow:0 5px 20px #c3263c35,0 0 0 0 #c3263c16}50%{box-shadow:0 5px 24px #c3263c50,0 0 0 7px #c3263c05}}
@keyframes telegram-fab-dot-pulse{0%,100%{opacity:1}50%{opacity:.55}}
@media(max-width:760px){
 .rightbar>.telegram-family{display:none}
 .telegram-fab{--telegram-fab-label:#b71f35;display:flex;align-items:center;justify-content:center;position:fixed;right:16px;bottom:calc(88px + env(safe-area-inset-bottom));z-index:72;width:56px;height:56px;min-height:56px;padding:0;border:1px solid #c3263c;border-radius:50%;background:#c3263c;color:#fff;animation:telegram-fab-glow 3.2s ease-in-out infinite;isolation:isolate}
 .telegram-fab>svg{width:25px;height:25px}.telegram-fab-label{position:absolute;right:calc(100% + 9px);top:50%;transform:translateY(-50%);padding:5px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--telegram-fab-label);font-size:11px;font-weight:700;line-height:1.6;white-space:nowrap;box-shadow:var(--shadow);pointer-events:none}
 .telegram-fab-dot{position:absolute;right:2px;top:2px;width:10px;height:10px;border:2px solid var(--surface);border-radius:50%;background:#ffe3e8;animation:telegram-fab-dot-pulse 3.2s ease-in-out infinite}
 .telegram-fab:focus-visible{outline:3px solid var(--text);outline-offset:4px}.menu-open .telegram-fab{visibility:hidden;pointer-events:none}
 .telegram-backdrop{display:block;position:fixed;inset:0;z-index:70;background:#070b1480;backdrop-filter:blur(3px)}
 body.telegram-chat-open{overflow:hidden}
 .telegram-family.is-mobile-open{position:fixed;left:16px;right:16px;bottom:calc(88px + env(safe-area-inset-bottom));z-index:75;display:flex;flex-direction:column;width:auto;height:min(70vh,600px);height:min(70dvh,600px);max-height:min(70dvh,600px);margin:0;box-shadow:0 16px 60px #0005}
 .telegram-family.is-mobile-open>.telegram-heading,.telegram-family.is-mobile-open>.telegram-links,.telegram-family.is-mobile-open>.telegram-disclosure,.telegram-family.is-mobile-open>.telegram-feedback{flex-shrink:0}
 .telegram-family.is-mobile-open .telegram-heading{padding:13px 14px;gap:9px}.telegram-family.is-mobile-open .telegram-heading>div{min-width:0}.telegram-family.is-mobile-open .telegram-heading h2{font-size:15px}.telegram-family.is-mobile-open .telegram-update-label{display:none}
 .telegram-family.is-mobile-open .telegram-chat{flex:1 1 auto;min-height:0;height:auto;padding:5px 14px}
 .telegram-family.is-mobile-open .telegram-links{flex-direction:row;padding:12px 14px 0;gap:7px}.telegram-family.is-mobile-open .telegram-links>.btn{font-size:12px;padding:9px 8px;white-space:normal;text-align:center}
 .telegram-family.is-mobile-open .telegram-disclosure{padding:10px 14px 13px;font-size:10px!important;line-height:1.7!important}.telegram-family.is-mobile-open>.telegram-feedback{padding:0 14px;margin-top:8px}
 .telegram-family.is-mobile-open .telegram-mobile-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;margin-left:auto;padding:0;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--telegram-accent)}.telegram-mobile-close>svg{width:19px;height:19px}
 .telegram-chat-open .telegram-fab,.telegram-chat-open .telegram-fab-dot{animation:none}
 :root[data-theme=dark] .telegram-fab{--telegram-fab-label:#ff8292}
}
@media(prefers-reduced-motion:reduce){.telegram-fab,.telegram-fab *,.telegram-family,.telegram-family *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
