*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Poppins,system-ui,Arial,Helvetica,sans-serif;background:#f8f9fa;color:#333}
.container{display:flex;min-height:100vh}
/* --- small helpers --- */
.dz-remove {
  color: #c00;
  font-weight: 700;
  margin-left: 4px;
}
.dz-remove:hover {
  color: #f33;
}

/* ===============================
   🔹 NOTIFICATION PANEL STRUCTURE (FIXED)
   =============================== */

/* ВАЖНО: скрий при hidden на елемента */
#notifyPanel[hidden],
.notify-panel[hidden] {
  display: none !important;
}
.chip-rejected {
    background: #3a0000;
    border: 1px solid #b30000;
    color: #ffb3b3 !important;
}

/* По подразбиране скрито; JS ще зададе display:block при отваряне */
.notify-panel {
  display: none;                 /* ✅ вместо display:flex */
  flex-direction: column;
  overscroll-behavior: contain;
  overflow: hidden;              /* няма външен скрол */
  max-height: 70vh;
}

/* Контейнер вътре */
.notify_container {
  display: flex;
  flex-direction: column;
  flex: 1;
  height: 100%;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

/* --- Sticky Tabs --- */
.notify_tabs {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  background: #fff;
  border-bottom: 1px solid #eee;
  padding: 8px 8px 10px;
}

/* --- Scrollable content --- */
.notify_scroll {
  flex: 1 1 auto;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  background: #fff;
  padding-bottom: 12px;
  transition: max-height 0.25s ease;
}

/* ✅ Автоматично изключва max-height, когато има малко известия */
.notify_scroll:has(.notify-empty),
.notify_scroll:has(.ticket_notify_item:nth-child(-n+3)) {
  max-height: none !important;
  overflow-y: visible !important;
}

/* --- Prevent page scroll when open --- */
body.modal-open {
  overflow: hidden !important;
}

/* ===============================
   🔹 TABS
   =============================== */
.btn_tab {
  background: transparent;
  border: none;
  font-weight: 600;
  color: #666;
  padding: 8px 14px;
  cursor: pointer;
  border-bottom: 2px solid transparent;
  border-radius: 6px 6px 0 0;
  transition: all .25s ease;
}
.btn_tab:hover {
  color: #333;
  background: rgba(0,0,0,0.03);
}
.btn_tab.active {
  color: #7b4df2;
  border-bottom-color: #7b4df2;
  background: rgba(123,77,242,0.05);
}
.btn_tab .tab_badge {
  display: inline-block;
  min-width: 18px;
  padding: 0 6px;
  margin-left: 6px;
  font-size: 12px;
  line-height: 18px;
  border-radius: 9px;
  background: #eee;
  color: #333;
  font-weight: 700;
}
.btn_tab.active .tab_badge {
  background: #7b4df2;
  color: #fff;
}

/* ===============================
   🔹 INDIVIDUAL NOTIFICATIONS
   =============================== */
.ticket_notify_item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid #eee;
  transition: background 0.25s ease, opacity 0.3s ease;
  background: #fff;
}
.ticket_notify_item:hover {
  background: rgba(0, 0, 0, 0.04);
}
.ticket_notify_item.fade-out {
  opacity: 0;
  transform: translateX(-10px);
}

/* --- Icon --- */
.ticket_notify_icon {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #f3f3f3;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #666;
  font-size: 16px;
  flex-shrink: 0;
}
.unread .ticket_notify_icon {
  background: #7b4df2;
  color: #fff;
}

/* --- Body --- */
.ticket_notify_body {
  flex: 1;
}
.ticket_notify_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4px;
}
.ticket_notify_title {
  font-weight: 600;
  font-size: 14px;
  color: #222;
}
.ticket_notify_date {
  font-size: 12px;
  color: #999;
}
.ticket_notify_text {
  font-size: 13px;
  color: #444;
  margin-bottom: 6px;
  line-height: 1.4;
  white-space: pre-line;
}
.ticket_notify_ref {
  font-size: 13px;
  color: #666;
  margin-bottom: 8px;
}

/* --- Reference line (#ID — subject) --- */
.ticket_notify_refline {
  margin: 4px 0 8px;
  padding: 6px 10px;
  background: #f7f6ff;
  border: 1px solid #ebe7ff;
  border-radius: 8px;
  font-size: 13px;
  color: #4a3fd6;
  font-weight: 600;
  line-height: 1.35;
  display: block;
  word-break: break-word;
}
.unread .ticket_notify_refline {
  background: #efeaff;
  border-color: #dfd6ff;
}

/* ===============================
   🔹 BUTTONS
   =============================== */
.ticket_notify_actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.btn.blue {
  background: linear-gradient(90deg, #7b4df2, #a673ff);
  color: #fff;
}
.btn.gray {
  background: #dcdcdc;
  color: #333;
}
.btn.red {
  background: #d9534f;
  color: #fff;
}

/* ===============================
   🔹 STATES
   =============================== */
.ticket_notify_item.unread {
  background: #fbf7ff;
  border-left: 3px solid #a673ff;
}
.ticket_notify_item.read {
  background: #f9f9f9;
}
.ticket_notify_item.archived {
  background: #f1f1f1;
  opacity: 0.85;
}

/* --- Empty box --- */
.notify-empty {
  text-align: center;
  padding: 30px 10px;
  color: #888;
  font-style: italic;
  font-size: 14px;
}

/* --- Fade animation when removing/archiving --- */
@keyframes fadeOut {
  from { opacity: 1; transform: translateX(0); }
  to   { opacity: 0; transform: translateX(-10px); }
}
.fade-out {
  animation: fadeOut 0.3s forwards;
}

/* ===============================
   🔹 LIGHT + DARK COMPATIBILITY
   =============================== */
body.dark .notify_container {
  background: #1e1e1e;
}
body.dark .notify_tabs {
  background: #1e1e1e;
  border-bottom-color: #333;
}
body.dark .ticket_notify_item {
  background: #2a2a2a;
  border-color: #333;
}
body.dark .ticket_notify_item.unread {
  background: #261b45;
  border-left-color: #7b4df2;
}
body.dark .ticket_notify_title { color: #fff; }
body.dark .ticket_notify_text { color: #ddd; }
body.dark .ticket_notify_date { color: #aaa; }
body.dark .ticket_notify_refline {
  background: #2f2755;
  border-color: #3a3270;
  color: #a88cff;
}
body.dark .btn_tab { color: #bbb; }
body.dark .btn_tab.active { color: #fff; border-bottom-color: #a673ff; }
body.dark .btn_tab:hover { background: rgba(255,255,255,0.05); color:#fff; }

/* ===============================
   🔹 LOGIN BUTTON (на формите)
   =============================== */
.login-button-wrap {
  text-align: left;
  margin-top: 12px;
}
.login-button {
  background: linear-gradient(135deg, #007bff, #00c3ff);
  color: #fff;
  font-weight: 600;
  font-size: 15px;
  border: none;
  border-radius: 10px;
  padding: 10px 28px;
  cursor: pointer;
  box-shadow: 0 3px 10px rgba(0, 123, 255, 0.35);
  transition: all 0.25s ease;
  display: inline-block;
}
.login-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(0, 123, 255, 0.45);
  background: linear-gradient(135deg, #0066ff, #00aaff);
}
.login-button:active {
  transform: translateY(0);
  box-shadow: 0 3px 8px rgba(0, 123, 255, 0.25);
}


/* --- reply card --- */
.reply-card{--rpad:14px;position:relative;border-radius:16px;padding:var(--rpad);background:linear-gradient(180deg,rgba(255,255,255,.65),rgba(255,255,255,.35));border:1px solid rgba(20,30,45,.08);box-shadow:0 10px 30px rgba(0,0,0,.08);backdrop-filter:blur(6px);transition:transform .18s ease,box-shadow .18s ease,border-color .18s;overflow:hidden;margin:14px 0}
.reply-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.12);border-color:rgba(20,30,45,.15)}
[data-theme=dark] .reply-card{background:linear-gradient(180deg,rgba(14,18,24,.85),rgba(14,18,24,.6));border-color:rgba(255,255,255,.06);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.reply-head{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;margin-bottom:10px;position:relative}
.reply-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.9);box-shadow:0 4px 12px rgba(0,0,0,.12)}
[data-theme=dark] .reply-avatar{border-color:rgba(255,255,255,.25)}
.reply-meta{display:flex;flex-direction:column;gap:2px;min-width:0}
.reply-username{font-weight:700;font-size:15px;letter-spacing:.2px;display:flex;align-items:center;gap:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reply-time .note{opacity:.75;font-size:12px}
.badge{padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;background:#eef2ff;color:#3949ab;border:1px solid #c7d2fe}
.badge-staff{background:#e8f5e9;color:#1b5e20;border-color:#c8e6c9}
[data-theme=dark] .badge{background:#1b2335;color:#9bb5ff;border-color:#2b3550}
[data-theme=dark] .badge-staff{background:#0f1f14;color:#7adf9a;border-color:#1d3324}
.reply-accent{width:10px;height:36px;border-radius:8px;background:linear-gradient(180deg,#7dd3fc,#a78bfa,#f0abfc);filter:saturate(1.1);box-shadow:inset 0 0 0 1px rgba(0,0,0,.05),0 4px 10px rgba(0,0,0,.1)}
[data-theme=dark] .reply-accent{background:linear-gradient(180deg,#22d3ee,#8b5cf6,#f472b6)}
.reply-body{font-size:15.5px;line-height:1.6;color:inherit}
.reply-body p{margin:8px 0}
.reply-body a{text-decoration:underline;text-underline-offset:2px}
.reply-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-size:13px;padding:2px 6px;border-radius:6px;border:1px solid rgba(0,0,0,.08);background:rgba(0,0,0,.04)}
.reply-body pre{background:rgba(0,0,0,.04);border:1px solid rgba(0,0,0,.08);padding:10px 12px;border-radius:10px;overflow:auto}
[data-theme=dark] .reply-body code,[data-theme=dark] .reply-body pre{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.08)}
.reply-body blockquote{margin:10px 0;padding:10px 12px 10px 14px;border-left:3px solid #90caf9;background:rgba(144,202,249,.12);border-radius:8px}
[data-theme=dark] .reply-body blockquote{border-left-color:#64b5f6;background:rgba(100,181,246,.1)}

/* --- attachments --- */
.attachments-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.attachments-row .thumb{border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:6px;background:rgba(255,255,255,.65)}
.attachments-row .thumb img{display:block;width:160px;height:110px;object-fit:cover;border-radius:6px}
.attachments-row .file .file-link{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:10px;border:1px solid rgba(0,0,0,.08);background:rgba(0,0,0,.03)}
[data-theme=dark] .attachments-row .file .file-link,[data-theme=dark] .attachments-row .thumb{border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.04)}

/* --- reactions --- */
.react-bar{display:flex;align-items:center;gap:8px;margin-top:10px}
.react-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #e5e7eb;background:#fff;padding:6px 10px;border-radius:999px;font-size:13px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.06);transition:transform .08s ease,box-shadow .12s ease,border-color .12s;will-change:transform}
.react-chip:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(0,0,0,.1)}
.react-chip:active{transform:scale(.96)}
.react-chip .emoji{font-size:16px;line-height:1}
.react-chip.is-mine{border-color:#1976d2;box-shadow:0 0 0 2px rgba(25,118,210,.18);background:linear-gradient(180deg,#fff,#f1f7ff)}
[data-theme=dark] .react-chip{border-color:#233041;background:#0f141a;box-shadow:0 2px 8px rgba(0,0,0,.28)}
[data-theme=dark] .react-chip.is-mine{border-color:#4ea1ff;box-shadow:0 0 0 2px rgba(78,161,255,.25);background:linear-gradient(180deg,#0f141a,#101820)}

/* --- tags / chips --- */
.tags-row{margin-top:6px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.tags-label{font-size:12px;color:#607d8b;margin-right:2px}
.tag-link{display:inline-block;padding:2px 8px;border-radius:9999px;background:#f1f1f1;font-size:12px;text-decoration:none;border:1px solid #e5e7eb}
.tag-link:hover{text-decoration:underline}
[data-theme=dark] .tag-link{background:#0f141a;border-color:#223040;color:#e1ecff}
.badge,.chip,.status-pill,.tag-link{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Color Emoji","Apple Color Emoji","Segoe UI Emoji",Arial,sans-serif}
.chip{padding:4px 10px;border-radius:9999px;font-size:13px;background:#f4f5f7;border:1px solid #e5e7eb;display:inline-flex;align-items:center;gap:6px;line-height:1.1}
.chip.status-open{background:#e6f4ea;border-color:#b7e1c0;color:#136f3a}
.chip.status-on-hold{background:#fff4e5;border-color:#ffd7ae;color:#9a5300}
.chip.status-closed{background:#f3e8ff;border-color:#d7c1ff;color:#6b21a8}
.chip.prio-critical{background:#ffccbc;border-color:#e64a19}
.chip.prio-high{background:#ffe0b2;border-color:#fb8c00}
.chip--danger{background:#fdecec;border:1px solid #f1b6b6;color:#b42318;font-weight:700}
.chip--blocked{background:#ffe8e6;border:1px solid #e57373;color:#b71c1c}
[data-theme=dark] .chip--blocked{background:#3b1111;border-color:#b34a4a;color:#ffb3b3}
.chip--suggesties{background:#fff7d6;border:1px solid #ffd24d;color:#5c4a00}
.pill--suggesties{background:#fff7d6;border:1px solid #ffd24d;color:#5c4a00}
[data-theme=dark] .chip--suggesties,[data-theme=dark] .pill--suggesties{background:#3a3200;border-color:#5c4a00;color:#ffe28a}

/* --- layout bits --- */
.ticket-card>div:last-child{display:flex;flex-direction:column;gap:6px;align-items:flex-end;min-width:88px}
.sidebar{width:240px;background:#212529;color:#fff;padding:20px;transform:translateX(0);transition:transform .25s ease-in-out}
.sidebar a{display:block;color:#fff;text-decoration:none;padding:10px 14px;border-radius:8px;margin-bottom:10px;transition:background .2s}
.sidebar a:hover{background:#343a40}
.loginbox .pwrow{display:flex;gap:8px;align-items:center}
.loginbox .pwrow .box_input{flex:1}
.turnstile-row{display:flex;align-items:center;justify-content:flex-end;gap:12px}

/* --- emoji picker --- */
.emoji-panel{position:fixed;z-index:999999;width:280px;max-height:240px;overflow:auto;background:#fff;border:1px solid #d0d7de;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.18);padding:8px}
[data-theme=dark] .emoji-panel{background:#10161d;border-color:#243447}
.emoji-panel .emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}
@media (max-width:640px){.emoji-panel{width:220px}.emoji-panel .emoji-grid{grid-template-columns:repeat(6,1fr)}}
.emoji-btn{font-size:20px;line-height:1;padding:6px;border:0;background:0 0;cursor:pointer;border-radius:8px}
.emoji-btn:hover{background:rgba(0,0,0,.06)}
[data-theme=dark] .emoji-btn:hover{background:rgba(255,255,255,.06)}

/* --- main / topbar --- */
.main{flex:1;padding:22px;background:#fff}
.topbar{display:flex;align-items:center;justify-content:space-between;background:#212529;padding:10px 14px;color:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(255,255,255,.06)}
.topbar .menu-toggle{background:#e83e8c;color:#fff;border:none;padding:8px 12px;border-radius:8px;cursor:pointer;font-weight:600}
.topbar-right{margin-left:auto;display:flex;align-items:center;gap:10px}
.hi_user{font-weight:600;font-size:.95rem;color:#e9ecef;max-width:38vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.avatar_menu.glob_av,.userbox-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid #fff;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.2)}

/* --- docu blocks --- */
.docu_box{background:#fff;border-radius:12px;box-shadow:0 10px 20px rgba(0,0,0,.08);padding:20px;margin-bottom:20px;border:1px solid #eee}
.docu_head{font-size:1.2rem;font-weight:700;margin-bottom:10px;color:#495057}
.docu_head--ticket{font-size:1rem;line-height:1.3;word-break:break-word}
.docu_title{font-size:1rem;font-weight:600;margin-bottom:6px;color:#212529}
.docu_description{font-size:.95rem;margin-bottom:10px;line-height:1.5;color:#495057}

/* --- inputs --- */
.box_input,textarea{width:100%;padding:12px;border:1px solid #ced4da;border-radius:10px;font-size:.95rem}
.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.meta{color:#6c757d;font-size:.9rem}

/* --- button --- */
.btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#e83e8c,#ff6fae);border:none;border-radius:12px;padding:12px 20px;color:#fff;cursor:pointer;font-weight:700;font-size:15px;letter-spacing:.3px;transition:transform .2s ease,box-shadow .2s ease,background .3s ease;box-shadow:0 6px 16px rgba(232,62,140,.35)}
.btn:hover{background:linear-gradient(135deg,#d63384,#ff4fa0);transform:translateY(-2px);box-shadow:0 10px 22px rgba(232,62,140,.5)}
.btn:active{transform:translateY(0);box-shadow:0 4px 12px rgba(232,62,140,.45)}
.btn.gray{background:#6c757d}
.btn.gray:hover{background:#5a6268}
.btn.outline{background:#fff;border:2px solid #e83e8c;color:#e83e8c}
.btn.outline:hover{filter:brightness(.98)}
.btn.small{padding:6px 10px;border-radius:8px;font-weight:700}
.btn.danger{background:#dc3545}
.btn.danger:hover{background:#c82333}
.btn[disabled]{opacity:.55;cursor:not-allowed}
@media (prefers-reduced-motion:reduce){.btn{transition:none}.btn:hover,.btn:active{transform:none;box-shadow:none}}
.status-pill{display:inline-block;padding:4px 10px;border-radius:9999px;font-size:.8rem;font-weight:700}
.status-open{background:#e6f4ea;color:#137333}
.status-on-hold{background:#fff4e5;color:#b85c00}
.status-closed{background:#f3e8ff;color:#6f42c1}
#statusBtn[aria-disabled=true]{pointer-events:none;opacity:.6}

/* --- cards / attachments legacy --- */
.ticket-card{border:1px solid #eee;border-radius:12px;padding:16px;margin-bottom:12px;background:#fff;display:flex;justify-content:space-between;align-items:center}
.attachments{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}
.thumb{border:1px solid #eee;border-radius:10px;padding:8px;background:#fafafa}
.thumb img{display:block;max-width:200px;border-radius:8px}
.file{border:1px dashed #ccc;border-radius:10px;padding:10px;background:#fafafa}
.reply{border-left:4px solid #e83e8c;padding:10px 12px;margin:10px 0;border-radius:8px;background:#fff}
.reply .author{font-weight:700}
.note-badge{display:inline-block;padding:4px 8px;border-radius:8px;font-size:.8rem;background:red;color:#333;margin-left:6px;font-weight:600}

/* --- responsive bits --- */
@media (max-width:768px){
  .container{position:relative}
  .sidebar{position:absolute;top:0;left:0;height:100vh;transform:translateX(-260px);z-index:999}
  .sidebar.show{transform:translateX(0)}
  .row{grid-template-columns:1fr}
  .hi_user{display:none}
  .ticket-card{align-items:flex-start}
  .ticket-card>div:last-child{margin-left:auto}
  .status-pill{font-size:12px;padding:3px 8px}
  .badge,.chip{font-size:12px;padding:3px 8px}
}
@media (min-width:769px){.topbar .menu-toggle{display:none}}
@media (max-width:600px){.docu_head--ticket{font-size:.95rem}}

/* --- dark theme surfaces --- */
[data-theme=dark] body{background:#0b0f14;color:#dfe7ef}
[data-theme=dark] .docu_box{background:#121821;border-color:#1f2a36}

/* --- waiting chips --- */
.chip-wait-staff,.chip-wait-user{flex-basis:100%;margin-top:6px;font-weight:500;display:inline-flex;align-items:center;gap:6px}
.chip-wait-staff{background:#fff3cd;border:1px solid #ffec99;color:#6b4e00}
.chip-wait-user{background:#e3f2fd;border:1px solid #bbdefb;color:#0b4a74}
[data-theme=dark] .chip-wait-staff{background:#2a2300;border-color:#665c00;color:#fde68a}
[data-theme=dark] .chip-wait-user{background:#0e1a33;border-color:#1e3a8a;color:#cfe3ff}

/* --- rich status badge (keep this one) --- */
.status-badge{--sb-bg:linear-gradient(180deg,#f3f4f6 0%,#ebeef2 100%);--sb-text:#111827;--sb-border:#d1d5db;--sb-dot:#9ca3af;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;font:600 12px/1.1 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Noto Sans",sans-serif;color:var(--sb-text);background:var(--sb-bg);border:1px solid var(--sb-border);box-shadow:0 2px 6px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.6);position:relative;isolation:isolate;transition:transform .12s ease,box-shadow .12s ease,background .2s ease}
.status-badge:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.6)}
.sb-ico{width:16px;height:16px;flex:0 0 16px;opacity:.9}
.sb-text{letter-spacing:.2px}
.sb-text::before{content:attr(data-ico);margin-right:.25em}
.sb-dot{width:10px;height:10px;border-radius:50%;flex:0 0 10px;background:var(--sb-dot);box-shadow:0 0 0 3px color-mix(in srgb,var(--sb-dot) 18%,transparent),0 0 12px color-mix(in srgb,var(--sb-dot) 45%,transparent)}
.sb-open{--sb-bg:linear-gradient(180deg,#e7fff3 0%,#d9f7e7 100%);--sb-text:#065f46;--sb-border:#b7efcc;--sb-dot:#10b981}
.sb-hold{--sb-bg:linear-gradient(180deg,#fff8e6 0%,#ffeec2 100%);--sb-text:#7c3e00;--sb-border:#ffd889;--sb-dot:#f59e0b}
.sb-closed{--sb-bg:linear-gradient(180deg,#ffeaea 0%,#ffd6d6 100%);--sb-text:#7f1d1d;--sb-border:#f2aaaa;--sb-dot:#ef4444}
.sb-pending{--sb-bg:linear-gradient(180deg,#fff7e6 0%,#ffefcf 100%);--sb-text:#975a00;--sb-border:#ffd889;--sb-dot:#f59e0b}
.sb-rejected{--sb-bg:linear-gradient(180deg,#fff0f0 0%,#ffe1e1 100%);--sb-text:#9f1239;--sb-border:#f2aaaa;--sb-dot:#ef4444}
.sb-unknown{--sb-bg:linear-gradient(180deg,#eef2ff 0%,#e0e7ff 100%);--sb-text:#1e3a8a;--sb-border:#c7d2fe;--sb-dot:#6366f1}
.sb-open .sb-dot{animation:sb-pulse 1.6s ease-in-out infinite}
@keyframes sb-pulse{0%,100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--sb-dot) 18%,transparent),0 0 10px color-mix(in srgb,var(--sb-dot) 35%,transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--sb-dot) 22%,transparent),0 0 16px color-mix(in srgb,var(--sb-dot) 55%,transparent)}}
[data-theme=dark] .status-badge{--sb-text:#e5eef7;--sb-border:#243447;background:linear-gradient(180deg,#0f141a 0,#0c1117 100%);box-shadow:0 2px 10px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.06)}
[data-theme=dark] .sb-open{--sb-bg:linear-gradient(180deg,#062e1f 0%,#08261c 100%);--sb-text:#a7f3d0;--sb-border:#0c5132;--sb-dot:#34d399}
[data-theme=dark] .sb-hold{--sb-bg:linear-gradient(180deg,#3a2a00 0%,#2d2200 100%);--sb-text:#fde68a;--sb-border:#6b4f00;--sb-dot:#fbbf24}
[data-theme=dark] .sb-closed{--sb-bg:linear-gradient(180deg,#3b1111 0%,#2b0c0c 100%);--sb-text:#fecaca;--sb-border:#7a2e2e;--sb-dot:#f87171}
[data-theme=dark] .sb-pending{--sb-bg:linear-gradient(180deg,#332400 0%,#241a00 100%);--sb-text:#ffdf99;--sb-border:#5a4200;--sb-dot:#fbbf24}
[data-theme=dark] .sb-rejected{--sb-bg:linear-gradient(180deg,#331016 0%,#240b10 100%);--sb-text:#ffc0cb;--sb-border:#5c1f2a;--sb-dot:#f87171}

/* --- ticket list --- */
.ticket-card__head{display:flex;gap:10px;align-items:flex-start}
.tc-ava{width:36px;height:36px;border-radius:50%;object-fit:cover;flex:0 0 auto}

/* --- notify --- */
.notify-bell .fa{display:inline-block;font-size:16px;line-height:1}
html:not([data-fa-loaded]) .notify-bell .fa{display:none}
html:not([data-fa-loaded]) .notify-bell::before{content:"🔔";font-size:16px;margin-right:0}
html.fa-loaded .notify-bell::before{content:none}
.badge-replies{display:inline-block;min-width:30px;padding:4px 8px;border-radius:999px;font-weight:600;text-align:center;background:#e8f0fe;border:1px solid #c5d1fb;margin-right:8px}
[data-theme=dark] .badge-replies{background:#0e1a33;border-color:#1e3a8a;color:#cbd5e1}
.ticket-right{display:flex;gap:8px;align-items:center}
.reply-edit-ta{width:100%;padding:10px;border:1px solid #ced4da;border-radius:10px;font:inherit;resize:vertical;box-sizing:border-box}
.reply-edit-row{display:flex;gap:8px;margin-top:8px}

/* --- anon / switch --- */
.anon-row{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none}
.switch-input{position:absolute;opacity:0;width:0;height:0}
.switch-track{width:44px;height:24px;border-radius:999px;background:#cfd8dc;position:relative;transition:background .2s ease,border-color .2s ease;border:1px solid #b0bec5}
.switch-thumb{position:absolute;top:50%;left:2px;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:left .2s ease}
.switch-input:checked+.switch-track{background:#1976d2;border-color:#1976d2}
.switch-input:checked+.switch-track .switch-thumb{left:22px}
.switch--lg .switch-track{width:54px;height:28px;box-shadow:inset 0 1px 2px rgb(0 0 0 / .06)}
.switch--lg .switch-thumb{left:3px;width:22px;height:22px;box-shadow:0 1px 3px rgb(0 0 0 / .25)}
.switch-input:checked+.switch-track .switch-thumb{left:29px}
.switch-label{min-width:34px;text-align:center;font-weight:700;font-size:12px;padding:3px 6px;border-radius:999px;border:1px solid #d1d9e6;background:#f8fafc}
.switch-input:checked~.switch-label::before{content:attr(data-on)}
.switch-input:not(:checked)~.switch-label::before{content:attr(data-off)}
[data-theme="dark"] .switch-label{background:#0f141a;border-color:#223040;color:#e6eef7}
.help-hint{font-size:12px;opacity:.8}
.badge-anon,.chip--anon{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;font-size:12px;font-weight:700;background:#eaf2ff;border:1px solid #c6d8ff;color:#1e3a8a}
[data-theme=dark] .badge-anon,[data-theme=dark] .chip--anon{background:#0e1a33;border-color:#1e3a8a;color:#cfe3ff}

/* --- anon card --- */
.anon-card{--ac-bg:var(--bg, #fff);--ac-br:#e6edf5;--ac-fg:var(--fg, #0f172a);--ac-ring:#4f46e5;--ac-grad1:#f8fbff;--ac-grad2:#f1f5ff;display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--ac-br);border-radius:14px;background:linear-gradient(180deg,var(--ac-grad1),var(--ac-grad2));box-shadow:0 4px 16px rgb(15 23 42 / .06)}
[data-theme="dark"] .anon-card{--ac-bg:#0f141a;--ac-br:#223040;--ac-fg:#e6eef7;--ac-ring:#6366f1;--ac-grad1:#0f141a;--ac-grad2:#0c1117;box-shadow:0 8px 24px rgb(0 0 0 / .45)}
.anon-card__icon{font-size:20px;line-height:1;flex:0 0 auto;filter:saturate(1.05)}
.anon-card__body{flex:1 1 auto;color:var(--ac-fg)}
.anon-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.anon-card__title{font-weight:800;letter-spacing:.2px;font-size:15px;line-height:1.2}
.anon-card__desc{margin:6px 0 10px;font-size:13px;opacity:.85}
.anon-preview{display:flex;align-items:center;gap:10px;padding:10px;border:1px dashed color-mix(in srgb,var(--ac-br) 65%,transparent);border-radius:12px;background:rgb(2 132 199 /.06)}
[data-theme="dark"] .anon-preview{background:rgb(30 58 138 /.18)}
.anon-preview__ava{width:36px;height:36px;border-radius:50%;object-fit:cover;flex:0 0 auto;border:1px solid rgb(0 0 0 /.06)}
.anon-preview__text{line-height:1.25}
.anon-preview__name{font-weight:700;font-size:14px}
.anon-preview__hint{font-size:12px;opacity:.7}
@media (prefers-reduced-motion:reduce){.switch-track,.switch-thumb{transition:none!important}}
@media (max-width:520px){.anon-card__head{flex-direction:column;align-items:flex-start;gap:8px}}
@media (max-width:600px){ .btn.block { width:100% } }

/* --- pretty form card --- */
.form-card{
  background:#fff;
  border:1px solid #e8edf3;
  border-radius:16px;
  padding:18px 18px 14px;
  box-shadow:0 6px 20px rgba(6,27,62,.05);
  max-width:none;
  width:100%;
  margin:0;
}
.form-title{display:flex;gap:10px;align-items:center;margin-bottom:6px}
.form-title .ft-emoji{font-size:22px}
.form-title .ft-top{font-weight:700;font-size:18px;line-height:1.2}
.form-title .ft-sub{color:#637087;font-size:13px}

/* fields */
.field{margin-top:14px}
.label{display:block;font-weight:600;margin-bottom:6px}
.label .muted{font-weight:500;color:#6b7280}
.req{color:#ef476f;margin-left:4px}
.input-wrap{position:relative}
.i-prefix{position:absolute;left:10px;top:50%;transform:translateY(-50%);opacity:.7;pointer-events:none}
.input,.select,.textarea{width:100%;border:1px solid #d7dee8;border-radius:12px;padding:10px 12px 10px 34px;outline:none;transition:.15s border-color,.15s box-shadow;font:inherit;background:#fbfdff}
.select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#9aa4b2 50%),linear-gradient(135deg,#9aa4b2 50%,transparent 50%),linear-gradient(to right,#fbfdff,#fbfdff);background-position:calc(100% - 18px) calc(50% - 4px),calc(100% - 12px) calc(50% - 4px),100% 0;background-size:6px 6px,6px 6px,2.2em 100%;background-repeat:no-repeat;padding-right:42px}
.input:focus,.select:focus,.textarea:focus{border-color:#8bb4ff;box-shadow:0 0 0 3px rgba(83,140,255,.15);background:#fff}
.textarea{min-height:180px;resize:vertical;padding-left:12px}

/* grid */
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media (max-width:900px){.grid-3{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.grid-3{grid-template-columns:1fr}}

/* toolbar */
.bb-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.bb-toolbar.pretty{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.bb,.bb-toolbar button,.bb-toolbar select{border:1px solid #ddd;background:#fafafa;border-radius:8px;padding:6px 9px;cursor:pointer}
.bb:hover,.bb-toolbar button:hover,.bb-toolbar select:hover{border-color:#b5c6de}
.bb-sep{width:10px}

/* counter/hint */
.counter-row{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.hint{color:#6b7280;font-size:12px}
.counter{font-size:12px;color:#4b5563}

/* dropzone */
.dropzone{margin-top:6px;border:2px dashed #cfd8dc;border-radius:10px;padding:12px;text-align:center;transition:background-color .15s ease,border-color .15s ease}
.dropzone.dragover{background:#eef6ff;border-color:#90caf9}
.dropzone.pretty{display:flex;gap:10px;align-items:center;padding:12px;border:2px dashed #cfe0ff;border-radius:14px;background:#f7fbff;cursor:pointer;transition:.15s}
.dropzone.pretty:hover{border-color:#9ec2ff;background:#f2f8ff}
.dropzone.pretty.dragover{border-color:#5e9cff;background:#eaf3ff}
.dz-ico{font-size:20px}
.dz-main{font-weight:600}
.dz-sub{color:#6b7280;font-size:12px}
.filelist{margin:8px 0 0 0;padding-left:18px;list-style:disc;text-align:left}
.note.error{color:#c0392b;font-weight:600}
.progress{width:100%;height:10px;border-radius:8px}
.linklike{background:none;border:none;padding:0;text-decoration:underline;cursor:pointer}

/* actions */
:root{--fab-size:56px;--elev-1:0 2px 8px rgba(0,0,0,.08)}
.pill{padding:2px 8px;border-radius:999px;background:#f1f1f1;margin-left:6px;font-size:12px}
.fab{position:fixed;right:16px;bottom:16px;width:var(--fab-size);height:var(--fab-size);border-radius:50%;display:flex;align-items:center;justify-content:center;background:#1976d2;color:#fff;font-size:24px;box-shadow:0 6px 20px rgba(0,0,0,.25);z-index:9999}
.searchbar{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.searchbar input,.searchbar select{min-height:36px}
.bb-toolbar select,[data-theme=dark] .bb-toolbar button{border-color:#223040;background:#0f141a;color:#e1ecff}

/* notify panel */
.notify-wrap{position:relative;margin-right:10px}
.notify-bell{position:relative;border:1px solid #e1e5ea;background:#fafafa;border-radius:10px;padding:6px 10px;cursor:pointer;line-height:1}
.notify-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#e53935;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--bg,#fff)}
.notify-badge[hidden]{display:none!important}
.notify-panel{position:fixed;top:calc(var(--topbar-h,56px) + 8px);right:8px;left:auto;width:min(92vw,380px);max-width:calc(100vw - 16px);max-height:min(70vh,520px);overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#fff;border:1px solid #e1e5ea;border-radius:12px;box-shadow:0 10px 24px rgba(0,0,0,.18);z-index:9999;padding-bottom:env(safe-area-inset-bottom);color:#111;font:14px/1.4 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Noto Sans",sans-serif}
.notify-head{position:sticky;top:0;background:inherit;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #e9eef4;font-weight:600}
.notify-content{padding:8px}
.notify_item{display:flex;gap:10px;padding:8px;border-radius:10px;cursor:pointer;align-items:flex-start}
.notify_item:hover{background:rgba(0,0,0,.04)}
.notify_avatar img{width:40px;height:40px;border-radius:50%;object-fit:cover;display:block}
.notify_text{font-size:13px;line-height:1.45;color:inherit}
.notify_text *{color:inherit!important;font:inherit!important}
.notify_text a{color:#1d4ed8!important;text-decoration:underline}
@media (max-width:480px){.notify-panel{right:8px;left:8px;width:auto;max-height:75vh}}
[data-theme=dark] .notify-panel{--notify-fg:#e6eef7;background:#0f141a;border-color:#223040;box-shadow:0 12px 30px rgba(0,0,0,.6)}
[data-theme=dark] .notify-bell{border-color:#2a3a4a;background:#0f141a;color:#e1ecff}
[data-theme=dark] .notify_item:hover{background:rgba(255,255,255,.05)}
[data-theme=dark] .notify_text{color:#dfe7ef}

.cp-quote{margin:8px 0;padding:8px 12px;border-left:4px solid #90caf9;background:#f5f9ff;border-radius:8px}
.cp-quote-head{font-weight:600;margin-bottom:4px;opacity:.9}
[data-theme=dark] .cp-quote{background:#0f141a;border-left-color:#1e3a8a}

.tkt-closed{border:1px solid #f2aaaa;background:linear-gradient(180deg,#fff1f1 0,#ffe3e3 100%)}
.tkt-closed__inner{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px dashed rgba(239,68,68,.35);border-radius:10px;background:rgba(239,68,68,.06)}
.tkt-closed__icon{font-size:20px;line-height:1;flex:0 0 auto;filter:saturate(1.1)}
.tkt-closed__title{font-weight:700;color:#7f1d1d}
.tkt-closed__desc{font-size:13px;opacity:.85}
[data-theme=dark] .tkt-closed{border-color:#7a2e2e;background:linear-gradient(180deg,#2b0c0c 0,#1f0909 100%)}
[data-theme=dark] .tkt-closed__inner{border-color:rgba(248,113,113,.35);background:rgba(248,113,113,.08)}
[data-theme=dark] .tkt-closed__title{color:#fecaca}

.tkt-pager{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:center;margin:14px 0}
.tkt-pager .page{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 10px;border:1px solid #e1e5ea;border-radius:10px;background:#fafafa;font-weight:600;text-decoration:none;cursor:pointer}
.tkt-pager .page:hover{filter:brightness(.98)}
.tkt-pager .page.is-active{background:#1976d2;color:#fff;border-color:#1976d2;cursor:default}
.tkt-pager .page.total{border:none;background:0 0;min-width:auto;height:auto;padding:0 6px}
[data-theme=dark] .tkt-pager .page{border-color:#223040;background:#0f141a;color:#e1e5ff}
[data-theme=dark] .tkt-pager .page.is-active{background:#1d4ed8;border-color:#1d4ed8;color:#fff}

.approval-banner{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid #cfe0ff;background:#f5f9ff;border-radius:16px;box-shadow:0 4px 14px rgba(6,27,62,.06);margin:0 0 14px 0}
.ab-icon{font-size:22px;line-height:1}
.ab-body{flex:1}
.ab-title{font-weight:800;font-size:16px;margin-bottom:6px;display:flex;align-items:center;gap:8px}
.ab-desc{margin:0 0 6px 0;color:#4b5563}
.ab-tips{margin:0 0 6px 16px;color:#4b5563}
.ab-tips li{margin:2px 0}
.ab-foot{color:#2b4c8a;font-weight:600}

.cat-suggesties{background:#ffeaa7;color:#2d3436;font-weight:700;border:1px solid #fdcb6e}

.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;z-index:1000}
.modal{background:var(--bg,#fff);color:inherit;border-radius:12px;min-width:320px;max-width:520px;width:90%;box-shadow:0 10px 30px rgba(0,0,0,.2);padding:12px}
.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.modal-title{font-weight:600}
.modal-body{margin:8px 0}
.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}

.ip-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-weight:700;font-size:12px;background:#e8f0fe;border:1px solid #c5d1fb;color:#1e3a8a}
[data-theme=dark] .ip-pill{background:#0e1a33;border-color:#1e3a8a;color:#cfe3ff}
.ip-pill::before{content:"🌐";font-size:12px;opacity:.85}
.tkt-content{padding:16px 18px;background:#fff;border:1px solid #e6e8ec;border-radius:12px;box-shadow:0 1px 2px rgba(16,24,40,.04);font-size:1rem;line-height:1.7;color:#2b2f36;overflow-wrap:anywhere}
.tkt-content > *:first-child{margin-top:0}
.tkt-content > *:last-child{margin-bottom:0}
.tkt-content h1,.tkt-content h2,.tkt-content h3{font-weight:700;line-height:1.25;margin:1rem 0 .5rem}
.tkt-content h1{font-size:1.5rem}
.tkt-content h2{font-size:1.25rem}
.tkt-content h3{font-size:1.1rem}
.tkt-content p{margin:.7rem 0}
.tkt-content ul,.tkt-content ol{margin:.6rem 0 .6rem 1.25rem}
.tkt-content li{margin:.2rem 0}
.tkt-content a{color:#2563eb;text-decoration:underline;text-underline-offset:2px}
.tkt-content a:hover{text-decoration-thickness:2px}
.tkt-content blockquote{margin:.8rem 0;padding:.6rem .9rem;border-left:4px solid #93c5fd;background:#f8fbff;color:#374151;border-radius:8px}
.tkt-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f1f5f9;border:1px solid #e2e8f0;padding:.1rem .35rem;border-radius:6px}
.tkt-content pre{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#0b1220;color:#e5e7eb;border-radius:10px;border:1px solid #0f172a;padding:12px 14px;overflow:auto;margin:.9rem 0}
.tkt-content pre code{background:transparent;border:0;padding:0;color:inherit}
.tkt-content hr{border:0;height:1px;background:linear-gradient(90deg,#edf2f7,#e2e8f0);margin:1rem 0}
.tkt-content table{width:100%;border-collapse:collapse;margin:.8rem 0;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;display:block}
.tkt-content thead{background:#f8fafc}
.tkt-content th,.tkt-content td{padding:.55rem .7rem;border-bottom:1px solid #e5e7eb;vertical-align:top}
.tkt-content tr:last-child td{border-bottom:0}
.tkt-content img{max-width:100%;height:auto;border-radius:10px;display:block;margin:.6rem 0}

html[data-theme="dark"] .tkt-content{background:#111318;border-color:#2a2f36;color:#dbe1e8;box-shadow:0 1px 2px rgba(0,0,0,.25)}
html[data-theme="dark"] .tkt-content blockquote{background:#141a23;color:#e5e7eb;border-left-color:#60a5fa}
html[data-theme="dark"] .tkt-content code{background:#0f172a;border-color:#1f2937;color:#e5e7eb}
html[data-theme="dark"] .tkt-content pre{background:#0b1220;border-color:#111827;color:#e5e7eb}
html[data-theme="dark"] .tkt-content table{border-color:#2a2f36}
html[data-theme="dark"] .tkt-content thead{background:#111827}
html[data-theme="dark"] .tkt-content th,html[data-theme="dark"] .tkt-content td{border-bottom-color:#2a2f36}

.av-box{
  background:#fff;border:1px solid #e7ebf0;border-radius:14px;
  box-shadow:0 8px 22px rgba(15,23,42,.06);padding:16px;margin-bottom:16px
}
.av-box--warn{background:#fff8e6;border-color:#ffe2a6}
.av-head{font-weight:800;font-size:1.05rem;color:#1f2937;margin-bottom:8px}
.av-desc{font-size:.95rem;color:#374151}

.av-row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px 12px;border:1px solid #eef0f3;border-radius:12px;background:#fff;margin:.5rem 0
}
.av-row__left{display:flex;flex-direction:column;gap:6px;min-width:0}
.av-row__right{display:flex;align-items:center;gap:8px}
.av-row__title{font-weight:700;color:#111827}
.av-row__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.av-note{color:#6b7280}
.av-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:6px 0 10px}

/* Buttons */
.av-btn{
  display:inline-flex;align-items:center;gap:8px;border:0;border-radius:12px;
  padding:10px 16px;font-weight:700;font-size:14px;cursor:pointer;
  background:linear-gradient(135deg,#e83e8c,#ff6fae);color:#fff;
  box-shadow:0 6px 16px rgba(232,62,140,.35);transition:transform .15s,box-shadow .15s
}
.av-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(232,62,140,.48)}
.av-btn:active{transform:none}
.av-btn--outline{background:#fff;color:#e83e8c;border:2px solid #e83e8c;box-shadow:none}
.av-btn--sm{padding:6px 10px;border-radius:10px}

/* Chips */
.av-chip{
  display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:9999px;
  font-size:13px;background:#f4f6f8;border:1px solid #e3e7ee;color:#374151
}
.av-chip--votes{background:#f8fafc;border-color:#e2e8f0}
.av-vdot{width:10px;height:10px;border-radius:50%}
.av-vdot--up{background:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.15)}
.av-vdot--down{background:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.15)}

/* Status badge (token) */
.av-badge{
  --bg:#eef2ff;--fg:#1e3a8a;--br:#c7d2fe;--dot:#6366f1;
  display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;
  border:1px solid var(--br);background:var(--bg);color:var(--fg);
  font-weight:700;font-size:12px;box-shadow:0 2px 6px rgba(0,0,0,.08)
}
.av-badge .av-badge__text{letter-spacing:.2px}
.av-dot{
  width:10px;height:10px;border-radius:50%;
  background:var(--dot);box-shadow:0 0 0 3px color-mix(in srgb,var(--dot) 22%, transparent),
                                0 0 10px color-mix(in srgb,var(--dot) 45%, transparent)
}
.av-st--approved { --bg:#d1e7dd; --fg:#0f5132; --br:#badbcc; --dot:#198754 }
.av-st--rejected { --bg:#f8d7da; --fg:#842029; --br:#f5c2c7; --dot:#dc3545 }
.av-st--withdrawn{ --bg:#fff3cd; --fg:#664d03; --br:#ffe69c; --dot:#f59f00 }
.av-st--pending  { --bg:#cfe2ff; --fg:#084298; --br:#b6d4fe; --dot:#0d6efd }

/* Rank badge */
.av-rank{
  --bg:#f4f5f7; --fg:#374151; --br:#e5e7eb;
  display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;
  border:1px solid var(--br);background:var(--bg);color:var(--fg);font-weight:700;font-size:12px
}
.av-rank__icon{width:14px;height:14px;border-radius:3px;background:#9aa4b2;display:inline-block}
.av-rk--mod   { --bg:linear-gradient(180deg,#e0f7fa,#b2ebf2); --fg:#006064; --br:#4dd0e1 }
.av-rk--admin { --bg:linear-gradient(180deg,#fff3e0,#ffe0b2); --fg:#e65100; --br:#ffb74d }
.av-rk--super { --bg:linear-gradient(180deg,#f3e5f5,#e1bee7); --fg:#4a148c; --br:#ba68c8 }
.av-rk--user  { --bg:#f4f5f7; --fg:#374151; --br:#e5e7eb }

/* Dark theme for AV */
[data-theme=dark] .av-box{background:#0f141a;border-color:#223040;box-shadow:0 8px 24px rgba(0,0,0,.45)}
[data-theme=dark] .av-box--warn{background:#2a2300;border-color:#665c00}
[data-theme=dark] .av-head{color:#e6eef7}
[data-theme=dark] .av-desc{color:#d1dbeb}
[data-theme=dark] .av-row{background:#0f141a;border-color:#223040}
[data-theme=dark] .av-row__title{color:#e6eef7}
[data-theme=dark] .av-row__meta .av-chip{background:#0f141a;border-color:#223040;color:#cfe3ff}
[data-theme=dark] .av-chip{background:#0f141a;border-color:#223040;color:#e6eef7}
[data-theme=dark] .av-chip--votes{background:#0f141a;border-color:#223040}
[data-theme=dark] .av-badge{background:linear-gradient(180deg,#0f141a,#0c1117);border-color:#243447;color:#cfe3ff}
[data-theme=dark] .av-st--approved { --bg:#062e1f; --fg:#a7f3d0; --br:#0c5132; --dot:#34d399 }
[data-theme=dark] .av-st--rejected { --bg:#331016; --fg:#ffc0cb; --br:#5c1f2a; --dot:#f87171 }
[data-theme=dark] .av-st--withdrawn{ --bg:#3a2a00; --fg:#fde68a; --br:#6b4f00; --dot:#fbbf24 }
[data-theme=dark] .av-st--pending  { --bg:#241a00; --fg:#ffdf99; --br:#5a4200; --dot:#fbbf24 }
[data-theme=dark] .av-rank{background:#0f141a;border-color:#223040;color:#e6eef7}

/* ===== AV Comments (no truncation) ===== */
.av-cmt{
  --br:#e7ebf0; --bg:#fff; --fg:#1f2937;
  border:1px solid var(--br); background:var(--bg); color:var(--fg);
  border-radius:14px; padding:12px; margin:10px 0;
  box-shadow:0 4px 14px rgba(15,23,42,.06);
}
.av-cmt__head{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:6px}
.av-cmt__meta{display:flex; flex-direction:column; gap:2px; min-width:0}
.av-cmt__user{
  font-weight:700; font-size:15px; letter-spacing:.2px;
  overflow:visible; white-space:normal; text-overflow:clip; word-break:break-word;
}
.av-cmt__badge{
  display:inline-block; margin-left:6px; padding:2px 6px; border-radius:999px;
  font-size:11px; font-weight:800; background:#e8f5e9; color:#1b5e20; border:1px solid #c8e6c9;
}
.av-cmt__time{opacity:.75; font-size:12px}
.av-cmt__body{font-size:15px; line-height:1.6}
.av-cmt__body p{margin:8px 0}
.av-cmt__body img{max-width:100%; height:auto; border-radius:8px}
.av-cmt__body code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  background:#f1f5f9;border:1px solid #e2e8f0;padding:.1rem .35rem;border-radius:6px
}
[data-theme=dark] .av-cmt{--br:#223040; --bg:#0f141a; --fg:#e6eef7; box-shadow:0 6px 18px rgba(0,0,0,.45)}
[data-theme=dark] .av-cmt__badge{background:#0f1f14; color:#7adf9a; border-color:#1d3324}
[data-theme=dark] .av-cmt__body code{background:#0f172a; border-color:#1f2937; color:#e5e7eb}

/* ===== Section head & Empty state (shared) ===== */
.av-section { margin-top: 12px; }
.av-section__head{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.av-section__ico{ font-size:18px;line-height:1 }
.av-section__title{font-weight:800;font-size:16px;letter-spacing:.2px}

.av-empty{
  display:flex;align-items:center;gap:12px;
  border:1px solid #e6e8ec;border-radius:14px;
  padding:14px 16px;background:linear-gradient(180deg,#ffffff 0,#f9fbff 100%);
  box-shadow:0 4px 14px rgba(6,27,62,.06);
}
.av-empty--discuss{ border-color:#dce6ff;background:linear-gradient(180deg,#ffffff 0,#f4f8ff 100%) }
.av-empty__ico{font-size:22px;line-height:1;filter:saturate(1.05);flex:0 0 auto}
.av-empty__text{ line-height:1.35 }
.av-empty__title{ font-weight:700;color:#1f2937 }
.av-empty__hint{ font-size:13px;color:#6b7280 }
html[data-theme="dark"] .av-empty{
  border-color:#223040;background:linear-gradient(180deg,#0f141a 0,#0c1117 100%);
  box-shadow:0 8px 24px rgba(0,0,0,.45);
}
html[data-theme="dark"] .av-empty--discuss{ border-color:#223b6a;background:linear-gradient(180deg,#0f141a 0,#0e1520 100%) }
html[data-theme="dark"] .av-empty__title{ color:#e6eef7 }
html[data-theme="dark"] .av-empty__hint{ color:#9fb0c6 }

/* ===== Poll (scoped; no global clashes) ===== */
.av-poll{
  --av-br:#e8edf3; --av-bg:#fff; --av-fg:#0f172a; --av-sub:#6b7280; --av-ring:rgba(99,102,241,.25);
  border:1px solid var(--av-br); border-radius:14px; background:var(--av-bg);
  padding:14px; box-shadow:0 6px 16px rgba(15,23,42,.06);
}
.av-poll--closed{opacity:.96}

/* header */
.av-poll__head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  border-bottom:1px dashed #e5e7eb;padding-bottom:12px;margin-bottom:12px;
}
.av-poll__left{min-width:0}
.av-poll__eyebrow{
  font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b;margin-bottom:4px;
}
.av-poll__title{font:800 18px/1.25 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--av-fg);word-break:break-word}
.av-poll__desc{
  color: var(--av-sub);
  margin-top: 8px;
  font-size: 15px;
  line-height: 1.6;
  max-width: 68ch;      
  letter-spacing: .1px;
  word-break: break-word;
}
.av-poll__desc p{ margin: .5rem 0; }
.av-poll__desc a{
  color: #2563eb;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.av-poll__desc a:hover{ text-decoration-thickness: 2px; }

.av-poll__desc strong{ color: #1f2937; }
.av-poll__desc em{ opacity: .95; }

.av-poll__desc ul,
.av-poll__desc ol{
  margin: .5rem 0 .5rem 1.2rem;
}
.av-poll__desc li{ margin: .2rem 0; }

.av-poll__desc code{
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .95em;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  padding: .1rem .35rem;
  border-radius: 6px;
}

/* тъмна тема */
html[data-theme="dark"] .av-poll__desc strong{ color:#e6eef7; }
html[data-theme="dark"] .av-poll__desc code{
  background:#0f172a; border-color:#1f2937; color:#e5e7eb;
}

.av-poll__right{display:flex;align-items:center;gap:8px;flex:0 0 auto}

/* pills & counter (shared keyframes once) */
@keyframes av-dot{0%,100%{box-shadow:0 0 0 3px rgba(16,185,129,.20)}50%{box-shadow:0 0 0 6px rgba(16,185,129,.35)}}
.av-pill{
  display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;
  font-weight:700;font-size:12px;border:1px solid #dbeafe;background:#eff6ff;color:#1e40af;
  box-shadow:0 1px 2px rgba(0,0,0,.05),0 0 0 3px transparent;
}
.av-pill__dot{width:9px;height:9px;border-radius:50%;background:#60a5fa}
.av-pill--open{border-color:#bbf7d0;background:#ecfdf5;color:#065f46}
.av-pill--open .av-pill__dot{background:#10b981;animation:av-dot 1.6s ease-in-out infinite}
.av-pill--closed{border-color:#fecaca;background:#fff1f2;color:#7f1d1d}
.av-pill--closed .av-pill__dot{background:#ef4444}

.av-counter{
  display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;
  font-weight:700;font-size:12px;border:1px solid #e2e8f0;background:#f8fafc;color:#334155;
}
.av-counter__ico{font-size:14px;line-height:1;opacity:.9}

/* vote form options */
.av-opt{
  display:flex;align-items:center;gap:10px;border:1px solid #e6ebf2;background:#fbfdff;
  padding:10px 12px;border-radius:12px;margin:8px 0;cursor:pointer;user-select:none;
  transition:transform .06s ease,box-shadow .15s,border-color .15s;
}
.av-opt:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(6,27,62,.06);border-color:#cfe0ff}
.av-opt:active{transform:scale(.995)}
.av-opt input[type="radio"]{
  appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:50%;
  border:2px solid #9aa4b2;outline:none;margin:0;position:relative;flex:0 0 auto;background:#fff;
  transition:border-color .15s,box-shadow .15s;
}
.av-opt input[type="radio"]:focus{box-shadow:0 0 0 3px var(--av-ring)}
.av-opt input[type="radio"]:checked{border-color:#2563eb;box-shadow:inset 0 0 0 4px #2563eb22}
.av-opt span{font-weight:600;color:#0f172a}
.av-opt:hover span{text-decoration:underline;text-underline-offset:2px}

/* actions row under options */
.av-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}

/* results (SCOPED to poll to avoid clash with AV rows) */
.av-poll .av-row{font-weight:600;margin:8px 0 4px}
.av-poll .av-row__label{color:#111827}
.av-poll .av-row__pct{color:#475569;font-variant-numeric:tabular-nums}
.av-bar{
  height:12px;border-radius:999px;background:#edf2f7;border:1px solid #e2e8f0;
  overflow:hidden;position:relative;box-shadow:inset 0 1px 3px rgba(0,0,0,.04);
}
.av-bar__in{
  display:block;height:100%;width:0%;
  background:linear-gradient(90deg,#60a5fa,#34d399);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.06),0 1px 6px rgba(37,99,235,.25);
  transition:width .45s ease;
}

/* Poll-specific empty/note just reuse shared .av-empty/.av-note */

/* dark theme (poll) */
html[data-theme="dark"] .av-poll{
  --av-br:#223040; --av-bg:#0f141a; --av-fg:#e6eef7; --av-sub:#9aa7bd;
  box-shadow:0 8px 22px rgba(0,0,0,.45);
}
html[data-theme="dark"] .av-poll__head{border-bottom-color:#223040}
html[data-theme="dark"] .av-pill{border-color:#243b4a;background:#0b141c;color:#dbe9ff}
html[data-theme="dark"] .av-pill--open{border-color:#155e4d;background:#0b1d19;color:#8ef0cc}
html[data-theme="dark"] .av-pill--closed{border-color:#6b1f1f;background:#220d0f;color:#fecaca}
html[data-theme="dark"] .av-counter{border-color:#223040;background:#0b141c;color:#dbe1e8}
html[data-theme="dark"] .av-opt{border-color:#223040;background:#0b141c}
html[data-theme="dark"] .av-opt input[type="radio"]{background:#0b141c;border-color:#3a4a5c}
html[data-theme="dark"] .av-opt span{color:#e6eef7}
html[data-theme="dark"] .av-bar{background:#141b23;border-color:#223040}
html[data-theme="dark"] .av-bar__in{background:linear-gradient(90deg,#3b82f6,#10b981);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 1px 6px rgba(16,185,129,.25)}

/* small screens */
@media (max-width:600px){
  .av-poll__head{flex-direction:column;align-items:flex-start;gap:8px}
  .av-poll__right{width:100%;justify-content:flex-start;flex-wrap:wrap}
}
.av-row__meta{display:flex;align-items:center;gap:8px}
.av-row__cnt{
  font-weight:700; font-size:12px; color:#64748b;
  background:#f1f5f9; border:1px solid #e2e8f0;
  padding:2px 8px; border-radius:999px;
}
html[data-theme="dark"] .av-row__cnt{
  color:#cbd5e1; background:#0b141c; border-color:#223040;
}

.av-poll .av-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border:1px solid #eef0f3;
  border-radius:12px;
  background:#fff;
  margin:.5rem 0;
  font-weight:600;
}
.av-poll .av-row__label{color:#111827}
.av-poll .av-row__meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.av-poll .av-row__pct{color:#475569; font-variant-numeric:tabular-nums}
.av-poll .av-row__cnt{
  font-weight:700; font-size:12px; color:#64748b;
  background:#f1f5f9; border:1px solid #e2e8f0;
  padding:2px 8px; border-radius:999px;
}

.av-poll .av-bar{
  height:12px;
  border-radius:999px;
  background:#edf2f7;
  border:1px solid #e2e8f0;
  overflow:hidden;
  position:relative;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.04);
  margin:.25rem 0 .75rem;
}
.av-poll .av-bar__in{
  display:block;
  height:100%;
  width:0%;
  background:linear-gradient(90deg,#60a5fa,#34d399);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.06),0 1px 6px rgba(37,99,235,.25);
  transition:width .45s ease;
}

html[data-theme="dark"] .av-poll .av-row{background:#0f141a; border-color:#223040}
html[data-theme="dark"] .av-poll .av-row__label{color:#e6eef7}
html[data-theme="dark"] .av-poll .av-row__cnt{
  color:#cbd5e1; background:#0b141c; border-color:#223040;
}
html[data-theme="dark"] .av-poll .av-bar{
  background:#141b23; border-color:#223040;
}
html[data-theme="dark"] .av-poll .av-bar__in{
  background:linear-gradient(90deg,#3b82f6,#10b981);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 1px 6px rgba(16,185,129,.25);
}

@media (max-width:600px){
  .av-poll .av-row{
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }
  .av-poll .av-row__meta{
    margin-top:2px;
    gap:6px;
  }
}
/* ==== Mobile icon/badge alignment fix pack ==== */

/* 1) Единна baseline за всички иконки/емоджита вътре в чипове/бутон/бадж */
i.fa,
.chip i,
.pill i,
.status-badge i,
.notify-bell i,
.meta-chips img,
.tc-ava {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}

/* 2) Размери на „иконки“ в статус-баджа и чипове за по-малък мобилен вид */
.sb-ico,
.chip .emoji {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
}

/* 3) По-стабилен ред с чипове */
.meta-chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}
@media (max-width:600px){
  .meta-chips{ gap:4px; }
  .meta-chips .chip,
  .meta-chips .ip-pill{
    font-size:11.5px;
    padding:3px 7px;
  }
}

/* 4) Гъвкав header на тикет — копи бутонът и публичният код да не чупят реда */
.docu_head--ticket{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}
.docu_head--ticket .pill{ order:1; }
.docu_head--ticket .btn{ order:2; line-height:1; }
.docu_head--ticket .tkt-subj{ order:3; }
@media (max-width:600px){
  .docu_head--ticket .btn{
    padding:8px 10px;
    border-radius:10px;
  }
  .docu_head--ticket .tkt-subj{
    flex-basis:100%;
  }
}

/* 5) Ticket list: десният стек да се подрежда красиво под съдържанието */
@media (max-width:768px){
  .ticket-card{ flex-direction:column; gap:8px; }
  .ticket-right{
    align-self:stretch;
    justify-content:space-between;
  }
  .badge-replies{ min-width:auto; padding:3px 6px; }
}

/* 6) По-компактен статус-бадж на малък екран */
@media (max-width:600px){
  .status-badge{ padding:5px 10px; font-size:11px; }
  .sb-ico{ width:14px; height:14px; flex-basis:14px; }
}

/* 7) Пилове/бутони да стоят центрирани по височина */
.pill{ display:inline-flex; align-items:center; gap:6px; vertical-align:middle; }
.btn.outline{ line-height:1; }
.docu_head--ticket{ display:flex; flex-wrap:wrap; align-items:center; gap:6px }
.docu_head--ticket .tkt-id{ order:1 }
.docu_head--ticket .tkt-subj{ order:2; }
.docu_head--ticket .pill,
.docu_head--ticket .btn{ order:3 }

/* „принудително“ нов ред преди pill/btn */
.docu_head--ticket .tkt-subj{ flex: 0 1 auto }
.docu_head--ticket .pill{ margin-top:6px }
.docu_head--ticket .tkt-subj{ width:auto }
@media (min-width:0){
  /* трик: оставяме subject на същия ред с #id, но
     правим следващите елементи да започнат на нов ред */
  .docu_head--ticket .tkt-subj{ flex-basis:100% }
}
.ticket-flags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.ticket-warning {
  background: linear-gradient(135deg, #ffe5e5, #ffcdd2);
  border: 1px solid #e57373;
  color: #b71c1c;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 20px;
  line-height: 1.4;
  vertical-align: middle;
}


.ticket-archived {
  background: #f1f3f5;
  border: 1px solid #ccc;
  color: #555;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 20px;
  line-height: 1.4;
}
.docu_notice{
  display:flex; gap:10px;
  padding:12px 14px;
  border-radius:12px;
  background: linear-gradient(0deg, rgba(255,255,255,.6), rgba(255,255,255,.6));
  border:1px solid rgba(0,0,0,.08);
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  backdrop-filter: blur(3px);
  margin:10px 0 14px;
}
.docu_notice__icon{
  font-size:22px; line-height:1;
}
.docu_notice__body{ flex:1; min-width:0; }
.docu_notice__title{
  font-weight:700; font-size:14px; margin-bottom:4px;
}
.docu_notice__text{
  font-size:13px; line-height:1.45;
}
.docu_notice a{
  text-decoration: none;
  border-bottom:1px dashed currentColor;
}
.docu_notice a:hover{
  opacity:.85; border-bottom-style: solid;
}
.av-note.banned {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 14px;
  border: 1px solid #fecaca;
  background: #fef2f2;
  border-radius: 12px;
  color: #991b1b;
  font-weight: 600;
  font-size: 14px;
  box-shadow: 0 4px 12px rgba(0,0,0,.05);
}

.av-note.banned::before {
  content: "🚫";
  font-size: 18px;
}

.av-note.hidden {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 14px;
  border: 1px solid #fcd34d;
  background: #fffbeb;
  border-radius: 12px;
  color: #92400e;
  font-weight: 600;
  font-size: 14px;
  box-shadow: 0 4px 12px rgba(0,0,0,.05);
}

.av-note.hidden::before {
  content: "⚠️";
  font-size: 18px;
}
.av-cmt__mod { margin-top: 6px; }
.mini-btn {
  display:inline-block; padding:6px 10px; border:1px solid #e5e7eb; border-radius:10px;
  background:#fff; cursor:pointer; font-size:12px; font-weight:600;
}
.mini-btn.is-on { border-color:#fecaca; background:#fff5f5; }
.mini-btn.is-off { border-color:#bbf7d0; background:#f0fdf4; }
.mini-btn:hover { filter:brightness(0.98); }

.av-note.hidden {
  display:flex; align-items:center; gap:8px; padding:12px 14px;
  border:1px solid #fcd34d; background:#fffbeb; border-radius:12px;
  color:#92400e; font-weight:600; font-size:14px; box-shadow:0 4px 12px rgba(0,0,0,.05);
}
/* --- Override Codychat reply-body default code style --- */
.reply-body code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  background: linear-gradient(145deg, #f6f8fa, #eef1f4);
  color: #0f172a;
  padding: 2px 6px;
  border-radius: 6px;
  border: 1px solid #d1d9e6;
  font-size: 13.5px;
  line-height: 1.4;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.8);
}

.reply-body pre {
  background: linear-gradient(180deg, #fdfdfd, #f2f4f8);
  border: 1px solid #d8e0ec;
  border-radius: 12px;
  padding: 14px 16px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 14px;
  color: #1e293b;
  line-height: 1.55;
  overflow-x: auto;
  box-shadow: 0 4px 16px rgba(0,0,0,0.05);
  transition: background .25s, border-color .25s;
}

.reply-body pre code {
  background: transparent;
  border: none;
  padding: 0;
  color: inherit;
}

.reply-body pre:hover {
  border-color: #a5b4fc;
  box-shadow: 0 6px 22px rgba(99,102,241,0.15);
}

[data-theme="dark"] .reply-body code {
  background: linear-gradient(145deg, #0f141a, #131a22);
  color: #e2e8f0;
  border-color: #2a3544;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.05);
}

[data-theme="dark"] .reply-body pre {
  background: linear-gradient(180deg, #0b1117, #0e141b);
  border-color: #1e293b;
  color: #d1d9e6;
  box-shadow: 0 8px 20px rgba(0,0,0,0.45);
}

[data-theme="dark"] .reply-body pre:hover {
  border-color: #6366f1;
  box-shadow: 0 0 16px rgba(99,102,241,0.25);
}
/* ==== FINAL FIX: isolate reply action buttons ==== */
.reply-actions .btn {
  all: unset; /* изтрива всички наследени свойства от глобалния .btn */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 14px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  border: none;
  background: linear-gradient(135deg, #edf2ff, #f8faff);
  color: #374151;
  box-shadow: 0 2px 5px rgba(0,0,0,0.07);
  transition: all 0.25s ease;
  line-height: 1.1;
}

.reply-actions .btn:hover {
  background: linear-gradient(135deg, #e0ecff, #f0f5ff);
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(0,0,0,0.12);
}

.reply-actions .btn:active {
  transform: translateY(1px);
  box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

.reply-actions .edit-btn {
  background: linear-gradient(135deg, #dbeafe, #e0f2fe);
  color: #1e3a8a;
}

.reply-actions .quote-btn {
  background: linear-gradient(135deg, #dcfce7, #e0f7ed);
  color: #065f46;
}

[data-theme="dark"] .reply-actions .btn {
  background: linear-gradient(135deg, #1f2937, #111827);
  color: #d1d5db;
  box-shadow: 0 0 4px rgba(255,255,255,0.05);
}

[data-theme="dark"] .reply-actions .btn:hover {
  background: linear-gradient(135deg, #374151, #1f2937);
  color: #fff;
}
/* ==== MODERN REPLY BODY BEAUTIFICATION ==== */
.reply-body {
  position: relative;
  background: linear-gradient(180deg, rgba(255,255,255,0.75), rgba(255,255,255,0.5));
  border: 1px solid rgba(0,0,0,0.05);
  border-radius: 14px;
  padding: 14px 16px;
  font-size: 15.5px;
  line-height: 1.6;
  color: #1f2937;
  box-shadow: 0 6px 20px rgba(0,0,0,0.05);
  backdrop-filter: blur(6px);
  transition: transform .18s ease, box-shadow .18s ease;
  word-wrap: break-word;
}

.reply-body:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(0,0,0,0.08);
}

/* ✨ subtle left accent line */
.reply-body::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 10px;
  bottom: 12px;
  width: 4px;
  border-radius: 4px;
  background: linear-gradient(180deg, #7dd3fc, #a78bfa, #f0abfc);
  opacity: 0.85;
}

/* 🌓 Dark mode */
[data-theme="dark"] .reply-body {
  background: linear-gradient(180deg, rgba(20,25,35,0.8), rgba(15,20,28,0.7));
  color: #dbe1e8;
  border-color: rgba(255,255,255,0.05);
  box-shadow: 0 6px 20px rgba(0,0,0,0.45);
}
[data-theme="dark"] .reply-body::before {
  background: linear-gradient(180deg, #22d3ee, #8b5cf6, #f472b6);
  opacity: 0.9;
}

/* --- Links and emphasis inside text --- */
.reply-body a {
  color: #2563eb;
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600;
}
.reply-body a:hover {
  text-decoration-thickness: 2px;
}
.reply-body strong {
  color: #111;
  font-weight: 700;
}
.reply-body em {
  color: #374151;
  opacity: 0.9;
  font-style: italic;
}

/* --- Dark mode colors for inner text --- */
[data-theme="dark"] .reply-body a {
  color: #93c5fd;
}
[data-theme="dark"] .reply-body strong {
  color: #f8fafc;
}
[data-theme="dark"] .reply-body em {
  color: #cbd5e1;
}

/* ==== FIX: Prevent topbar icons from stretching ==== */
.topbar-right {
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:10px;
    min-width: 0 !important;
    flex-shrink: 0 !important;
}

.notify-wrap,
.hi_user,
.avatar_menu,
.userbox-avatar,
.notify-bell {
    flex-shrink: 0 !important;
}

/* ==== FIX: Long text wrapping ==== */
.tkt-content,
.reply-body,
.av-cmt__body,
.reply-body p,
.tkt-content p {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
}

.tkt-content a {
    word-break: break-all !important;
}