/* IT Helpdesk & Knowledge Base — front-end styles */
:root { --ithdkb-brand:#2271b1; --ithdkb-accent:#00a32a; }

.ithdkb-dashboard { display:flex; gap:24px; align-items:flex-start; max-width:1100px; margin:0 auto; }
.ithdkb-sidebar { flex:0 0 220px; background:#fff; border:1px solid #e2e4e7; border-radius:12px; padding:14px; }
.ithdkb-content { flex:1; min-width:0; }
.ithdkb-user-box { font-weight:700; padding:8px 10px; margin-bottom:10px; border-bottom:1px solid #eee; }
.ithdkb-nav-item { display:flex; align-items:center; gap:8px; padding:10px 12px; border-radius:8px; text-decoration:none; color:#1d2327; margin-bottom:2px; }
.ithdkb-nav-item:hover { background:#f0f6fc; }
.ithdkb-nav-item.ithdkb-active { background:var(--ithdkb-brand); color:#fff; }
.ithdkb-nav-item.ithdkb-active .dashicons { color:#fff; }
.ithdkb-logout { color:#d63638; margin-top:8px; border-top:1px solid #eee; }

.ithdkb-card { background:#fff; border:1px solid #e2e4e7; border-radius:12px; padding:18px 20px; margin-bottom:16px; }
.ithdkb-login-wrap { max-width:420px; margin:40px auto; }
.ithdkb-login-card h2 { margin-top:0; }
.ithdkb-login-card input[type=text], .ithdkb-login-card input[type=password] { width:100%; padding:10px; border:1px solid #ccd0d4; border-radius:8px; }
.ithdkb-login-card label { display:block; font-weight:600; margin-bottom:4px; }

.ithdkb-btn { display:inline-flex; align-items:center; gap:6px; padding:9px 16px; border-radius:8px; border:1px solid #ccd0d4; background:#f6f7f7; color:#1d2327; text-decoration:none; cursor:pointer; font-size:14px; }
.ithdkb-btn:hover { background:#eef1f3; }
.ithdkb-btn-primary { background:var(--ithdkb-brand); border-color:var(--ithdkb-brand); color:#fff; }
.ithdkb-btn-primary:hover { filter:brightness(1.08); color:#fff; }

.ithdkb-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:14px; margin:16px 0; }
.ithdkb-stat { background:#fff; border:1px solid #e2e4e7; border-radius:12px; padding:18px; text-align:center; }
.ithdkb-stat-num { font-size:34px; font-weight:800; line-height:1; }
.ithdkb-stat-label { color:#646970; margin-top:6px; font-size:13px; }

.ithdkb-table, .ithdkb-log-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid #e2e4e7; border-radius:8px; overflow:hidden; }
.ithdkb-table th, .ithdkb-table td, .ithdkb-log-table th, .ithdkb-log-table td { padding:10px 12px; border-bottom:1px solid #f0f0f1; text-align:left; font-size:14px; }
.ithdkb-table thead th, .ithdkb-log-table thead th { background:#f6f7f7; }

.ithdkb-badge { display:inline-block; padding:3px 10px; border-radius:999px; color:#fff; font-size:12px; font-weight:600; }

.ithdkb-form label { display:block; font-weight:600; margin-bottom:4px; }
.ithdkb-form input[type=text], .ithdkb-form select, .ithdkb-form textarea { width:100%; max-width:600px; padding:9px; border:1px solid #ccd0d4; border-radius:8px; }

.ithdkb-thread { margin:16px 0; }
.ithdkb-msg { border-radius:10px; padding:12px 16px; margin-bottom:10px; }
.ithdkb-msg-user { background:#f6f7f7; }
.ithdkb-msg-staff { background:#eef6ff; border-left:4px solid var(--ithdkb-brand); }
.ithdkb-msg-meta { font-size:12px; color:#646970; margin-bottom:6px; }

.ithdkb-notice { padding:10px 14px; border-radius:8px; margin:10px 0; }
.ithdkb-notice-success { background:#edfaef; border:1px solid #00a32a; }
.ithdkb-notice-error { background:#fcf0f1; border:1px solid #d63638; }
.ithdkb-muted { color:#646970; }

.ithdkb-kb-search { display:flex; gap:8px; margin:14px 0; }
.ithdkb-kb-search input[type=text] { flex:1; padding:9px; border:1px solid #ccd0d4; border-radius:8px; }
.ithdkb-kb-cats { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:16px; }
.ithdkb-kb-cat { background:#fff; border:1px solid #e2e4e7; border-radius:12px; padding:14px 18px; }
.ithdkb-kb-cat ul, .ithdkb-kb-list { list-style:none; margin:0; padding:0; }
.ithdkb-kb-cat li, .ithdkb-kb-list li { padding:6px 0; }

@media (max-width:782px){ .ithdkb-dashboard{flex-direction:column;} .ithdkb-sidebar{width:100%;flex-basis:auto;} }

/* ============================================================
 * Graphical pass: rounded panels, gradient headers, shadows
 * ============================================================ */
.ithdkb-dashboard { font-size:15px; }

/* Sidebar as a soft rounded panel */
.ithdkb-sidebar {
  border:1px solid #e6e8ec; border-radius:18px; padding:16px;
  box-shadow:0 4px 16px rgba(0,0,0,.06);
}
.ithdkb-user-box {
  display:flex; align-items:center; gap:8px;
  background:linear-gradient(100deg, var(--ithdkb-brand), var(--ithdkb-accent));
  color:#fff; border-radius:12px; padding:12px 14px; margin-bottom:12px; border:0;
}
.ithdkb-user-box .dashicons { color:#fff; }
.ithdkb-nav-item { font-weight:600; }
.ithdkb-nav-item .dashicons { color:var(--ithdkb-brand); }
.ithdkb-nav-item.ithdkb-active .dashicons,
.ithdkb-logout .dashicons { color:inherit; }

/* Content headings get a gradient bar with white icon */
.ithdkb-content > h2:first-child,
.ithdkb-kb > h2:first-child {
  display:flex; align-items:center; gap:10px;
  background:linear-gradient(100deg, var(--ithdkb-brand), var(--ithdkb-accent));
  color:#fff; padding:14px 20px; border-radius:14px; box-shadow:0 4px 14px rgba(0,0,0,.10);
  margin:0 0 18px;
}
.ithdkb-content > h2:first-child .dashicons,
.ithdkb-kb > h2:first-child .dashicons { color:#fff !important; font-size:24px; width:24px; height:24px; }
.ithdkb-content h3 { display:flex; align-items:center; gap:8px; }

/* Cards / panels */
.ithdkb-card {
  border:1px solid #e6e8ec; border-radius:18px; padding:20px 24px;
  box-shadow:0 4px 16px rgba(0,0,0,.06);
}
.ithdkb-login-card { box-shadow:0 12px 40px rgba(0,0,0,.12); }

/* Stat cards: rounded + hover lift */
.ithdkb-stat { border-radius:18px; box-shadow:0 4px 16px rgba(0,0,0,.06); transition:transform .12s ease, box-shadow .12s ease; }
.ithdkb-stat:hover { transform:translateY(-3px); box-shadow:0 10px 26px rgba(0,0,0,.12); }
.ithdkb-stat-num { font-size:38px; }

/* Tables rounded */
.ithdkb-table, .ithdkb-log-table {
  border:1px solid #e6e8ec; border-radius:14px; overflow:hidden;
  border-collapse:separate; border-spacing:0; box-shadow:0 4px 16px rgba(0,0,0,.05);
}
.ithdkb-table tr:last-child td, .ithdkb-log-table tr:last-child td { border-bottom:0; }

/* Buttons: pill, gradient primary */
.ithdkb-btn { border-radius:999px; font-weight:600; }
.ithdkb-btn-primary {
  background:linear-gradient(100deg, var(--ithdkb-brand), var(--ithdkb-accent));
  border:0; box-shadow:0 4px 14px rgba(0,0,0,.15);
}
.ithdkb-btn-primary:hover { filter:brightness(1.05); }

/* Status badges */
.ithdkb-badge { padding:4px 12px; box-shadow:0 1px 3px rgba(0,0,0,.15); }

/* Message bubbles */
.ithdkb-msg { border-radius:14px; box-shadow:0 2px 8px rgba(0,0,0,.04); }
.ithdkb-msg-staff { border-left:4px solid var(--ithdkb-brand); }

/* Notices rounded */
.ithdkb-notice { border-radius:12px; display:flex; align-items:center; gap:8px; }

/* KB category panels */
.ithdkb-kb-cat {
  border:1px solid #e6e8ec; border-radius:18px; padding:16px 20px;
  box-shadow:0 4px 16px rgba(0,0,0,.06); transition:transform .12s ease, box-shadow .12s ease;
}
.ithdkb-kb-cat:hover { transform:translateY(-3px); box-shadow:0 10px 26px rgba(0,0,0,.12); }
.ithdkb-kb-cat h3 { display:flex; align-items:center; gap:8px; margin-top:0; }
.ithdkb-kb-cat li .dashicons, .ithdkb-kb-list li .dashicons { color:var(--ithdkb-brand); }
.ithdkb-kb-search input[type=text] { border-radius:999px; padding-left:16px; }
.ithdkb-kb-search .ithdkb-btn { border-radius:999px; }

/* Forms as rounded panels */
.ithdkb-form {
  background:#fff; border:1px solid #e6e8ec; border-radius:18px; padding:20px 24px;
  box-shadow:0 4px 16px rgba(0,0,0,.06); margin-bottom:18px;
}
.ithdkb-form input[type=text], .ithdkb-form select, .ithdkb-form textarea { border-radius:10px; }
/* Thread sits in its own soft panel */
.ithdkb-thread {
  background:#fff; border:1px solid #e6e8ec; border-radius:18px; padding:16px 20px;
  box-shadow:0 4px 16px rgba(0,0,0,.06);
}

/* ============================================================
 * Single KB article — branded hero + panel
 * ============================================================ */
.ithdkb-single-kb { max-width:860px; margin:32px auto; padding:0 16px; }
.ithdkb-kb-hero {
  background:linear-gradient(120deg, var(--ithdkb-brand), var(--ithdkb-accent));
  color:#fff; border-radius:20px; padding:30px 32px; box-shadow:0 10px 30px rgba(0,0,0,.14);
  margin-bottom:-22px; position:relative; z-index:1;
}
.ithdkb-kb-hero-eyebrow { display:flex; align-items:center; gap:8px; font-size:13px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; opacity:.9; }
.ithdkb-kb-hero-eyebrow .dashicons { color:#fff; }
.ithdkb-kb-hero h1 { color:#fff; margin:8px 0 12px; font-size:30px; line-height:1.2; }
.ithdkb-kb-hero-meta { display:flex; flex-wrap:wrap; gap:8px; }
.ithdkb-kb-chip { display:inline-flex; align-items:center; gap:5px; background:rgba(255,255,255,.18); color:#fff; padding:4px 12px; border-radius:999px; font-size:12px; font-weight:600; }
.ithdkb-kb-chip .dashicons { color:#fff; font-size:15px; width:15px; height:15px; }
.ithdkb-kb-article { padding-top:40px !important; line-height:1.7; font-size:16px; }
.ithdkb-kb-article h2, .ithdkb-kb-article h3 { margin-top:1.4em; }
.ithdkb-kb-article img { border-radius:12px; max-width:100%; height:auto; }
.ithdkb-kb-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }

/* ============================================================
 * Panel-style variants (set in Settings → Branding)
 * ============================================================ */
/* Flat: no shadow, no border, soft tint */
body.ithdkb-style-flat .ithdkb-card,
body.ithdkb-style-flat .ithdkb-stat,
body.ithdkb-style-flat .ithdkb-sidebar,
body.ithdkb-style-flat .ithdkb-kb-cat,
body.ithdkb-style-flat .ithdkb-form,
body.ithdkb-style-flat .ithdkb-thread,
body.ithdkb-style-flat .ithdkb-table,
body.ithdkb-style-flat .ithdkb-log-table,
body.ithdkb-style-flat .ithdkb-msg { box-shadow:none !important; border:0 !important; background:#f4f6f9; }
body.ithdkb-style-flat .ithdkb-stat:hover,
body.ithdkb-style-flat .ithdkb-kb-cat:hover { box-shadow:none !important; }

/* Bordered: crisp outline, no shadow */
body.ithdkb-style-bordered .ithdkb-card,
body.ithdkb-style-bordered .ithdkb-stat,
body.ithdkb-style-bordered .ithdkb-sidebar,
body.ithdkb-style-bordered .ithdkb-kb-cat,
body.ithdkb-style-bordered .ithdkb-form,
body.ithdkb-style-bordered .ithdkb-thread,
body.ithdkb-style-bordered .ithdkb-table,
body.ithdkb-style-bordered .ithdkb-log-table { box-shadow:none !important; border:1.5px solid #d6d9df !important; background:#fff; }
body.ithdkb-style-bordered .ithdkb-stat:hover,
body.ithdkb-style-bordered .ithdkb-kb-cat:hover { box-shadow:none !important; }

@media (max-width:600px){ .ithdkb-kb-hero h1 { font-size:24px; } }

/* ============================================================
 * Help tips, hints, and ticket pills (front end)
 * ============================================================ */
.ithdkb-tip {
  font-size:16px; width:16px; height:16px; color:var(--ithdkb-brand); cursor:help;
  vertical-align:middle; opacity:.7;
}
.ithdkb-tip:hover, .ithdkb-tip:focus { opacity:1; outline:none; }

.ithdkb-hint {
  display:flex; align-items:flex-start; gap:8px;
  background:#fff8e5; border:1px solid #f3e0a6; border-left:4px solid #dba617;
  border-radius:12px; padding:10px 14px; margin:0 0 16px; font-size:14px; color:#4b4b4b;
}
.ithdkb-hint .dashicons { color:#dba617; flex:0 0 auto; }

/* Category + tag pills */
.ithdkb-pill {
  display:inline-flex; align-items:center; gap:4px; padding:3px 11px; border-radius:999px;
  font-size:12px; font-weight:600; line-height:1.7; margin:2px 2px;
}
.ithdkb-pill .dashicons { font-size:14px; width:14px; height:14px; }
.ithdkb-pill-cat { color:#fff; }
.ithdkb-pill-cat .dashicons { color:#fff; }
.ithdkb-pill-tag { background:#eef0f3; color:#3c434a; border:1px solid #dcdfe3; }
.ithdkb-pill-tag .dashicons { color:#787c82; }

/* Single ticket meta row */
.ithdkb-ticket-meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:12px 0; }
.ithdkb-priority-meta { margin-left:6px; color:#50575e; font-size:14px; }

/* ============================================================
 * Dashboard wrap, IT contact bar, startup guide
 * ============================================================ */
.ithdkb-dashboard-wrap { max-width:1100px; margin:0 auto; }

.ithdkb-contact-bar {
  background:linear-gradient(120deg, var(--ithdkb-brand), var(--ithdkb-accent));
  color:#fff; border-radius:18px; padding:16px 20px; margin-bottom:18px;
  box-shadow:0 6px 20px rgba(0,0,0,.10);
}
.ithdkb-contact-bar-title { display:flex; align-items:center; gap:8px; font-weight:700; font-size:15px; margin-bottom:10px; }
.ithdkb-contact-bar-title .dashicons { color:#fff; }
.ithdkb-contact-cards { display:flex; flex-wrap:wrap; gap:12px; }
.ithdkb-contact-card { background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.25); border-radius:12px; padding:10px 14px; min-width:190px; }
.ithdkb-contact-name { display:flex; align-items:center; gap:6px; font-weight:700; margin-bottom:4px; }
.ithdkb-contact-name .dashicons { color:#fff; }
.ithdkb-contact-line { display:flex; align-items:center; gap:6px; color:#fff; text-decoration:none; font-size:14px; padding:2px 0; opacity:.95; }
.ithdkb-contact-line:hover { opacity:1; text-decoration:underline; color:#fff; }
.ithdkb-contact-line .dashicons { color:#fff; font-size:16px; width:16px; height:16px; }

.ithdkb-guide-intro { font-size:15px; }
.ithdkb-guide-steps { display:flex; flex-direction:column; gap:16px; margin:18px 0; }
.ithdkb-guide-step {
  display:flex; gap:20px; align-items:center;
  background:#fff; border:1px solid #e6e8ec; border-radius:18px; padding:16px 18px;
  box-shadow:0 4px 16px rgba(0,0,0,.06);
}
.ithdkb-guide-img { flex:0 0 220px; }
.ithdkb-guide-img img { width:100%; height:auto; border-radius:12px; display:block; }
.ithdkb-guide-text h3 { display:flex; align-items:center; gap:8px; margin:0 0 6px; }
.ithdkb-guide-text h3 .dashicons { color:var(--ithdkb-brand); }
.ithdkb-guide-text p { margin:0; line-height:1.6; color:#3c434a; }
.ithdkb-guide-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:8px; }

@media (max-width:640px){
  .ithdkb-guide-step { flex-direction:column; align-items:stretch; }
  .ithdkb-guide-img { flex-basis:auto; width:100%; max-width:320px; margin:0 auto; }
}

/* Panel-style variants also cover contact cards + guide steps */
body.ithdkb-style-flat .ithdkb-guide-step { box-shadow:none !important; border:0 !important; background:#f4f6f9; }
body.ithdkb-style-bordered .ithdkb-guide-step { box-shadow:none !important; border:1.5px solid #d6d9df !important; }

/* ============================================================
 * Company branding (sidebar, login, footer)
 * ============================================================ */
.ithdkb-sidebar-brand { padding:6px 6px 14px; border-bottom:1px solid rgba(0,0,0,.08); margin-bottom:12px; text-align:center; }
.ithdkb-brand-logo-sidebar { max-width:100%; max-height:54px; height:auto; }
.ithdkb-login-brand { text-align:center; margin-bottom:10px; }
.ithdkb-brand-logo-login { max-height:64px; max-width:80%; height:auto; }

.ithdkb-brand-footer { max-width:1100px; margin:26px auto 0; background:#fff; border:1px solid #e6e8ec; border-radius:18px; padding:18px 22px; box-shadow:0 4px 16px rgba(0,0,0,.05); }
.ithdkb-brand-footer-main { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.ithdkb-brand-logo-footer { max-height:56px; max-width:200px; height:auto; }
.ithdkb-brand-name { font-weight:800; font-size:18px; color:#1d2327; }
.ithdkb-brand-tagline { color:#646970; margin-bottom:6px; }
.ithdkb-brand-contacts { display:flex; flex-wrap:wrap; gap:16px; align-items:center; }
.ithdkb-brand-contacts a, .ithdkb-brand-address { display:inline-flex; align-items:center; gap:6px; color:var(--ithdkb-brand); text-decoration:none; font-size:14px; }
.ithdkb-brand-contacts a:hover { text-decoration:underline; }
.ithdkb-brand-address { color:#50575e; }
.ithdkb-brand-credit { margin-top:12px; padding-top:12px; border-top:1px solid #eef0f2; color:#8c8f94; font-size:12px; text-align:center; }

/* ============================================================
 * Guide number badge
 * ============================================================ */
.ithdkb-guide-num { display:inline-flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%; background:linear-gradient(135deg,var(--ithdkb-brand),var(--ithdkb-accent)); color:#fff; font-size:14px; font-weight:700; }

/* ============================================================
 * Rich user Help page
 * ============================================================ */
.ithdkb-content h3 { display:flex; align-items:center; gap:8px; margin:24px 0 12px; font-size:18px; }
.ithdkb-help-intro { font-size:15px; }
.ithdkb-help-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; }
.ithdkb-help-card { display:flex; flex-direction:column; gap:6px; background:#fff; border:1px solid #e6e8ec; border-radius:16px; padding:18px; text-decoration:none; color:inherit; box-shadow:0 4px 16px rgba(0,0,0,.05); transition:transform .15s ease, box-shadow .15s ease; }
.ithdkb-help-card:hover { transform:translateY(-3px); box-shadow:0 10px 24px rgba(0,0,0,.10); }
.ithdkb-help-card-icon { font-size:30px; width:30px; height:30px; }
.ithdkb-help-card-title { font-weight:700; font-size:15px; color:#1d2327; }
.ithdkb-help-card-body { color:#50575e; font-size:14px; line-height:1.5; }

.ithdkb-tip-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px; }
.ithdkb-tip-card { display:flex; gap:12px; align-items:flex-start; background:#f7f9fc; border:1px solid #e6e8ec; border-radius:14px; padding:14px; }
.ithdkb-tip-card .dashicons { color:var(--ithdkb-accent); font-size:22px; width:22px; height:22px; flex:0 0 auto; }
.ithdkb-tip-card strong { display:block; margin-bottom:2px; }
.ithdkb-tip-card p { margin:0; color:#50575e; font-size:13px; line-height:1.5; }

.ithdkb-faq { display:flex; flex-direction:column; gap:10px; }
.ithdkb-faq-item { background:#fff; border:1px solid #e6e8ec; border-radius:14px; padding:4px 16px; box-shadow:0 2px 10px rgba(0,0,0,.04); }
.ithdkb-faq-item summary { cursor:pointer; font-weight:600; padding:12px 0; list-style:none; display:flex; align-items:center; gap:8px; }
.ithdkb-faq-item summary::-webkit-details-marker { display:none; }
.ithdkb-faq-item summary .dashicons { color:var(--ithdkb-brand); }
.ithdkb-faq-item[open] summary { border-bottom:1px solid #eef0f2; }
.ithdkb-faq-a { padding:12px 0 14px 28px; color:#50575e; line-height:1.6; }

.ithdkb-help-contacts { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; }
.ithdkb-help-contact-name { font-weight:700; display:flex; align-items:center; gap:6px; margin-bottom:6px; }
.ithdkb-help-contact a { display:flex; align-items:center; gap:6px; text-decoration:none; color:#2271b1; padding:3px 0; }
.ithdkb-help-contact a:hover { text-decoration:underline; }

@media (max-width:782px){
  .ithdkb-brand-footer-main { flex-direction:column; text-align:center; align-items:center; }
}

/* ============================================================
 * Dashboard theme toggle + dark mode
 * ============================================================ */
.ithdkb-theme-toggle { background:none; border:0; width:100%; text-align:left; cursor:pointer; font:inherit; }

.ithdkb-dashboard-wrap.ithdkb-dark {
  --ithdkb-bg:#0f141a;
  --ithdkb-card:#19212b;
  --ithdkb-text:#e6e9ee;
  --ithdkb-muted:#9aa4b2;
  --ithdkb-border:#2a3441;
  background:var(--ithdkb-bg);
  color:var(--ithdkb-text);
}
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-card,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-sidebar,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-stat,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-panel,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-help-card,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-tip-card,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-faq-item,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-guide-step,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-contact-bar {
  background:var(--ithdkb-card) !important;
  color:var(--ithdkb-text);
  border-color:var(--ithdkb-border) !important;
}
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-tip-card { background:#141b23 !important; }
.ithdkb-dashboard-wrap.ithdkb-dark h1,
.ithdkb-dashboard-wrap.ithdkb-dark h2,
.ithdkb-dashboard-wrap.ithdkb-dark h3,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-help-card-title,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-stat-num { color:var(--ithdkb-text); }
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-muted,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-help-card-body,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-tip-card p,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-faq-a,
.ithdkb-dashboard-wrap.ithdkb-dark .description { color:var(--ithdkb-muted); }
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-nav-item { color:var(--ithdkb-muted); }
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-nav-item:hover,
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-nav-item.ithdkb-active { background:rgba(255,255,255,.06); color:var(--ithdkb-text); }
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-user-box { color:var(--ithdkb-text); }
.ithdkb-dashboard-wrap.ithdkb-dark input,
.ithdkb-dashboard-wrap.ithdkb-dark textarea,
.ithdkb-dashboard-wrap.ithdkb-dark select {
  background:#0f151c; color:var(--ithdkb-text); border-color:var(--ithdkb-border);
}
.ithdkb-dashboard-wrap.ithdkb-dark table,
.ithdkb-dashboard-wrap.ithdkb-dark th,
.ithdkb-dashboard-wrap.ithdkb-dark td { border-color:var(--ithdkb-border); color:var(--ithdkb-text); }
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-brand-footer { background:var(--ithdkb-card); border-color:var(--ithdkb-border); }

/* ============================================================
 * KB "Was this helpful?"
 * ============================================================ */
.ithdkb-kb-helpful { margin:26px 0; padding:20px; border:1px solid #e6e8ec; border-radius:16px; background:#f7f9fc; text-align:center; }
.ithdkb-kb-helpful-q { font-weight:700; display:flex; align-items:center; justify-content:center; gap:8px; margin-bottom:12px; }
.ithdkb-kb-helpful-q .dashicons { color:var(--ithdkb-brand); }
.ithdkb-kb-helpful-btns { display:flex; gap:10px; justify-content:center; }
.ithdkb-vote.ithdkb-vote-active { background:var(--ithdkb-brand); color:#fff; border-color:var(--ithdkb-brand); }
.ithdkb-kb-feedback { max-width:520px; margin:14px auto 0; display:flex; flex-direction:column; gap:8px; }
.ithdkb-kb-feedback textarea { width:100%; border:1px solid #d8dce1; border-radius:10px; padding:10px; }
.ithdkb-kb-helpful-thanks { display:flex; align-items:center; justify-content:center; gap:8px; font-weight:700; color:#00a32a; }
.ithdkb-kb-helpful-thanks .dashicons { color:#e53935; }

/* ============================================================
 * Live KB search dropdown
 * ============================================================ */
.ithdkb-kb-search { position:relative; }
.ithdkb-kb-live-results { position:absolute; z-index:30; left:0; right:0; top:calc(100% + 6px); background:#fff; border:1px solid #e1e5ea; border-radius:14px; box-shadow:0 14px 40px rgba(0,0,0,.14); overflow:hidden; }
.ithdkb-kb-live-item { display:block; padding:11px 16px; text-decoration:none; color:#1d2327; border-bottom:1px solid #f0f2f5; }
.ithdkb-kb-live-item:last-child { border-bottom:0; }
.ithdkb-kb-live-item:hover { background:#f5f8fc; }
.ithdkb-kb-live-title { display:block; font-weight:700; color:var(--ithdkb-brand); }
.ithdkb-kb-live-ex { display:block; font-size:13px; color:#646970; margin-top:2px; }
.ithdkb-kb-live-empty { padding:12px 16px; color:#646970; font-size:13px; }
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-kb-live-results { background:var(--ithdkb-card); border-color:var(--ithdkb-border); }
.ithdkb-dashboard-wrap.ithdkb-dark .ithdkb-kb-live-item { color:var(--ithdkb-text); border-color:var(--ithdkb-border); }

/* ============================================================
 * CSAT survey
 * ============================================================ */
.ithdkb-csat { margin-top:22px; padding:20px; border:1px solid #f0d27a; background:linear-gradient(180deg,#fffdf5,#fff8e6); border-radius:16px; text-align:center; }
.ithdkb-csat-q { font-weight:700; margin-bottom:10px; }
.ithdkb-csat-stars { display:inline-flex; gap:4px; }
.ithdkb-csat-star { background:none; border:0; cursor:pointer; padding:2px; line-height:1; }
.ithdkb-csat-star .dashicons { font-size:32px; width:32px; height:32px; color:#f59e0b; }
.ithdkb-csat-static .dashicons { font-size:20px; width:20px; height:20px; color:#f59e0b; vertical-align:middle; }
.ithdkb-csat-comment { max-width:480px; margin:14px auto 0; display:flex; flex-direction:column; gap:8px; }
.ithdkb-csat-comment textarea { width:100%; border:1px solid #e0c97a; border-radius:10px; padding:10px; }
.ithdkb-csat-done, .ithdkb-csat-thanks { display:flex; align-items:center; justify-content:center; gap:8px; font-weight:700; color:#9a7400; }
.ithdkb-csat-thanks .dashicons { color:#e53935; }

/* ============================================================
 * Registration card
 * ============================================================ */
.ithdkb-register-card { margin-top:18px; }
.ithdkb-register-card h2 { display:flex; align-items:center; gap:8px; }
.ithdkb-register-card .ithdkb-form p { margin:0 0 12px; }
.ithdkb-register-card label { display:block; font-weight:600; margin-bottom:4px; }
.ithdkb-register-card input[type=text],
.ithdkb-register-card input[type=email],
.ithdkb-register-card input[type=password] { width:100%; padding:10px 12px; border:1px solid #d8dce1; border-radius:10px; }
