/* ═══ BUSINESS HOURS ═══ */

.bh-grid{display:flex;flex-direction:column;gap:var(--space-1)}

.bh-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm)}

.bh-status-label{flex:1;font-size:var(--fs-sm);font-weight:600}

.bh-status-label.open{color:var(--success)}

.bh-status-label.closed{color:var(--text4)}

.bh-toggle{position:relative;width:36px;height:20px;background:var(--border);border-radius:var(--radius-md);cursor:pointer;flex-shrink:0;border:none;padding:0;transition:background .2s cubic-bezier(.4,0,.2,1)}

.bh-toggle.on{background:var(--brand)}

.bh-toggle::after{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--white);border-radius:50%;box-shadow:var(--shadow-sm);transition:transform .2s cubic-bezier(.4,0,.2,1)}

.bh-toggle.on::after{transform:translateX(16px)}

.bh-save{margin-top:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-sm);background:var(--brand);color:var(--white);border:none;font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:opacity .12s ease;width:100%}

.bh-save:hover{opacity:.85}

.bh-autoreply{display:flex;flex-direction:column;gap:var(--space-2)}

.bh-ar-toggle-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0}

.bh-ar-label{font-size:var(--fs-sm);color:var(--text2);flex:1}

.bh-ar-textarea{width:100%;min-height:80px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:var(--fs-sm);font-family:inherit;resize:vertical;outline:none;box-sizing:border-box}

.bh-ar-textarea:focus{border-color:var(--brand)}

.bh-ar-textarea:disabled{opacity:.4}

/* ═══ SNOOZE ═══ */

.snooze-badge{display:inline-flex;align-items:center;gap:var(--space-1);font-size:10px;color:var(--warn);background:var(--yellow-10);border-radius:var(--radius-sm);padding:2px var(--space-2);font-weight:500;line-height:1.4;white-space:nowrap}

.snooze-badge svg{width:12px;height:12px;flex-shrink:0}

.convo-item .snooze-badge{margin-left:var(--space-1)}

.snooze-submenu{position:fixed;background:var(--panel-elevated);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:100001;min-width:200px;padding:var(--space-1) 0;overflow:hidden;border:1px solid var(--overlay-white-6);backdrop-filter:blur(8px)}

.snooze-submenu-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:var(--text);cursor:pointer;font-size:var(--fs-sm);font-weight:400;border:none;background:none;width:100%;text-align:left}

.snooze-submenu-item:hover{background:var(--overlay-white-7)}

.snooze-submenu-item:active{background:var(--overlay-white-10)}

.snooze-submenu-item .snz-icon{width:18px;height:18px;color:var(--text3);flex-shrink:0;display:flex;align-items:center;justify-content:center}

.chat-snooze-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);border:none;background:none;color:var(--text3);cursor:pointer}

.chat-snooze-btn:hover{background:var(--overlay-white-6);color:var(--text2)}

.chat-snooze-btn.snoozed{color:var(--warn)}

[data-theme="light"] .snooze-submenu{background:var(--bg2);border:1px solid var(--overlay-dark-6);box-shadow:var(--shadow-md)}

[data-theme="light"] .snooze-submenu-item{color:var(--text2)}

[data-theme="light"] .snooze-submenu-item:hover{background:var(--bg3)}

[data-theme="light"] .chat-snooze-btn:hover{background:var(--overlay-dark-4);color:var(--text2)}

/* ═══ CLOSED CONVERSATION ═══ */

.closed-badge{display:inline-flex;align-items:center;font-size:10px;color:var(--success,var(--success));background:var(--green-10);border-radius:var(--radius-sm);padding:2px var(--space-2);font-weight:500;line-height:1.4;white-space:nowrap;margin-left:var(--space-1)}

.chat-close-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);border:none;background:none;color:var(--text3);cursor:pointer}

.chat-close-btn:hover{background:var(--overlay-white-6);color:var(--text2)}

.chat-close-btn.closed{color:var(--success,var(--success))}

[data-theme="light"] .chat-close-btn:hover{background:var(--overlay-dark-4);color:var(--text2)}

[data-theme="light"] .closed-badge{color:var(--success-dark);background:var(--green-8-light)}

.msg-system{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);text-align:center}

.msg-system-text{font-size:12px;color:var(--text3);font-weight:500}

.msg-system-time{font-size:10px;color:var(--text3);opacity:.6}

/* ═══ REDUCED MOTION ═══ */

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
}

/* ═══ CONVERSATION TAGS ═══ */

.conv-tag{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:2px var(--space-2);border-radius:var(--radius-sm);white-space:nowrap;line-height:1.5;letter-spacing:0.01em}

.convo-conv-tags{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:2px}

.chat-note-strip{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--brand-10);border-bottom:1px solid var(--brand-15)}

.note-icon{font-size:13px;color:var(--brand);flex-shrink:0}

.note-text{font-size:var(--fs-sm,13px);font-weight:500;color:var(--brand);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.note-author{font-size:var(--fs-xs,12px);font-weight:500;color:var(--brand-65);white-space:nowrap;flex-shrink:0}

.note-x{font-size:var(--fs-md);font-weight:700;color:var(--brand-40);cursor:pointer;line-height:1;flex-shrink:0;padding:0 2px}

.note-x:hover{color:var(--brand)}

.chat-note-input-row{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--bg2);border-bottom:1px solid var(--border);align-items:center}

.note-input{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:var(--fs-sm,13px);color:var(--text);outline:none;font-family:inherit}

.note-input:focus{border-color:var(--brand)}

.note-input::placeholder{color:var(--text4)}

.note-save-btn{background:var(--brand);color:var(--white);border:none;border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);font-size:var(--fs-sm,13px);font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit}

.note-save-btn:hover{opacity:.9}

.note-save-btn:disabled{opacity:.5;cursor:default}

.convo-note-preview{font-size:11px;color:var(--brand);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:var(--space-1)}

.convo-note-icon{font-size:10px;flex-shrink:0}

/* ═══ INTERNAL CALL OVERLAY (WebRTC — FaceTime/Telegram style) ═══ */

.ic-call-overlay{position:fixed;inset:0;z-index:200000;display:none;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}

.ic-call-overlay.active{display:flex}

.ic-call-bg{position:absolute;inset:0;background:var(--call-bg)}

.ic-call-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;width:100%;height:100%}

.ic-call-status{position:absolute;top:60px;left:0;right:0;text-align:center;font-size:13px;font-weight:500;color:var(--overlay-white-50);letter-spacing:.05em;text-transform:uppercase;z-index:4}

.ic-call-avatar{position:absolute;top:50%;left:50%;transform:translate(-50%,-60%);width:140px;height:140px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:1}

.ic-call-avatar .avatar{width:140px;height:140px;font-size:56px;border-radius:50%}

.ic-call-name{position:absolute;top:50%;left:0;right:0;transform:translateY(32px);font-size:var(--fs-3xl);font-weight:600;color:var(--white);text-align:center;z-index:4}

.ic-call-timer{position:absolute;top:88px;left:0;right:0;text-align:center;font-size:var(--fs-md);font-weight:400;color:var(--white-45);min-height:20px;font-variant-numeric:tabular-nums;z-index:4}

.ic-call-actions{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:28px;padding:0 var(--space-6) 64px;z-index:10;background:linear-gradient(transparent 0%,rgba(0,0,0,.5) 100%)}

.ic-call-btn{width:60px;height:60px;border-radius:50%;border:none;background:var(--overlay-white-15);color:var(--white);cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;position:relative;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}

.ic-call-btn:active{opacity:.85}

.ic-call-btn svg{flex-shrink:0}

.ic-call-btn-label{font-size:10px;font-weight:500;color:var(--overlay-white-60);position:absolute;bottom:-20px;white-space:nowrap;left:50%;transform:translateX(-50%)}

.ic-call-btn.active{background:var(--overlay-white-35)}

.ic-call-btn.hangup{background:var(--danger);width:68px;height:68px}

.ic-call-btn.hangup:active{background:var(--danger-dark)}

.ic-call-btn.decline{background:var(--danger);width:68px;height:68px}

.ic-call-btn.decline:active{background:var(--danger-dark)}

.ic-call-btn.accept{background:var(--success);width:68px;height:68px}

.ic-call-btn.accept:active{background:var(--success-dark)}

.ic-call-incoming-actions{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:80px;padding:0 var(--space-6) 64px;z-index:10;background:linear-gradient(transparent 0%,rgba(0,0,0,.5) 100%)}

.ic-call-video-remote{display:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;background:var(--call-video-bg)}

.ic-call-video-local{display:none;position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1}

.ic-call-overlay.video-active .ic-call-bg{opacity:0}

.ic-call-overlay.video-active .ic-call-avatar{display:none}

.ic-call-overlay.video-active .ic-call-name{top:20px;transform:none;font-size:18px;text-shadow:0 1px 8px var(--overlay-dark);text-align:left;left:20px;right:auto}

.ic-call-overlay.video-active .ic-call-status{display:none}

.ic-call-overlay.video-active .ic-call-timer{top:44px;text-shadow:0 1px 8px var(--overlay-dark);text-align:left;left:20px;right:auto}

.ic-call-overlay.video-active .ic-call-video-local{width:160px;height:214px;top:20px;right:20px;left:auto;border-radius:var(--radius-lg);border:2px solid var(--overlay-white-15);box-shadow:0 8px 32px rgba(0,0,0,.5)}

[data-theme="light"] .ic-call-bg{background:var(--call-bg)}

[data-theme="light"] .ic-call-status{color:var(--overlay-dark-45)}

[data-theme="light"] .ic-call-name{color:var(--call-text)}

[data-theme="light"] .ic-call-timer{color:var(--overlay-dark-30)}

[data-theme="light"] .ic-call-btn{background:var(--overlay-dark-10);color:var(--call-text);backdrop-filter:blur(8px)}

[data-theme="light"] .ic-call-btn.active{background:var(--overlay-dark-20)}

[data-theme="light"] .ic-call-btn svg{stroke:var(--call-text)}

[data-theme="light"] .ic-call-btn-label{color:var(--overlay-dark-45)}

[data-theme="light"] .ic-call-btn.hangup,.ic-call-btn.decline{background:var(--danger);color:var(--white)}

[data-theme="light"] .ic-call-btn.hangup svg,[data-theme="light"] .ic-call-btn.decline svg{stroke:var(--white)}

[data-theme="light"] .ic-call-btn.accept{background:var(--success);color:var(--white)}

#ic-video-call-hdr-btn{color:var(--text3)}

#ic-video-call-hdr-btn:hover{color:var(--text);background:var(--hover-overlay)}

@media(max-width:768px){
  #ic-video-call-hdr-btn,.chat-header #chat-call-btn{min-width:44px;min-height:44px}
  .ic-call-avatar{width:110px;height:110px}
  .ic-call-avatar .avatar{width:110px;height:110px;font-size:44px}
  .ic-call-name{font-size:var(--fs-3xl-minus)}
  .ic-call-actions{padding:0 var(--space-4) 48px;gap:var(--space-5)}
  .ic-call-incoming-actions{padding:0 var(--space-4) 48px;gap:56px}
  .ic-call-overlay.video-active .ic-call-video-local{width:100px;height:134px;top:16px;right:12px;border-radius:var(--radius-md)}
}

[data-theme="light"] .chat-note-strip{background:var(--brand-8);border-bottom:1px solid var(--brand-10)}

[data-theme="light"] .chat-note-input-row{background:var(--bg);border-bottom:1px solid var(--overlay-dark-6)}

[data-theme="light"] .note-input{background:var(--white);border-color:var(--overlay-dark-10);color:var(--text)}

/* Closed conversations */

.convo-item.closed{opacity:.6}

/* ═══ SAVED VIEWS ═══ */

.saved-views-dropdown{position:fixed;min-width:280px;max-width:340px;background:var(--panel-elevated);border:1px solid var(--overlay-white-6);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:500;padding:0;max-height:400px;overflow-y:auto}

.sv-list{padding:var(--space-2) 0}

.sv-empty{padding:var(--space-5) var(--space-4);text-align:center;color:var(--text4);font-size:var(--fs-sm)}

.sv-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-sm);margin:0 var(--space-2);transition:background .12s ease}

.sv-item:hover{background:var(--border-light)}

.sv-item.active{background:var(--teal-bg)}

.sv-item-info{flex:1;min-width:0}

.sv-item-name{font-size:var(--fs-sm);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.sv-item-desc{font-size:var(--fs-xs);color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}

.sv-item-actions{display:flex;gap:var(--space-1);flex-shrink:0;opacity:0;transition:opacity .12s ease}

.sv-item:hover .sv-item-actions{opacity:1}

.sv-item-edit,.sv-item-del{background:none;border:none;padding:var(--space-1);border-radius:var(--radius-xs);cursor:pointer;color:var(--text3);display:flex;align-items:center;justify-content:center}

.sv-item-edit:hover{color:var(--teal);background:var(--teal-bg)}

.sv-item-del:hover{color:var(--danger);background:var(--danger-hover-bg)}

.sv-actions{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border)}

.sv-save-btn{width:100%;background:none;border:1px dashed var(--border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);color:var(--text3);font-size:var(--fs-sm);cursor:pointer;transition:color .12s ease,border-color .12s ease}

.sv-save-btn:hover{color:var(--teal);border-color:var(--teal)}

.sv-modal-overlay{position:fixed;inset:0;background:var(--overlay-dark-50);z-index:9999;display:flex;align-items:center;justify-content:center;padding:var(--space-5)}

.sv-modal{background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);width:100%;max-width:380px;box-shadow:var(--shadow-xl)}

.sv-modal-title{font-size:var(--fs-md);font-weight:700;color:var(--text);margin-bottom:var(--space-4)}

.sv-modal-input{width:100%;padding:var(--space-3);background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--fs-base);outline:none;transition:border-color .12s ease}

.sv-modal-input:focus{border-color:var(--teal)}

.sv-modal-preview{margin-top:var(--space-3);display:flex;flex-wrap:wrap;gap:var(--space-1);min-height:28px}

.sv-preview-tag{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-full);background:var(--teal-bg);color:var(--teal);font-size:var(--fs-xs);font-weight:500}

.sv-modal-btns{display:flex;gap:var(--space-2);margin-top:var(--space-5);justify-content:flex-end}

.sv-modal-btn{padding:var(--space-2) var(--space-5);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:600;cursor:pointer;border:none}

.sv-modal-btn.cancel{background:transparent;color:var(--text3);border:1px solid var(--border)}

.sv-modal-btn.cancel:hover{background:var(--hover-overlay)}

.sv-modal-btn.save{background:var(--teal);color:var(--white)}

.sv-modal-btn.save:hover{background:var(--teal-hover)}

.sv-item-edit:active,.sv-item-del:active{opacity:.85}

.sv-save-btn:active{opacity:.85}

.sv-modal-btn:active{opacity:.85}

[data-theme="light"] .saved-views-dropdown{background:var(--white);border:1px solid var(--border);box-shadow:var(--shadow-lg)}

[data-theme="light"] .sv-item:hover{background:var(--bg3)}

[data-theme="light"] .sv-item.active{background:var(--teal-8)}

[data-theme="light"] .sv-modal{background:var(--white);border:1px solid var(--border)}

[data-theme="light"] .sv-modal-input{background:var(--bg);border:1px solid var(--border);color:var(--text)}

[data-theme="light"] .sv-save-btn{border-color:var(--border);color:var(--text3)}

[data-theme="light"] .sv-actions{border-top:1px solid var(--bg3)}

/* ─── Analytics ─────────────────────────────────────────── */

.analytics-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3);margin-bottom:var(--space-5)}

.analytics-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);text-align:center}

.analytics-card.accent{background:var(--bg2);border-color:var(--brand-20)}

.analytics-card-label{font-size:12px;color:var(--text3);margin-bottom:var(--space-1);font-weight:500}

.analytics-card-value{font-size:var(--fs-2xl-plus);font-weight:700;color:var(--text1)}

.analytics-card-value.big{font-size:var(--fs-3xl);color:var(--brand)}

.analytics-card-value .analytics-card-sub{font-size:14px;font-weight:400;color:var(--text3)}

.analytics-card-sub{font-size:11px;color:var(--text4);margin-top:var(--space-1)}

.analytics-section{margin-bottom:var(--space-6)}

.analytics-section-title{font-size:14px;font-weight:600;color:var(--text1);margin-bottom:var(--space-3)}

.analytics-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg2)}

.analytics-table{width:100%;border-collapse:collapse;font-size:13px}

.analytics-table th{text-align:left;padding:var(--space-3) var(--space-4);color:var(--text3);font-weight:500;border-bottom:1px solid var(--border);font-size:12px}

.analytics-table td{padding:var(--space-3) var(--space-4);color:var(--text1);border-bottom:1px solid var(--border)}

.analytics-table tr:last-child td{border-bottom:none}

.analytics-table tr:hover td{background:var(--bg3)}

.analytics-legend{display:flex;align-items:center;gap:var(--space-2);font-size:11px;color:var(--text3);margin-bottom:var(--space-2)}

.analytics-legend-dot{width:8px;height:8px;border-radius:var(--radius-xs);display:inline-block}

.analytics-chart-wrap{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg2);padding:var(--space-3);overflow-x:auto}

.analytics-heatmap{display:flex;flex-direction:column;gap:2px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg2);padding:var(--space-3);overflow-x:auto}

.heatmap-row{display:flex;gap:2px;align-items:center}

.heatmap-label{width:32px;font-size:10px;color:var(--text3);text-align:right;padding-right:var(--space-1);flex-shrink:0}

.heatmap-header{width:16px;height:16px;font-size:8px;color:var(--text4);text-align:center;flex-shrink:0;display:flex;align-items:center;justify-content:center}

.heatmap-cell{width:16px;height:16px;border-radius:var(--radius-xs);flex-shrink:0;cursor:default}

.analytics-heatmap-legend{display:flex;align-items:center;gap:var(--space-1);font-size:10px;color:var(--text3);margin-bottom:var(--space-2)}

.analytics-heatmap-legend span{width:12px;height:12px;border-radius:var(--radius-xs);display:inline-block}

/* ─── @Mention Autocomplete ─── */

.mention-dropdown{position:fixed;z-index:100000;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);min-width:220px;max-width:300px;max-height:240px;overflow-y:auto;padding:var(--space-1) 0}

.mention-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);cursor:pointer}

.mention-item:hover{background:var(--overlay-white-6)}

.mention-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}

.mention-info{flex:1;min-width:0}

.mention-name{font-size:var(--fs-sm);font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.mention-username{font-size:var(--fs-xs);color:var(--text3)}

.mention-highlight{background:var(--brand-15);color:var(--brand);padding:0 var(--space-1);border-radius:var(--radius-xs);font-weight:600}

[data-theme="light"] .mention-dropdown{background:var(--white);border:1px solid var(--overlay-dark-10)}

[data-theme="light"] .mention-item:hover{background:var(--overlay-dark-4)}

[data-theme="light"] .mention-highlight{background:var(--brand-10);color:var(--blue)}
