.notification-center { position:relative; }
.notification-bell { position:relative; width:39px; height:39px; color:var(--green); border:1px solid var(--line); background:#fff; }
.notification-count { position:absolute; top:-7px; right:-7px; min-width:18px; min-height:18px; padding:2px 4px; border-radius:12px; background:var(--green); color:#fff; font-size:10px; line-height:14px; }
.notification-panel { position:absolute; top:calc(100% + 9px); right:0; width:min(360px, calc(100vw - 28px)); z-index:30; box-shadow:0 16px 46px #172d2026; }
.notification-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:15px 16px; border-bottom:1px solid var(--line); }
.notification-list { max-height:min(62vh, 520px); overflow:auto; }
.notification-group h3 { padding:12px 15px 7px; font-size:12px; }
.notification-group + .notification-group { border-top:1px solid var(--line); }
.notification-row { display:grid; gap:4px; padding:9px 15px; color:var(--ink); text-decoration:none; font-size:12px; overflow-wrap:anywhere; }
.notification-row:hover { background:var(--sage); }
.notification-row small { font-size:11px; }
.notification-empty { padding:18px 16px; font-size:13px; color:var(--muted); }

.max-chat-layout { display:grid; grid-template-columns:minmax(170px, 265px) minmax(0, 1fr); gap:15px; margin-top:15px; }
.max-dialogs { overflow:auto; max-height:70vh; }
.max-dialogs h2 { padding:15px 17px; border-bottom:1px solid var(--line); }
.max-dialog { display:grid; grid-template-columns:minmax(0, 1fr) auto; gap:5px; align-items:center; color:var(--ink); font-size:13px; padding:11px 15px; text-decoration:none; border-bottom:1px solid var(--line); }
.max-dialog strong { overflow-wrap:anywhere; }
.max-dialog small { grid-column:1 / -1; }
.max-dialog.active, .max-dialog:hover { background:var(--sage); }
.max-thread-head { display:flex; align-items:center; justify-content:space-between; gap:10px; border-bottom:1px solid var(--line); padding:14px 16px; }
.max-thread-head h2 { overflow-wrap:anywhere; }
.max-thread-head small { display:block; margin-top:4px; }
.max-history { height:clamp(220px, 50vh, 560px); overflow:auto; padding:12px; background:#fafbf8; }
#max-older { text-align:center; padding-bottom:8px; }
.max-message { max-width:85%; width:fit-content; padding:8px 11px; margin:0 0 9px; border-radius:9px; background:white; border:1px solid var(--line); }
.max-message.outgoing { margin-left:auto; background:var(--sage); }
.max-message p, .max-rule p { white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; line-height:1.5; }
.max-message-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:5px 13px; font-size:11px; margin-bottom:5px; }
.max-message > small { display:block; margin-top:5px; font-size:10px; }
.max-message .max-send-error { color:var(--red); }
.max-attachments { padding-left:18px; font-size:12px; }
.max-compose { display:flex; align-items:flex-end; gap:10px; padding:13px; flex-wrap:wrap; }
.max-compose .field { flex:1 1 200px; }
.max-compose textarea { resize:vertical; }
.max-compose .error { margin:0; width:100%; order:2; }
.max-compose .error:empty { display:none; }
.max-rules-head { justify-content:space-between; margin-bottom:8px; }
.max-rule { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; padding:12px 0; border-top:1px solid var(--line); }
.max-rule > div:first-child { flex:1 1 250px; min-width:0; }
.max-rule small { display:block; margin:5px 0; overflow-wrap:anywhere; }
@media(max-width:720px) {
  .notification-panel { position:fixed; top:67px; right:12px; }
  .max-chat-layout { grid-template-columns:minmax(0, 1fr); }
  .max-dialogs { max-height:210px; }
  .max-thread-head { align-items:flex-start; flex-wrap:wrap; }
}
