/* ===== Command palette (⌘K) + Notifications bell — premium-3.78 ===== */

/* ⌘K hint (já existe .search-kbd) — só garante cursor */
.search-kbd { cursor: pointer; }

.cmdk-overlay {
    position: fixed;
    inset: 0;
    z-index: 1200;
    background: rgba(8, 14, 26, .45);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 12vh;
}
.cmdk-overlay.hidden { display: none; }
.cmdk-panel {
    width: 100%;
    max-width: 560px;
    background-color: var(--bg-surface);
    background-image: linear-gradient(90deg, var(--brand-mid), var(--accent));
    background-repeat: no-repeat;
    background-size: 100% 3px;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-lg);
    overflow: hidden;
    animation: cmdkIn .18s ease;
}
@keyframes cmdkIn { from { opacity: 0; transform: translateY(-8px) scale(.99); } to { opacity: 1; transform: none; } }
.cmdk-input {
    width: 100%;
    border: none;
    outline: none;
    padding: 16px 18px;
    font: 500 15px var(--font-sans);
    color: var(--text-primary);
    background: var(--bg-surface);
    border-bottom: 1px solid var(--border);
}
.cmdk-list { max-height: 340px; overflow-y: auto; padding: 6px; }
.cmdk-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: var(--radius-sm);
    cursor: pointer;
    font: 600 13.5px var(--font-sans);
    color: var(--text-primary);
}
.cmdk-item .cmdk-kind {
    margin-left: auto;
    font: 600 10px var(--font-sans);
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: .05em;
}
.cmdk-item.active { background: rgba(0, 61, 165, .08); }
.cmdk-empty { padding: 22px; text-align: center; color: var(--text-muted); font: 500 13px var(--font-sans); }

.notif-wrap { position: relative; }
.notif-bell {
    position: relative;
    width: 40px;
    height: 40px;
    border-radius: var(--radius-sm);
    background: var(--bg-surface);
    border: 1px solid var(--border);
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: border-color .15s, color .15s;
}
.notif-bell:hover { border-color: var(--brand-mid); color: var(--text-primary); }
.notif-badge {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    border-radius: 20px;
    background: var(--accent);
    color: #fff;
    font: 800 10px var(--font-sans);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--bg-surface);
}
.notif-badge.hidden { display: none; }
.notif-dropdown {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    width: 340px;
    max-height: 60vh;
    overflow-y: auto;
    background: var(--bg-surface);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-lg);
    z-index: 1100;
    padding: 6px;
}
.notif-dropdown.hidden { display: none; }
.notif-head {
    padding: 10px 12px 6px;
    font: 800 11px var(--font-sans);
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--text-muted);
}
.notif-item {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 10px 12px;
    border-radius: var(--radius-sm);
    cursor: pointer;
}
.notif-item:hover { background: var(--bg-hover); }
.notif-item .nt-msg { font: 600 13px var(--font-sans); color: var(--text-primary); line-height: 1.35; }
.notif-item .nt-time { font: 500 11px var(--font-sans); color: var(--text-muted); }
.notif-empty { padding: 24px 12px; text-align: center; color: var(--text-muted); font: 500 13px var(--font-sans); }
