:root {
  --prp-bg: #f6f8fb;
  --prp-panel: #ffffff;
  --prp-panel-soft: #f8fafc;
  --prp-ink: #111827;
  --prp-muted: #5b6472;
  --prp-line: #dbe3ee;
  --prp-accent: #0891b2;
  --prp-accent-strong: #0e7490;
  --prp-accent-deep: #075985;
  --prp-hover: #e6f6fb;
  --prp-hover-strong: #d5f0f7;
  --prp-ok: #047857;
  --prp-warn: #b45309;
  --prp-danger: #be123c;
  --prp-radius: 8px;
  --ok: var(--prp-ok) !important;
  --warn: var(--prp-warn) !important;
  --danger: var(--prp-danger) !important;
  --panel: var(--prp-panel) !important;
  --panel2: var(--prp-panel-soft) !important;
  --stroke: var(--prp-line) !important;
  --muted: var(--prp-muted) !important;
  --muted2: var(--prp-muted) !important;
  --shadow: none !important;
  --cta: var(--prp-accent) !important;
  --ctaText: #ffffff !important;
  --radius: var(--prp-radius) !important;
  --radius2: var(--prp-radius) !important;
  --sc-bg: var(--prp-bg) !important;
  --sc-deep: var(--prp-bg) !important;
  --sc-surface: var(--prp-panel) !important;
  --sc-surface2: var(--prp-panel-soft) !important;
  --sc-line: var(--prp-line) !important;
  --sc-line-soft: var(--prp-line) !important;
  --sc-cyan: var(--prp-accent) !important;
  --sc-cyan2: var(--prp-accent-strong) !important;
  --sc-text: var(--prp-ink) !important;
  --sc-muted: var(--prp-muted) !important;
  --sc-radius: var(--prp-radius) !important;
  --sc-shadow: none !important;
}

* {
  box-sizing: border-box;
}

html,
body {
  background: var(--prp-bg) !important;
  color: var(--prp-ink) !important;
  font-family: "Source Sans 3", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing: 0 !important;
}

body::before,
body::after,
.bg-overlay,
.glass::after,
.glass-card::after,
.panel::after,
.card::after,
.hero-card::after,
.main.panel::after,
.question-card::after,
.intro-shell::after {
  content: none !important;
  display: none !important;
}

main,
header,
footer,
.app,
.wrap,
.page-shell,
.shell-root,
.shell-nav,
.shell-menu-fab {
  position: relative;
  z-index: 1;
}

h1,
h2,
h3,
h4,
.page-title,
.title,
.brand-title strong,
.brand-title,
.brand-name,
.shell-brand-name,
.card-title,
.section-title,
.question-title,
.report-title,
.modal-title {
  color: var(--prp-ink) !important;
  font-family: "Source Sans 3", system-ui, sans-serif !important;
  letter-spacing: -0.03em !important;
}

p,
li,
.lead,
.sub,
.subtitle,
.desc,
.meta,
.muted,
.muted2,
.helper,
.small,
.tools-text,
.side-copy,
.brand-kicker,
.brand-title span,
.shell-page-title,
.field-help,
.question-help,
.report-meta,
.empty-state p {
  color: var(--prp-muted) !important;
}

.text-white,
[class~="text-white"],
[class*="text-white/"],
.text-slate-50,
.text-slate-100,
.text-gray-50,
.text-gray-100,
.text-zinc-50,
.text-zinc-100 {
  color: var(--prp-ink) !important;
}

.text-white\/40,
.text-white\/50,
.text-white\/60,
.text-white\/70,
.text-white\/75,
.text-white\/80,
.text-white\/90,
[class*="text-white/"],
.text-slate-200,
.text-slate-300,
.text-gray-200,
.text-gray-300,
.text-zinc-200,
.text-zinc-300 {
  color: var(--prp-muted) !important;
}

[class*="text-cyan-"],
[class*="text-sky-"],
[class*="text-blue-"] {
  color: var(--prp-accent-strong) !important;
}

a {
  color: inherit !important;
}

main a:not(.btn):not(.btn-primary):not(.btn-cta):not(.nav-btn):not(.shell-link):not(.side-link),
.content a:not(.btn):not(.btn-primary):not(.btn-cta),
.toc a {
  color: var(--prp-accent-strong) !important;
  text-decoration-color: rgba(8, 145, 178, 0.32) !important;
}

main a:not(.btn):not(.btn-primary):not(.btn-cta):not(.nav-btn):not(.shell-link):not(.side-link):hover,
.content a:not(.btn):not(.btn-primary):not(.btn-cta):hover,
.toc a:hover {
  color: var(--prp-accent-deep) !important;
  background: var(--prp-hover) !important;
}

.app,
.main,
.wrap,
.container,
.topbar-inner,
.shell-content,
.page-shell {
  max-width: min(1320px, calc(100% - 32px)) !important;
}

.topbar,
.site-header,
.shell-topbar,
.nav-shell,
header,
nav.shell-nav {
  background: rgba(255, 255, 255, 0.94) !important;
  border-color: var(--prp-line) !important;
  box-shadow: none !important;
  color: var(--prp-ink) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

.glass,
.glass-soft,
.glass-card,
.glass-panel,
.panel,
.panel-soft,
.card,
.card-radio,
.hero,
.hero-card,
.sidebar,
.main.panel,
.main.glass,
.popup-card,
.modal-content,
.question-tools,
.question-header,
.question-card,
.progress-wrap,
.intro-shell,
.org-editor,
.metric,
.stat,
.side-link,
.side-booking,
.expert-cta,
.col,
.drop,
.note,
.notePanel,
.shell-dropdown,
.shell-context-banner,
.shell-content-cta,
.shell-code-dialog,
.auth-card,
.form-card,
.admin-card,
.empty-state,
.booking-card,
.expert-card,
.report-card,
.report-section,
.dashboard-card,
.workspace-card,
.visual-card {
  overflow: visible !important;
  background: var(--prp-panel) !important;
  border: 1px solid var(--prp-line) !important;
  border-radius: var(--prp-radius) !important;
  box-shadow: none !important;
  color: var(--prp-ink) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.user-path-shell,
.company-workspace,
.company-form,
.mode-switch,
.cyber-answer-grid {
  background: transparent !important;
  color: var(--prp-ink) !important;
}

section,
article,
.content,
.toc,
.callout,
code.inline,
pre {
  background: var(--prp-panel) !important;
  border-color: var(--prp-line) !important;
  border-radius: var(--prp-radius) !important;
  color: var(--prp-ink) !important;
  box-shadow: none !important;
}

.content {
  border: 0 !important;
}

code.inline,
pre,
code {
  background: var(--prp-panel-soft) !important;
  border-color: var(--prp-line) !important;
  color: var(--prp-accent-deep) !important;
}

.glass-soft,
.panel-soft,
.drop,
.note,
.notePanel,
.question-tools,
.progress-wrap {
  background: var(--prp-panel-soft) !important;
}

[class^="bg-white"],
[class*=" bg-white"],
[class^="bg-slate-"],
[class*=" bg-slate-"],
[class^="bg-gray-"],
[class*=" bg-gray-"],
[class^="bg-zinc-"],
[class*=" bg-zinc-"],
[class^="from-slate-"],
[class*=" from-slate-"],
[class^="from-gray-"],
[class*=" from-gray-"],
[class^="from-zinc-"],
[class*=" from-zinc-"],
[class^="to-slate-"],
[class*=" to-slate-"],
[class^="to-gray-"],
[class*=" to-gray-"],
[class^="to-zinc-"],
[class*=" to-zinc-"] {
  background: var(--prp-panel) !important;
}

[class^="bg-white/"],
[class*=" bg-white/"],
[class^="bg-slate-50"],
[class*=" bg-slate-50"],
[class^="bg-slate-100"],
[class*=" bg-slate-100"],
[class^="bg-gray-50"],
[class*=" bg-gray-50"],
[class^="bg-gray-100"],
[class*=" bg-gray-100"] {
  background: var(--prp-panel-soft) !important;
}

[class^="bg-cyan-"],
[class*=" bg-cyan-"],
[class^="bg-sky-"],
[class*=" bg-sky-"],
[class^="bg-blue-"],
[class*=" bg-blue-"],
[class^="bg-indigo-"],
[class*=" bg-indigo-"],
[class^="from-cyan-"],
[class*=" from-cyan-"],
[class^="from-sky-"],
[class*=" from-sky-"],
[class^="from-blue-"],
[class*=" from-blue-"],
[class^="from-indigo-"],
[class*=" from-indigo-"],
[class^="to-cyan-"],
[class*=" to-cyan-"],
[class^="to-sky-"],
[class*=" to-sky-"],
[class^="to-blue-"],
[class*=" to-blue-"],
[class^="to-indigo-"],
[class*=" to-indigo-"] {
  background: var(--prp-accent) !important;
  color: #ffffff !important;
}

[class*="hover:bg-white"]:hover,
[class*="hover:bg-cyan"]:hover,
[class*="hover:bg-sky"]:hover,
[class*="hover:bg-blue"]:hover,
[class*="hover:bg-indigo"]:hover {
  background: var(--prp-hover) !important;
  color: var(--prp-accent-deep) !important;
}

[class*="hover:text-white"]:hover,
[class*="focus:text-white"]:focus {
  color: var(--prp-accent-deep) !important;
}

[class^="border-white"],
[class*=" border-white"],
[class^="border-slate-"],
[class*=" border-slate-"],
[class^="border-gray-"],
[class*=" border-gray-"],
[class^="border-zinc-"],
[class*=" border-zinc-"] {
  border-color: var(--prp-line) !important;
}

[class^="border-cyan"],
[class*=" border-cyan"],
[class^="border-sky"],
[class*=" border-sky"],
[class^="border-blue"],
[class*=" border-blue"],
[class^="border-indigo"],
[class*=" border-indigo"] {
  border-color: var(--prp-accent) !important;
}

.brand,
.brand-title,
.shell-brand,
.shell-link,
.nav a {
  color: var(--prp-ink) !important;
}

.brand img,
.brand-mark,
.brand-mark img,
.shell-logo {
  border-radius: var(--prp-radius) !important;
  border: 1px solid var(--prp-line) !important;
  background: var(--prp-panel) !important;
  box-shadow: none !important;
}

.eyebrow,
.side-title,
.tools-label,
.field-label,
.label,
label,
.badge,
.pill,
.chip,
.tag,
.shell-chip,
.shell-breadcrumb,
.side-count,
.side-booking-status,
.micro-pill,
.glass-chip,
.session-chip {
  letter-spacing: 0.04em !important;
  color: var(--prp-accent-strong) !important;
}

.chip,
.pill,
.badge,
.tag,
.shell-chip,
.shell-breadcrumb,
.side-count,
.side-booking-status,
.micro-pill,
.glass-chip,
.session-chip {
  border: 1px solid var(--prp-line) !important;
  background: var(--prp-panel-soft) !important;
  border-radius: 999px !important;
  color: var(--prp-muted) !important;
}

.btn,
button,
button.btn,
.backtotop,
.btn-primary,
.btn-ghost,
.nav-btn,
.tab,
.dashboard-tab,
.side-toggle,
.copy-code-btn,
.k-btn,
.noteBtn,
.shell-menu-btn,
.shell-menu-fab,
.shell-account-btn,
.shell-dd-btn,
.shell-code-btn,
.shell-context-banner button,
.shell-content-cta button,
.pdf-btn,
.toggle-btn,
.back-btn,
.validate-modal,
button[type="submit"],
input[type="button"],
input[type="submit"] {
  min-height: 40px;
  border: 1px solid var(--prp-line) !important;
  border-radius: var(--prp-radius) !important;
  background: var(--prp-panel) !important;
  color: var(--prp-ink) !important;
  box-shadow: none !important;
  clip-path: none !important;
  font-weight: 700 !important;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, box-shadow 160ms ease !important;
}

.btn:hover,
button:hover,
.backtotop:hover,
.btn-primary:hover,
.btn-ghost:hover,
.nav-btn:hover,
.tab:hover,
.dashboard-tab:hover,
.copy-code-btn:hover,
.k-btn:hover,
.shell-menu-btn:hover,
.shell-account-btn:hover,
.shell-dd-btn:hover {
  transform: none !important;
  border-color: var(--prp-accent) !important;
  background: var(--prp-hover) !important;
  color: var(--prp-accent-deep) !important;
  box-shadow: inset 0 0 0 1px rgba(8, 145, 178, 0.18) !important;
}

.btn:hover *,
button:hover *,
.backtotop:hover *,
.btn-primary:hover *,
.btn-ghost:hover *,
.nav-btn:hover *,
.tab:hover *,
.dashboard-tab:hover *,
.copy-code-btn:hover *,
.k-btn:hover *,
.shell-menu-btn:hover *,
.shell-account-btn:hover *,
.shell-dd-btn:hover * {
  color: inherit !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.btn:focus-visible,
button:focus-visible,
.backtotop:focus-visible,
.btn-primary:focus-visible,
.btn-ghost:focus-visible,
.nav-btn:focus-visible,
.tab:focus-visible,
.dashboard-tab:focus-visible,
input[type="button"]:focus-visible,
input[type="submit"]:focus-visible {
  outline: 3px solid rgba(8, 145, 178, 0.22) !important;
  outline-offset: 2px !important;
}

.btn.cta,
.btn.primary,
.backtotop,
.btn-primary,
.btn-cta,
#login-btn,
#register-btn,
.tab.active,
.dashboard-tab.active,
.shell-code-btn.primary,
.shell-link.active,
button.primary,
button[data-primary="true"] {
  border-color: var(--prp-accent) !important;
  background: var(--prp-accent) !important;
  color: #ffffff !important;
}

.btn.cta *,
.btn.primary *,
.backtotop *,
.btn-primary *,
.btn-cta *,
#login-btn *,
#register-btn *,
.tab.active *,
.dashboard-tab.active *,
.shell-code-btn.primary *,
button.primary *,
button[data-primary="true"] * {
  color: #ffffff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.btn.cta:hover,
.btn.primary:hover,
.backtotop:hover,
.btn-primary:hover,
.btn-cta:hover,
#login-btn:hover,
#register-btn:hover,
.shell-code-btn.primary:hover,
button.primary:hover {
  border-color: var(--prp-accent-deep) !important;
  background: var(--prp-accent-deep) !important;
  color: #ffffff !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18) !important;
}

button:disabled,
.btn:disabled,
.btn.disabled,
[aria-disabled="true"] {
  cursor: not-allowed !important;
  opacity: 0.58 !important;
  background: #eef2f7 !important;
  border-color: var(--prp-line) !important;
  color: #7b8492 !important;
}

input,
select,
textarea,
.input,
.select,
.input-field,
.shell-code-input,
.shell-org-select {
  border: 1px solid var(--prp-line) !important;
  border-radius: var(--prp-radius) !important;
  background: #ffffff !important;
  color: var(--prp-ink) !important;
  -webkit-text-fill-color: var(--prp-ink) !important;
  caret-color: var(--prp-ink) !important;
  box-shadow: none !important;
}

input:not([type="button"]):not([type="submit"]):not([type="file"]),
textarea,
select,
.side-form .input,
.org-editor .input,
.form-card .input,
.auth-card .input,
.prp-auth-input,
#partner-org-id-input,
#selected-org-name-input {
  background-color: #ffffff !important;
  background-image: none !important;
  color: var(--prp-ink) !important;
  -webkit-text-fill-color: var(--prp-ink) !important;
  caret-color: var(--prp-ink) !important;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px #ffffff inset !important;
  -webkit-text-fill-color: var(--prp-ink) !important;
  caret-color: var(--prp-ink) !important;
}

input:focus,
select:focus,
textarea:focus,
.input:focus,
.select:focus,
.input-field:focus {
  border-color: var(--prp-accent) !important;
  box-shadow: 0 0 0 3px rgba(8, 145, 178, 0.14) !important;
  outline: none !important;
}

::placeholder {
  color: #8a95a5 !important;
  -webkit-text-fill-color: #8a95a5 !important;
  opacity: 1 !important;
}

input::placeholder,
textarea::placeholder,
.input::placeholder,
.input-field::placeholder,
.shell-code-input::placeholder,
.shell-org-select::placeholder,
#partner-org-id-input::placeholder,
#selected-org-name-input::placeholder {
  color: #8a95a5 !important;
  -webkit-text-fill-color: #8a95a5 !important;
  opacity: 1 !important;
}

table,
.table {
  border-collapse: collapse !important;
  background: var(--prp-panel) !important;
  color: var(--prp-ink) !important;
}

th,
td {
  border-color: var(--prp-line) !important;
}

th {
  background: var(--prp-panel-soft) !important;
  color: var(--prp-ink) !important;
}

#answers button,
#answers label,
.answer-btn,
.choice,
.choice-card,
.question-option {
  border: 1px solid var(--prp-line) !important;
  border-radius: var(--prp-radius) !important;
  background: var(--prp-panel) !important;
  color: var(--prp-ink) !important;
  box-shadow: none !important;
}

.answer-btn.selected,
.choice.selected,
.question-option.selected,
#answers button.selected,
#answers label.selected {
  border-color: var(--prp-accent) !important;
  background: #ecfeff !important;
  color: var(--prp-accent-strong) !important;
  box-shadow: inset 4px 0 0 var(--prp-accent) !important;
}

.progress-wrap,
.meter,
.progress,
.progress-track,
.progress-bar-background {
  background: #e5edf5 !important;
  border: 1px solid var(--prp-line) !important;
  border-radius: 999px !important;
}

#progress-background,
.meter > span,
.progress-bar,
.progress-fill {
  background: var(--prp-accent) !important;
  border-color: var(--prp-accent) !important;
  box-shadow: none !important;
}

.status,
.status-neutral,
.status-current,
.status-other,
.status-yes,
.status-x {
  border: 1px solid var(--prp-line) !important;
  border-radius: var(--prp-radius) !important;
  background: #eaf6fb !important;
  color: var(--prp-accent-deep) !important;
  box-shadow: none !important;
  font-weight: 800 !important;
}

.status.status-yes,
.status-yes,
.badge.good,
.badge.ok,
.badge.success,
.tag.ok,
.pill.ok,
.side-booking-status.confirmed,
.side-booking-status.in_progress {
  border-color: rgba(4, 120, 87, 0.28) !important;
  background: #ecfdf5 !important;
  color: var(--prp-ok) !important;
}

.status.status-neutral,
.status-neutral,
.badge.warn,
.badge.warning,
.tag.warn,
.side-booking-status.hold {
  border-color: rgba(180, 83, 9, 0.28) !important;
  background: #fffbeb !important;
  color: var(--prp-warn) !important;
}

.status.status-other,
.status-other,
.badge.danger,
.badge.low,
.tag.danger,
.side-booking-status.cancelled,
.side-booking-status.expired {
  border-color: rgba(190, 18, 60, 0.28) !important;
  background: #fff1f2 !important;
  color: var(--prp-danger) !important;
}

.status.status-x,
.status-x {
  border-color: rgba(37, 99, 235, 0.30) !important;
  background: #eff6ff !important;
  color: #1d4ed8 !important;
}

.status.status-current,
.status-current {
  border-color: var(--prp-accent) !important;
  background: var(--prp-accent) !important;
  color: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(8, 145, 178, 0.14) !important;
}

.kanban {
  gap: 12px !important;
  align-items: start !important;
}

.col {
  background: var(--prp-panel) !important;
  border: 1px solid var(--prp-line) !important;
  border-radius: var(--prp-radius) !important;
}

.col.todo {
  border-top: 4px solid #fb7185 !important;
}

.col.doing {
  border-top: 4px solid #f59e0b !important;
}

.col.blocked {
  border-top: 4px solid #8b5cf6 !important;
}

.col.done {
  border-top: 4px solid #10b981 !important;
}

.drop {
  border: 1px dashed #c7d2de !important;
  background: var(--prp-panel-soft) !important;
}

#kanbanView .kanban {
  gap: 14px !important;
}

#kanbanView .col {
  background: linear-gradient(180deg, #ffffff 0%, #f4fbfe 100%) !important;
  border: 1px solid rgba(8, 145, 178, 0.18) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.74) !important;
}

#kanbanView .col.todo {
  background: linear-gradient(180deg, #ffffff 0%, #fff7f8 100%) !important;
  border-color: rgba(190, 18, 60, 0.18) !important;
  border-top-color: var(--prp-danger) !important;
}

#kanbanView .col.doing {
  background: linear-gradient(180deg, #ffffff 0%, #fffbeb 100%) !important;
  border-color: rgba(180, 83, 9, 0.2) !important;
  border-top-color: var(--prp-warn) !important;
}

#kanbanView .col.blocked {
  background: linear-gradient(180deg, #ffffff 0%, #edf9fc 100%) !important;
  border-color: rgba(8, 145, 178, 0.22) !important;
  border-top-color: var(--prp-accent) !important;
}

#kanbanView .col.done {
  background: linear-gradient(180deg, #ffffff 0%, #ecfdf5 100%) !important;
  border-color: rgba(4, 120, 87, 0.2) !important;
  border-top-color: var(--prp-ok) !important;
}

#kanbanView .col-head {
  border-bottom: 1px solid rgba(8, 145, 178, 0.14) !important;
  padding-bottom: 9px !important;
}

#kanbanView .col-title {
  color: var(--prp-ink) !important;
}

#kanbanView .col .badge {
  background: #ffffff !important;
  border-color: rgba(8, 145, 178, 0.2) !important;
  color: var(--prp-accent-deep) !important;
}

#kanbanView .col.todo .badge {
  background: #fff1f2 !important;
  border-color: rgba(190, 18, 60, 0.22) !important;
  color: var(--prp-danger) !important;
}

#kanbanView .col.doing .badge {
  background: #fffbeb !important;
  border-color: rgba(180, 83, 9, 0.24) !important;
  color: var(--prp-warn) !important;
}

#kanbanView .col.done .badge {
  background: #ecfdf5 !important;
  border-color: rgba(4, 120, 87, 0.22) !important;
  color: var(--prp-ok) !important;
}

#kanbanView .drop {
  background: rgba(255, 255, 255, 0.72) !important;
  border-color: rgba(8, 145, 178, 0.18) !important;
}

#kanbanView .col.todo .drop {
  border-color: rgba(190, 18, 60, 0.16) !important;
}

#kanbanView .col.doing .drop {
  border-color: rgba(180, 83, 9, 0.18) !important;
}

#kanbanView .col.done .drop {
  border-color: rgba(4, 120, 87, 0.16) !important;
}

#kanbanView .card {
  background: #ffffff !important;
  border: 1px solid rgba(8, 145, 178, 0.16) !important;
  color: var(--prp-ink) !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04) !important;
}

#kanbanView .card:hover {
  border-color: rgba(8, 145, 178, 0.34) !important;
  background: #ffffff !important;
  box-shadow: inset 0 0 0 1px rgba(8, 145, 178, 0.1) !important;
}

#kanbanView .notePanel,
#kanbanView .noteTxt {
  background: #f8fdff !important;
  border-color: rgba(8, 145, 178, 0.16) !important;
  color: var(--prp-muted) !important;
}

#kanbanView .noteBtn,
#kanbanView .k-btn {
  background: #ffffff !important;
  border-color: rgba(8, 145, 178, 0.2) !important;
  color: var(--prp-accent-deep) !important;
}

#kanbanView .noteBtn:hover,
#kanbanView .k-btn:hover {
  background: var(--prp-hover) !important;
  border-color: var(--prp-accent) !important;
  color: var(--prp-accent-deep) !important;
}

#kanbanView .chip {
  background: var(--prp-hover) !important;
  border-color: rgba(8, 145, 178, 0.2) !important;
  color: var(--prp-accent-deep) !important;
}

#kanbanView .chip.blocking {
  background: #fff1f2 !important;
  border-color: rgba(190, 18, 60, 0.26) !important;
  color: var(--prp-danger) !important;
}

#kanbanView .hours {
  background: #ffffff !important;
  border-color: rgba(8, 145, 178, 0.22) !important;
  color: var(--prp-ink) !important;
}

.card[draggable="true"],
.task-card,
.kanban-card {
  cursor: grab;
}

.modal,
.modal-backdrop,
.popup {
  background: rgba(17, 24, 39, 0.42) !important;
}

.modal-content,
.popup-card {
  background: var(--prp-panel) !important;
  color: var(--prp-ink) !important;
}

/* Last-pass hover normalizer for legacy pages with stronger local selectors. */
.btn:not(.cta):not(.primary):not(.btn-primary):not(.btn-cta):not(.danger):hover,
a.btn:not(.cta):not(.primary):not(.btn-primary):not(.btn-cta):not(.danger):hover,
button.btn:not(.cta):not(.primary):not(.btn-primary):not(.btn-cta):not(.danger):hover,
button:not(.cta):not(.primary):not(.btn-primary):not(.btn-cta):not([data-primary="true"]):hover,
.nav-btn:hover,
.back-btn:hover,
.copy-code-btn:hover,
.dashboard-tab:hover,
.side-toggle:hover,
.cards-head-toggle:hover,
.side-link:hover,
.side-booking:hover,
.card-actions .btn:not(.danger):hover,
.expert-cta-actions .btn:not(.danger):hover,
#import-program-btn:hover,
#partner-org-load-btn:hover,
#save-selected-org-name-btn:hover,
[data-open-org-report]:hover,
[data-export-org]:hover,
[data-open-partner-report]:hover,
[data-export-partner]:hover,
[data-export-imported]:hover,
[data-open-report]:hover,
#generate-pdf:hover,
#answers button:hover,
#answers label:hover,
.answer-btn:hover,
.choice:hover,
.choice-card:hover,
.question-option:hover,
.mode-switch button:hover,
.cyber-answer-btn:hover:not(:disabled) {
  transform: none !important;
  border-color: var(--prp-accent) !important;
  background: var(--prp-hover) !important;
  color: var(--prp-accent-deep) !important;
  box-shadow: inset 0 0 0 1px rgba(8, 145, 178, 0.18) !important;
}

.btn.danger:hover,
button.btn.danger:hover,
#delete-selected-btn:hover,
#logout-btn:hover,
#delete-account-btn:hover {
  transform: none !important;
  border-color: rgba(190, 18, 60, 0.34) !important;
  background: #fff1f2 !important;
  color: var(--prp-danger) !important;
  box-shadow: inset 0 0 0 1px rgba(190, 18, 60, 0.12) !important;
}

.btn:not(.cta):not(.primary):not(.btn-primary):not(.btn-cta):hover *,
button:not(.cta):not(.primary):not(.btn-primary):not(.btn-cta):not([data-primary="true"]):hover *,
#answers button:hover *,
#answers label:hover *,
.answer-btn:hover *,
.choice:hover *,
.choice-card:hover *,
.question-option:hover * {
  color: inherit !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.content strong,
.content b,
section strong,
section b,
.toc strong,
.toc b,
.toc h2,
.callout strong,
.callout b,
.meta strong,
.pill strong {
  color: var(--prp-ink) !important;
}

.content p,
.content li,
section p,
section li,
.toc .small,
.footer,
.footer p,
.callout,
.callout p {
  color: var(--prp-muted) !important;
}

.callout .tag {
  border-color: rgba(8, 145, 178, 0.22) !important;
  background: var(--prp-hover) !important;
  color: var(--prp-accent-deep) !important;
}

.footer a,
.content a,
section a {
  color: var(--prp-accent-strong) !important;
}

.report-view,
.report-content,
.report-panel,
.report-page,
.pdf-preview,
.visualisation,
.visualization,
.chart-panel {
  background: var(--prp-panel) !important;
  color: var(--prp-ink) !important;
  border-color: var(--prp-line) !important;
  border-radius: var(--prp-radius) !important;
  box-shadow: none !important;
}

.report-view,
.report-content,
.report-page,
.pdf-preview {
  padding: 20px !important;
}

.report-view h1,
.report-view h2,
.report-view h3,
.report-content h1,
.report-content h2,
.report-content h3 {
  color: var(--prp-ink) !important;
}

.report-view table,
.report-content table,
.report-page table {
  width: 100% !important;
  border: 1px solid var(--prp-line) !important;
}

.report-view th,
.report-view td,
.report-content th,
.report-content td,
.report-page th,
.report-page td {
  padding: 10px !important;
}

.visualisation section,
.visualization section,
body:has(.circle-container) section,
body:has(.circle-container) .badge-container,
body:has(.circle-container) .code-container,
body:has(.circle-container) .modal-content {
  background: var(--prp-panel) !important;
  border-color: var(--prp-line) !important;
  color: var(--prp-ink) !important;
  box-shadow: none !important;
  border-radius: var(--prp-radius) !important;
}

body:has(.circle-container) .circle {
  border-color: rgba(8, 145, 178, 0.34) !important;
}

body:has(.circle-container) .line {
  background: rgba(8, 145, 178, 0.38) !important;
}

body:has(.circle-container) .text-bg1,
body:has(.circle-container) .text-bg2,
body:has(.circle-container) .text-bg3,
body:has(.circle-container) .text-bg4,
body:has(.circle-container) .text-bg5,
body:has(.circle-container) .text-bg6,
body:has(.circle-container) .text-bg7,
body:has(.circle-container) .text-bg8,
body:has(.circle-container) .text-bg9,
body:has(.circle-container) .text-bg10,
body:has(.circle-container) .text-bg11,
body:has(.circle-container) .text-bg12 {
  background: var(--prp-hover) !important;
  border-color: rgba(8, 145, 178, 0.22) !important;
  color: var(--prp-accent-deep) !important;
  box-shadow: none !important;
}

body:has(.circle-container) .badge-container .score,
body:has(.circle-container) section h2,
body:has(.circle-container) .modal-content h1,
body:has(.circle-container) .modal-content h3 {
  color: var(--prp-accent-deep) !important;
}

svg text,
canvas + text {
  fill: var(--prp-ink) !important;
}

.auth-card,
.form-card,
.login-card,
.register-card {
  max-width: 520px;
}

.shell-menu-fab {
  background: var(--prp-accent) !important;
  color: #ffffff !important;
}

#prp-lang-switcher {
  gap: 2px !important;
  padding: 2px !important;
  border: 1px solid var(--prp-line) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: none !important;
  opacity: 0.92 !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
}

#prp-lang-switcher:hover,
#prp-lang-switcher:focus-within {
  opacity: 1 !important;
}

#prp-lang-switcher[data-layout="inline"] {
  position: static !important;
}

#prp-lang-switcher button {
  min-height: 28px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: var(--prp-muted) !important;
  padding: 5px 8px !important;
  box-shadow: none !important;
  font: 800 0.7rem/1 "Source Sans 3", system-ui, sans-serif !important;
  letter-spacing: 0.04em !important;
}

#prp-lang-switcher button:hover,
#prp-lang-switcher button:focus-visible {
  background: var(--prp-hover) !important;
  color: var(--prp-accent-deep) !important;
  outline: none !important;
}

#prp-lang-switcher button[aria-pressed="true"] {
  background: var(--prp-hover) !important;
  color: var(--prp-accent-deep) !important;
  box-shadow: inset 0 0 0 1px rgba(8, 145, 178, 0.18) !important;
}

.hidden {
  display: none !important;
}

@media (max-width: 900px) {
  .app,
  .main {
    grid-template-columns: 1fr !important;
  }

  .sidebar {
    position: static !important;
    max-height: none !important;
  }
}

@media print {
  html,
  body {
    background: #ffffff !important;
    color: #111827 !important;
  }

  .topbar,
  .site-header,
  .sidebar,
  .nav-shell,
  .shell-menu-fab,
  .btn,
  button {
    box-shadow: none !important;
  }

  .panel,
  .card,
  .glass,
  .report-view,
  .report-content,
  .report-page {
    border-color: #d1d5db !important;
    background: #ffffff !important;
  }
}
