/* ChosenCloud Knowledge — UI vívida */
#page-topbar .navbar-header > .d-flex:first-child {
	align-items: center;
	min-width: 0;
}
#page-topbar .cc-global-search-form {
	flex: 1 1 auto;
	min-width: 12rem;
	max-width: min(22rem, 32vw);
	margin-left: 0.5rem;
}
#page-topbar .cc-global-search-form .position-relative {
	width: 100%;
}
#page-topbar .cc-global-search-form .form-control {
	width: 100%;
	min-width: 12rem;
}
/* Painel Ctrl+K — meio-termo entre Velzon (320px) e a versão anterior (560px) */
#page-topbar #search-dropdown.dropdown-menu {
	width: min(420px, calc(100vw - 1.5rem)) !important;
	min-width: 100%;
	max-width: calc(100vw - 1.5rem);
	left: 0 !important;
	right: auto !important;
	margin-top: 0.35rem;
	padding: 0;
	box-shadow: 0 12px 40px rgba(15, 23, 42, 0.14);
}
#page-topbar #search-dropdown .cc-gs-ia-box,
#page-topbar #search-dropdown .cc-gs-item {
	max-width: none;
}
.cc-kb-body { background: linear-gradient(180deg, #f8fafc 0%, #fff 120px); }
.cc-kb-hero {
	background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 35%, #ec4899 70%, #f97316 100%);
	border-radius: 1.25rem; padding: 2rem; box-shadow: 0 20px 50px rgba(99,102,241,.25); overflow: hidden; position: relative;
}
.cc-kb-hero-title { color: #fff; font-weight: 700; font-size: 2rem; }
.cc-kb-hero-lead { color: rgba(255,255,255,.9); }
.cc-kb-badge { display:inline-flex;gap:.35rem;background:rgba(255,255,255,.2);color:#fff;padding:.35rem .75rem;border-radius:2rem;font-size:.8rem;font-weight:600; }
.cc-kb-hero-cards { display:flex; gap:.75rem; flex-wrap:wrap; justify-content:flex-end; }
.cc-kb-stat-card { --cc-kb-accent:#10b981; background:#fff; border-radius:1rem; padding:1rem; min-width:6.5rem; text-align:center; border-top:4px solid var(--cc-kb-accent); box-shadow:0 8px 24px rgba(0,0,0,.08); }
.cc-kb-stat-card i { font-size:1.5rem; color:var(--cc-kb-accent); display:block; }
.cc-kb-module-card { display:flex; gap:1rem; padding:1.25rem; background:#fff; border-radius:1rem; border:1px solid #e2e8f0; color:inherit; height:100%; transition:.2s; text-decoration:none; }
.cc-kb-module-card:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(15,23,42,.1); border-color:var(--cc-kb-accent,#6366f1); }
.cc-kb-module-icon { width:3rem;height:3rem;border-radius:.85rem;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--cc-kb-accent,#6366f1);font-size:1.35rem;flex-shrink:0; }
.cc-kb-article-card { display:block;padding:1.25rem;background:#fff;border-radius:1rem;border-left:4px solid var(--cc-kb-accent,#405189);box-shadow:0 4px 14px rgba(15,23,42,.06);color:inherit;height:100%;text-decoration:none; }
.cc-kb-article-cat { font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--cc-kb-accent);font-weight:700; }
.cc-kb-search-header {
	background: var(--vz-primary, #405189);
	border-radius: 0.5rem;
	padding: 1.25rem 1.5rem;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}
.cc-kb-article-view .cc-kb-article-header {
	background: var(--vz-primary, #405189);
	border-radius: 0.5rem;
	padding: 1.5rem 1.75rem;
	color: #fff;
	margin-bottom: 0.75rem;
}
.cc-kb-article-view .cc-kb-article-header .cc-kb-article-cat {
	color: rgba(255, 255, 255, 0.85);
}
.cc-kb-article-view .cc-kb-article-header .lead {
	color: rgba(255, 255, 255, 0.85);
	font-size: 1rem;
}
.cc-kb-article-view h1 { color:#fff; }
#cc-global-search-dropdown .dropdown-header { font-size:.68rem;font-weight:700;letter-spacing:.08em;color:#94a3b8; }
.cc-gs-results-scroll { max-height: min(480px, 60vh); overflow: auto; }
.cc-gs-item { display:flex;gap:.75rem;align-items:flex-start;padding:.65rem 1rem;color:inherit;text-decoration:none;border-radius:.5rem;margin:0 .35rem; }
.cc-gs-item:hover { background:#f1f5f9; }
.cc-gs-icon { width:2rem;height:2rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0; }
.cc-gs-ia-box { margin:.5rem .75rem;padding:.85rem 1rem;border-radius:.85rem;background:linear-gradient(135deg,#eef2ff,#fdf4ff);border:1px solid #e0e7ff;font-size:.85rem; }
.cc-gs-ia-text { color:#334155;line-height:1.5; }
.cc-gs-ia-fontes { display:flex;flex-direction:column;gap:.35rem; }
.cc-gs-ia-fonte { font-size:.78rem;color:#4f46e5;text-decoration:none;display:flex;align-items:center;gap:.35rem; }
.cc-gs-ia-fonte:hover { text-decoration:underline; }
.cc-gs-atalhos-label { font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin-bottom:.4rem; }
.cc-gs-atalhos-list { display:flex;flex-direction:column;gap:.35rem; }
.cc-gs-atalho { display:flex;align-items:flex-start;gap:.55rem;padding:.4rem .55rem;border-radius:.55rem;background:#fff;border:1px solid #e2e8f0;text-decoration:none;color:#0f172a;transition:.15s; }
.cc-gs-atalho:hover { border-color:var(--cc-kb-accent,#6366f1);background:#f8fafc; }
.cc-gs-atalho-ico { width:1.65rem;height:1.65rem;border-radius:.4rem;display:flex;align-items:center;justify-content:center;background:var(--cc-kb-accent,#405189);color:#fff;flex-shrink:0;font-size:.85rem; }
.cc-gs-atalho-txt { min-width:0;line-height:1.25; }
.cc-gs-atalho-txt small { display:block;color:#94a3b8;font-size:.68rem;word-break:break-all; }
.cc-gs-mod-link { color:#6366f1;margin-left:.25rem;font-size:.85em; }
.cc-gs-mod-estrutura { margin:.5rem .75rem;padding:.75rem .85rem;border-radius:.85rem;border:1px solid color-mix(in srgb,var(--cc-kb-accent,#0891b2) 28%,#e2e8f0);background:#fff; }
.cc-gs-mod-head { display:flex;align-items:center;gap:.55rem;margin-bottom:.55rem; }
.cc-gs-mod-telas { display:flex;flex-wrap:wrap;gap:.4rem; }
.cc-gs-tela { display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .65rem;border-radius:.5rem;background:color-mix(in srgb,var(--cc-kb-accent,#0891b2) 12%,#fff);color:#0f172a;text-decoration:none;font-size:.8rem;font-weight:600;border:1px solid color-mix(in srgb,var(--cc-kb-accent,#0891b2) 22%,#e2e8f0); }
.cc-gs-tela:hover { background:var(--cc-kb-accent,#0891b2);color:#fff;border-color:transparent; }
.cc-gs-tela i { font-size:.95rem; }
.cc-kb-mod-estrutura { border-left:4px solid var(--cc-kb-accent,#405189); }
.cc-kb-mod-estrutura-ico { width:2.25rem;height:2.25rem;border-radius:.55rem;display:inline-flex;align-items:center;justify-content:center;background:var(--cc-kb-accent,#405189);color:#fff; }
.cc-kb-tela-btn { border:1px solid color-mix(in srgb,var(--cc-kb-accent,#405189) 25%,#e2e8f0);background:color-mix(in srgb,var(--cc-kb-accent,#405189) 10%,#fff);color:#0f172a;font-weight:600; }
.cc-kb-tela-btn:hover { background:var(--cc-kb-accent,#405189);color:#fff;border-color:transparent; }
.cc-kb-mod-title-link { color:inherit;text-decoration:none; }
.cc-kb-mod-title-link:hover { color:var(--cc-kb-accent,#405189);text-decoration:underline; }
.cc-kb-inline-link { color:#405189;font-weight:600;text-decoration:underline;text-underline-offset:2px; }
.cc-kb-inline-link:hover { color:#2a3559; }
.cc-gs-ia-text .cc-kb-inline-link { color:#4338ca; }
.cc-kb-tela-card {
	display:flex;align-items:center;gap:.75rem;padding:1rem 1.1rem;border:1px solid #e2e8f0;border-radius:.75rem;
	text-decoration:none;color:#0f172a;height:100%;transition:.15s;background:#fff;
}
.cc-kb-tela-card:hover { border-color:var(--cc-kb-accent,#405189);box-shadow:0 8px 20px rgba(15,23,42,.08);color:#0f172a; }
.cc-kb-tela-card-ico {
	width:2.5rem;height:2.5rem;border-radius:.55rem;display:inline-flex;align-items:center;justify-content:center;
	background:color-mix(in srgb,var(--cc-kb-accent,#405189) 14%,#fff);color:var(--cc-kb-accent,#405189);flex-shrink:0;font-size:1.15rem;
}
.cc-kb-atalho-btn { display:inline-flex;align-items:flex-start;gap:.5rem;text-align:left;border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:.65rem;padding:.45rem .7rem; }
.cc-kb-atalho-btn:hover { border-color:var(--cc-kb-accent,#6366f1);background:#f8fafc;color:#0f172a; }
.cc-kb-atalho-ico { width:1.75rem;height:1.75rem;border-radius:.45rem;display:inline-flex;align-items:center;justify-content:center;background:var(--cc-kb-accent,#405189);color:#fff;flex-shrink:0; }
.cc-kb-context-fab { position:fixed;bottom:6.5rem;right:1.25rem;z-index:1035;width:3.25rem;height:3.25rem;display:flex;align-items:center;justify-content:center; }
.cc-kb-context-panel { position:fixed;bottom:10.25rem;right:1.25rem;width:min(24rem,calc(100vw - 2rem));max-height:min(60vh,28rem);overflow:auto;z-index:1035;display:none; }
.cc-kb-context-panel.show { display:block; }
.cc-kb-ctx-card { background:#fff;border-radius:1rem;box-shadow:0 16px 48px rgba(15,23,42,.18);overflow:hidden;border:1px solid #e2e8f0; }
.cc-kb-ctx-header { --cc-kb-accent:#6366f1;display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;padding:.85rem 1rem;background:linear-gradient(135deg,var(--cc-kb-accent),color-mix(in srgb,var(--cc-kb-accent) 70%,#8b5cf6));color:#fff; }
.cc-kb-ctx-header .btn-ghost-light { color:#fff;opacity:.9;padding:.15rem .35rem; }
.cc-kb-ctx-rota { font-size:.65rem;opacity:.85;word-break:break-all; }
.cc-kb-ctx-list { list-style:none;margin:0;padding:.35rem 0; }
.cc-kb-ctx-item { display:flex;gap:.75rem;padding:.75rem 1rem;color:inherit;text-decoration:none;border-bottom:1px solid #f1f5f9;transition:.15s; }
.cc-kb-ctx-item:hover { background:#f8fafc; }
.cc-kb-ctx-item-icon { width:2.25rem;height:2.25rem;border-radius:.65rem;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--cc-kb-accent,#6366f1) 15%,#fff);color:var(--cc-kb-accent,#6366f1);flex-shrink:0; }
.cc-kb-ctx-cat { display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--cc-kb-accent,#6366f1);font-weight:700; }
.cc-kb-ctx-title { display:block;font-weight:600;color:#0f172a;font-size:.9rem; }
.cc-kb-ctx-resumo { display:block;font-size:.78rem;color:#64748b;margin-top:.15rem;line-height:1.35; }
.cc-kb-ctx-footer { background:#f8fafc;border-top:1px solid #e2e8f0; }
@media (max-width: 575.98px) {
	.cc-kb-context-fab { bottom:5.5rem;right:1rem; }
	.cc-kb-context-panel { right:1rem;bottom:9rem; }
}
.cc-kb-prose { line-height: 1.65; color: #334155; }
.cc-kb-prose h2, .cc-kb-prose h3 { margin-top: 1.25rem; color: #0f172a; font-weight: 600; }
.cc-kb-prose h2 { font-size: 1.15rem; }
.cc-kb-prose h3 { font-size: 1rem; }
.cc-kb-prose p, .cc-kb-prose li { margin-bottom: 0.5rem; }
.cc-kb-prose ul, .cc-kb-prose ol { padding-left: 1.25rem; }
.cc-kb-prose kbd { background: #f1f5f9; border: 1px solid #e2e8f0; border-radius: 0.25rem; padding: 0.1rem 0.35rem; font-size: 0.85em; }
.cc-kb-prose code { background: #f8fafc; padding: 0.1rem 0.35rem; border-radius: 0.25rem; color: #6366f1; }
.cc-kb-assistant { border-left: 4px solid #8b5cf6; }
.cc-kb-assistant-icon { width:2rem;height:2rem;border-radius:.5rem;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#ec4899);color:#fff; }
.cc-kb-inline-search input { border-radius: 0.75rem !important; }
.cc-kb-step,.cc-kb-tip,.cc-kb-warn,.cc-kb-danger,.cc-kb-info { border-radius:.5rem;padding:.65rem .85rem;margin:.65rem 0;border-left:4px solid #405189;background:#f8fafc; }
.cc-kb-tip { border-left-color:#0ab39c;background:#e8f8f5; }
.cc-kb-warn { border-left-color:#f7b84b;background:#fff8e6; }
.cc-kb-danger { border-left-color:#f06548;background:#fdecea; }
.cc-kb-info { border-left-color:#405189;background:#eef1f8; }
.cc-kb-menu-ref { font-weight:600;color:#405189; }
.cc-kb-btn-ref { display:inline-block;background:#405189;color:#fff;padding:.1rem .45rem;border-radius:.25rem;font-size:.85em; }
.cc-kb-cmp { font-size:.9rem;margin:.75rem 0; }
