/* Quo Vadis portal-wide midnight workspace theme */
:root {
  color-scheme: dark;
  --navy: #06141d;
  --navy2: #0a2634;
  --ink: #edf7f5;
  --muted: #8da5a9;
  --paper: #06141d;
  --surface: #0b1e29;
  --line: rgba(153, 190, 197, 0.16);
  --teal: #45d2ae;
  --lime: #c7ef70;
  --gold: #e4ae63;
  --coral: #df8172;
  --violet: #a69ee7;
  --blue: #75acd2;
  --qv-panel: #0b1e29;
  --qv-panel-raised: #102631;
  --qv-panel-soft: rgba(255, 255, 255, 0.025);
  --qv-text: #edf7f5;
  --qv-text-soft: #b8cbcd;
  --qv-muted: #8da5a9;
  --qv-muted-dim: #718b90;
  --qv-line: rgba(153, 190, 197, 0.16);
  --qv-line-soft: rgba(153, 190, 197, 0.1);
  --qv-field: #081b25;
  --qv-field-disabled: #091821;
  --qv-shadow: 0 18px 45px rgba(0, 7, 12, 0.18);
}

html {
  background: var(--navy);
}

body {
  color: var(--qv-text);
  background:
    radial-gradient(circle at 78% -5%, rgba(69, 210, 174, 0.08), transparent 29%),
    linear-gradient(180deg, #071923 0%, var(--paper) 44%);
}

::selection {
  color: #061916;
  background: #7fe5cb;
}

.app-shell {
  background: transparent;
}

.sidebar {
  position: relative;
  overflow: hidden;
  border-right: 1px solid rgba(139, 190, 204, 0.18);
  background:
    radial-gradient(circle at 28% 0, rgba(117, 172, 210, 0.14), transparent 30%),
    linear-gradient(180deg, #0b2632 0%, #09222e 52%, #0c2934 100%);
  box-shadow: inset -1px 0 rgba(255, 255, 255, 0.018), 12px 0 34px rgba(0, 9, 15, 0.12);
}

.sidebar::after {
  position: absolute;
  content: "";
  width: 230px;
  height: 230px;
  right: -145px;
  bottom: 10%;
  border: 1px solid rgba(166, 158, 231, 0.07);
  border-radius: 50%;
  pointer-events: none;
}

.portal-brand,
.module-nav,
.sidebar-footer {
  position: relative;
  z-index: 1;
}

.module-link {
  --module-accent: #75acd2;
  border: 1px solid transparent;
  color: #99afb4;
  transition: color 150ms ease, border-color 150ms ease, background 150ms ease, transform 150ms ease;
}

.module-link[data-module-link="overview"] { --module-accent: #75acd2; }
.module-link[data-module-link="employees"] { --module-accent: #65c8c2; }
.module-link[data-module-link="recruiting"] { --module-accent: #a69ee7; }
.module-link[data-module-link="culture"] { --module-accent: #d4a863; }
.module-link[data-module-link="performance"] { --module-accent: #6f9fc7; }
.module-link[data-module-link="disciplinary"] { --module-accent: #df8172; }
.module-link[data-module-link="meetings"] { --module-accent: #b28ed8; }
.module-link[data-module-link="talk"] { --module-accent: #55c7b4; }

.module-link:hover {
  border-color: rgba(119, 184, 175, 0.13);
  color: #eaf6f3;
  background: rgba(39, 91, 98, 0.24);
  transform: translateX(2px);
}

.module-link.active {
  border-color: rgba(117, 172, 210, 0.18);
  color: #f2fbf9;
  background: linear-gradient(90deg, rgba(74, 111, 132, 0.22), rgba(74, 111, 132, 0.055));
  box-shadow: inset 3px 0 var(--module-accent);
}

.nav-icon {
  color: var(--module-accent);
}

.sidebar-footer {
  border-color: rgba(255, 255, 255, 0.08);
}

.user-avatar {
  border: 1px solid rgba(117, 172, 210, 0.22);
  color: #e1eff9;
  background: linear-gradient(145deg, rgba(117, 172, 210, 0.3), rgba(12, 43, 52, 0.9));
}

.user-chip:hover,
.user-chip:focus-visible,
.account-menu[open] .user-chip {
  background: rgba(54, 111, 116, 0.25);
}

.account-popover {
  border-color: var(--qv-line);
  color: var(--qv-text);
  background: #0c222d;
  box-shadow: 0 20px 45px rgba(0, 7, 12, 0.4);
}

.account-popover a {
  color: #d7e8e5;
}

.account-popover a:hover,
.account-popover a:focus-visible {
  color: #baf4e5;
  background: rgba(69, 210, 174, 0.09);
}

.main-area {
  background: transparent;
}

.topbar {
  border-color: var(--qv-line);
  background: rgba(6, 20, 29, 0.84);
  box-shadow: 0 8px 28px rgba(0, 7, 12, 0.1);
  backdrop-filter: blur(18px) saturate(1.15);
}

.breadcrumbs {
  color: #708b91;
}

.breadcrumbs b {
  color: #3e5b61;
}

.breadcrumbs strong {
  color: #cfe0de;
}

.help-button,
.icon-button,
.mobile-menu {
  color: #8fa9ad;
}

.help-button {
  border-color: var(--qv-line);
}

main {
  position: relative;
}

h1,
h2,
h3,
h4,
.page-head h1,
.section-heading h2 {
  color: var(--qv-text);
}

.eyebrow,
.eyebrow.dark,
.page-head > div > p:last-child,
.section-heading > div > p:last-child {
  color: var(--qv-muted);
}

.eyebrow i,
.eyebrow.dark i {
  background: var(--teal);
}

.primary-button,
.hero-primary {
  border: 1px solid #38b99a;
  color: #041b19;
  background: linear-gradient(135deg, #56dabb, #3ac09f);
  box-shadow: 0 10px 24px rgba(33, 164, 137, 0.13);
  transition: transform 150ms ease, background 150ms ease, box-shadow 150ms ease;
}

.primary-button:hover,
.hero-primary:hover {
  color: #031714;
  background: linear-gradient(135deg, #70e4c7, #4bd0ae);
  box-shadow: 0 13px 28px rgba(33, 164, 137, 0.18);
  transform: translateY(-1px);
}

.secondary-button,
.plain-button,
.hero-secondary,
.icon-control,
.today-button {
  border-color: rgba(135, 188, 182, 0.28);
  color: #b8d4cf;
  background: rgba(255, 255, 255, 0.03);
}

.secondary-button:hover,
.plain-button:hover,
.hero-secondary:hover,
.icon-control:hover,
.today-button:hover {
  border-color: rgba(69, 210, 174, 0.48);
  color: #ddf8f1;
  background: rgba(69, 210, 174, 0.07);
}

.panel,
.metrics article,
.employee-metrics,
.recruitment-metrics,
.disciplinary-metrics,
.meeting-metrics,
.integration-strip,
.calendar-panel,
.chat-card,
.profile-card,
.detail-card:not(.candidate-dialog .detail-card) {
  border-color: var(--qv-line);
  color: var(--qv-text);
  background: linear-gradient(145deg, rgba(15, 39, 50, 0.97), rgba(9, 29, 40, 0.97));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025), var(--qv-shadow);
}

.toast {
  border: 1px solid rgba(111, 215, 188, 0.26);
  color: #dff7f1;
  background: #12302f;
  box-shadow: 0 18px 45px rgba(0, 7, 12, 0.38);
}

:root input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="range"]):not([type="color"]),
:root body select,
:root body textarea,
.composer-field {
  border-color: rgba(148, 186, 191, 0.2);
  color: #e7f3f0;
  background: var(--qv-field);
  color-scheme: dark;
  caret-color: #74dfc3;
  -webkit-text-fill-color: #e7f3f0;
}

:root input::placeholder,
:root body textarea::placeholder,
.composer-field textarea::placeholder {
  color: #718b90;
  opacity: 1;
  -webkit-text-fill-color: #718b90;
}

:root input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="range"]):not([type="color"]):focus,
:root body select:focus,
:root body textarea:focus,
.composer-field:focus-within {
  border-color: rgba(69, 210, 174, 0.64);
  outline: 3px solid rgba(69, 210, 174, 0.1);
  box-shadow: none;
}

:root body select option {
  color: #e7f3f0;
  background: #0b1e29;
}

:root input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="range"]):not([type="color"]):disabled,
:root body select:disabled,
:root body textarea:disabled {
  opacity: 1;
  color: #748b90;
  background: var(--qv-field-disabled);
  cursor: not-allowed;
  -webkit-text-fill-color: #748b90;
}

:root input:-webkit-autofill,
:root input:-webkit-autofill:hover,
:root input:-webkit-autofill:focus {
  border-color: rgba(148, 186, 191, 0.28);
  -webkit-text-fill-color: #e7f3f0;
  box-shadow: 0 0 0 1000px var(--qv-field) inset;
  caret-color: #74dfc3;
}

:root body input[type="date"]::-webkit-calendar-picker-indicator,
:root body input[type="time"]::-webkit-calendar-picker-indicator,
:root body input[type="datetime-local"]::-webkit-calendar-picker-indicator {
  opacity: 0.72;
  filter: invert(82%) sepia(12%) saturate(368%) hue-rotate(124deg);
}

:root body form label,
:root body dialog label,
:root body form label > span,
:root body dialog label > span {
  color: #829ba0;
}

table,
.responsive-table {
  color: var(--qv-text-soft);
}

.responsive-table th,
.employee-table th,
.match-table th {
  border-color: var(--qv-line);
  color: #728c91;
}

.employee-table th {
  background: var(--qv-panel-raised);
}

.employee-table th button {
  color: var(--qv-text-soft);
}

.employee-table th button:hover,
.employee-table th[aria-sort]:not([aria-sort="none"]) button {
  background: rgba(69, 210, 174, 0.08);
  color: var(--teal);
}

.employee-table th button:focus-visible {
  outline: 2px solid var(--teal);
  outline-offset: -2px;
}

.employee-table th button span {
  color: inherit;
}

.responsive-table td,
.employee-table td,
.match-table td {
  border-color: var(--qv-line-soft);
  color: #9db2b5;
}

.responsive-table tbody tr:hover,
.employee-table tbody tr:hover {
  background: rgba(69, 210, 174, 0.035);
}

.table-empty,
.empty-panel,
.records-empty,
.calendar-empty {
  color: var(--qv-muted);
}

.table-empty strong,
.records-empty strong,
.calendar-empty strong {
  color: var(--qv-text);
}

.context-banner,
.module-note,
.privacy-note {
  border-color: rgba(69, 210, 174, 0.18);
  color: #91aaa9;
  background: rgba(41, 128, 112, 0.08);
}

.context-banner strong,
.module-note strong,
.privacy-note strong {
  color: #c3e5dc;
}

/* Portal overview */
.overview-hero {
  border-color: var(--qv-line);
  background: linear-gradient(135deg, rgba(15, 39, 50, 0.98), rgba(8, 27, 38, 0.98));
  box-shadow: 0 25px 60px rgba(0, 7, 12, 0.3);
}

.overview-hero h1,
.section-heading h2,
.brand-story h2 {
  color: var(--qv-text);
}

.hero-lead,
.section-heading > p,
.service-card p,
.workspace-pulse p,
.why-quovadis .brand-promises p {
  color: var(--qv-muted);
}

.hero-lead strong,
.workspace-pulse strong,
.service-card h3,
.why-quovadis h2 {
  color: #e8f4f1;
}

.hero-trust {
  color: #789499;
}

.workspace-pulse article,
.service-card,
.why-quovadis {
  border-color: var(--qv-line);
  background: linear-gradient(145deg, rgba(15, 39, 50, 0.96), rgba(9, 29, 40, 0.96));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.workspace-pulse small,
.service-card .service-state {
  color: #779096;
}

.service-card:hover {
  border-color: rgba(69, 210, 174, 0.26);
  box-shadow: 0 20px 45px rgba(0, 7, 12, 0.25);
}

.service-card a {
  color: #8edbc8;
}

.why-quovadis .brand-promises > div {
  border-color: var(--qv-line);
}

.managed-platform {
  border: 1px solid rgba(69, 210, 174, 0.14);
  background:
    radial-gradient(circle at 100% 0, rgba(199, 239, 112, 0.11), transparent 31%),
    linear-gradient(145deg, #0a2634, #0b333b);
}

/* Employees */
.employee-metrics {
  overflow: hidden;
}

.employee-metrics article,
.recruitment-metrics article,
.disciplinary-metrics article,
.meeting-metrics article,
.integration-strip article {
  border-color: var(--qv-line);
}

.employee-metrics p,
.employee-metrics small,
.recruitment-metrics p,
.recruitment-metrics small,
.disciplinary-metrics p,
.disciplinary-metrics small,
.meeting-metrics small,
.meeting-metrics p,
.integration-strip p,
.integration-strip small {
  color: var(--qv-muted);
}

.employee-metrics strong,
.recruitment-metrics strong,
.disciplinary-metrics strong,
.meeting-metrics strong,
.integration-strip strong,
.inventory-toolbar h2 {
  color: var(--qv-text);
}

.inventory-toolbar,
.records-toolbar,
.calendar-toolbar,
.chat-card-head,
.chat-composer {
  border-color: var(--qv-line);
  background: rgba(255, 255, 255, 0.015);
}

.employee-identity a,
.employee-title strong,
.person-cell strong,
.candidate-name-button,
.match-cell strong {
  color: #dcebe8;
}

.candidate-name-button:hover {
  color: var(--qv-teal);
}

.employee-avatar,
.profile-avatar {
  border-color: rgba(69, 210, 174, 0.22);
  color: #dff7f1;
  background: linear-gradient(145deg, rgba(69, 210, 174, 0.2), rgba(13, 49, 60, 0.9));
}

.employee-status,
.status-chip.review {
  color: #a8c7c2;
  background: rgba(98, 142, 144, 0.16);
}

.employee-status.active,
.status-chip.accepted {
  color: #a5ead5;
  background: rgba(69, 210, 174, 0.12);
}

.employee-profile-hero {
  border: 1px solid rgba(69, 210, 174, 0.13);
  background:
    radial-gradient(circle at 88% 8%, rgba(199, 239, 112, 0.12), transparent 26%),
    linear-gradient(120deg, #0a2634, #0c4245);
}

.profile-details div,
.disciplinary-body,
.disciplinary-body dl,
.employee-response {
  border-color: var(--qv-line-soft);
}

.profile-details dt,
.disciplinary-body dt {
  color: #718a90;
}

.profile-details dd,
.disciplinary-body dd,
.disciplinary-body h3,
.employee-response strong {
  color: #dbeae7;
}

.profile-module-link,
.module-link-pill,
.employee-response {
  border-color: var(--qv-line);
  color: #a9c6c1;
  background: rgba(255, 255, 255, 0.025);
}

/* Recruiting */
.recruitment-tabs,
.workflow-steps li,
.workflow-live-list article,
.activity-stream li,
.job-row,
.pipeline-section,
.source-strip,
.source-strip div {
  border-color: var(--qv-line);
}

.recruitment-tabs button {
  color: #789197;
}

.recruitment-tabs button:hover,
.recruitment-tabs button.active {
  color: #e4f1ee;
  background: rgba(69, 210, 174, 0.07);
}

.recruitment-tabs span,
.source-pill,
.append-only,
.workflow-live-count {
  color: #92c9bd;
  background: rgba(69, 210, 174, 0.08);
}

.workflow-steps strong,
.workflow-live h2,
.workflow-live-person strong,
.job-summary h3,
.top-candidate strong {
  color: #dbeae7;
}

.workflow-steps p,
.workflow-live header p:not(.eyebrow),
.workflow-live-person small,
.job-summary p,
.top-candidate small {
  color: var(--qv-muted);
}

.workflow-live-toggle,
.top-candidate,
.filter-bar,
.source-strip,
.pipeline-section,
.job-row,
.file-field {
  border-color: var(--qv-line);
  color: var(--qv-text-soft);
  background: rgba(255, 255, 255, 0.02);
}

.workflow-live-toggle:hover {
  border-color: rgba(69, 210, 174, 0.42);
  background: rgba(69, 210, 174, 0.06);
}

.job-status,
.parsing-chip,
.recommendation-chip.exceptional,
.score-chip.exceptional {
  color: #a8ecd8;
  background: rgba(69, 210, 174, 0.12);
}

.recommendation-chip.strong,
.score-chip.strong {
  color: #d5eca5;
  background: rgba(182, 220, 105, 0.11);
}

.recommendation-chip.potential,
.score-chip.potential {
  color: #efc58f;
  background: rgba(228, 174, 99, 0.12);
}

.recommendation-chip.review,
.score-chip.review,
.parsing-chip.failed {
  color: #e5a199;
  background: rgba(207, 116, 104, 0.12);
}

.job-dialog .dialog-frame {
  color: var(--qv-text);
  background: var(--navy);
}

.job-dialog .detail-card {
  border-color: var(--qv-line);
  background: linear-gradient(145deg, rgba(15, 39, 50, 0.97), rgba(9, 29, 40, 0.97));
}

/* Disciplinary */
.confidential-banner {
  border-color: rgba(228, 174, 99, 0.18);
  color: #c6b18c;
  background: rgba(154, 102, 41, 0.08);
}

.record-filters {
  border-color: var(--qv-line);
  background: rgba(7, 25, 35, 0.9);
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.018);
}

.records-list,
.records-list article,
.evidence-panel li,
.workflow-panel li {
  border-color: var(--qv-line);
}

.records-list article:hover {
  background: rgba(69, 210, 174, 0.035);
}

.record-search input,
.record-filters select {
  border-color: var(--qv-line);
  color: #dcebe8;
  background: #081b25;
}

.record-search i,
.record-result-count {
  color: #829ba0;
}

.record-avatar {
  border: 1px solid rgba(69, 210, 174, 0.18);
  color: #b8e9dd;
  background: rgba(69, 210, 174, 0.1);
}

.record-person a,
.record-copy h3,
.evidence-count strong,
.workflow-panel h2,
.records-empty strong {
  color: var(--qv-text);
}

.record-person small,
.record-copy p,
.record-meta,
.evidence-count span,
.evidence-panel > p:last-child,
.workflow-panel > p,
.workflow-panel li p,
.records-empty,
.records-empty p {
  color: var(--qv-muted);
}

.record-copy span {
  color: #e58a7c;
}

.record-meta b,
.workflow-panel li strong {
  color: var(--qv-text-soft);
}

.record-status {
  color: #9fe1d0;
  background: rgba(69, 210, 174, 0.1);
}

.record-status.pending_signature {
  color: #e9be7f;
  background: rgba(228, 174, 99, 0.11);
}

.record-status.signed {
  color: #a9c9e3;
  background: rgba(117, 172, 210, 0.11);
}

.record-actions a {
  border-color: rgba(145, 190, 189, 0.25);
  color: #abd7cd;
  background: rgba(255, 255, 255, 0.025);
}

.record-actions a:hover,
.record-actions a:focus-visible {
  border-color: rgba(69, 210, 174, 0.48);
  color: #e0f6f0;
  background: rgba(69, 210, 174, 0.07);
}

.workflow-panel li > span {
  border: 1px solid rgba(166, 158, 231, 0.22);
  color: #c8c1f0;
  background: rgba(166, 158, 231, 0.1);
}

.workflow-link {
  border-color: rgba(69, 210, 174, 0.2);
  color: #9bdccc;
  background: rgba(69, 210, 174, 0.06);
}

/* Meetings */
.view-switcher {
  background: rgba(255, 255, 255, 0.035);
}

.view-switcher button {
  color: #799197;
}

.view-switcher button.active {
  color: #e5f2ef;
  background: rgba(69, 210, 174, 0.1);
  box-shadow: inset 0 0 0 1px rgba(69, 210, 174, 0.16);
}

.weekday,
.month-day.outside {
  color: #60787e;
  background: rgba(255, 255, 255, 0.018);
}

.weekday,
.month-day,
.week-day,
.agenda-day,
.agenda-item {
  border-color: var(--qv-line-soft);
}

.month-day.today {
  box-shadow: inset 0 0 0 2px rgba(199, 239, 112, 0.55);
}

.meeting-chip {
  border-color: #45d2ae;
  color: #aee1d6;
  background: rgba(69, 210, 174, 0.1);
}

.meeting-chip.culture_conversation {
  border-color: #a69ee7;
  color: #c8c3f1;
  background: rgba(166, 158, 231, 0.1);
}

.meeting-chip.performance_check_in {
  border-color: #e4ae63;
  color: #edc58f;
  background: rgba(228, 174, 99, 0.1);
}

.calendar-empty span {
  color: #8fe4cf;
  background: rgba(69, 210, 174, 0.1);
}

/* Talk to HR */
.chat-card {
  overflow: hidden;
}

.chat-card-head strong,
.chat-empty h2,
.chat-message strong,
.import-review-head h3,
.job-posting-panel h5 {
  color: var(--qv-text);
}

.chat-card-head small,
.chat-empty p,
.chat-message p,
.chat-composer > p {
  color: var(--qv-muted);
}

.chat-messages {
  background:
    radial-gradient(circle at 78% 10%, rgba(69, 210, 174, 0.045), transparent 25%),
    rgba(2, 16, 24, 0.4);
}

.prompt-suggestions button,
.employee-import-review,
.job-update-review,
.job-posting-panel {
  border-color: var(--qv-line);
  color: #a8c5c0;
  background: rgba(255, 255, 255, 0.025);
}

.prompt-suggestions button:hover {
  border-color: rgba(69, 210, 174, 0.4);
  color: #d7f4ed;
  background: rgba(69, 210, 174, 0.06);
}

.chat-message.assistant p,
.chat-message.thinking p {
  border-color: rgba(69, 210, 174, 0.18);
  background: linear-gradient(135deg, rgba(16, 47, 59, 0.98), rgba(8, 34, 45, 0.98));
  color: #bed2cf;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.chat-message.user p {
  border-color: rgba(69, 210, 174, 0.22);
  background: #103846;
  color: #e5f2ef;
}

.chat-message.user .message-avatar {
  border: 1px solid rgba(69, 210, 174, 0.22);
  background: rgba(69, 210, 174, 0.1);
  color: #c9eee5;
}

.composer-field button {
  color: #041b19;
  background: #52d7b5;
}

/* Portal sign-in */
.login-layout {
  background: var(--navy);
}

.welcome-panel {
  border-right: 1px solid rgba(153, 190, 197, 0.1);
  background:
    radial-gradient(circle at 20% 0, rgba(69, 210, 174, 0.09), transparent 28%),
    linear-gradient(145deg, #06141d 3%, #0a3040 65%, #0d4a49);
}

.sign-in-panel {
  background:
    radial-gradient(circle at 78% 8%, rgba(69, 210, 174, 0.07), transparent 28%),
    #081923;
}

.sign-in-card {
  border: 1px solid var(--qv-line);
  border-radius: 18px;
  padding: clamp(24px, 4vw, 42px);
  background: linear-gradient(145deg, rgba(15, 39, 50, 0.98), rgba(9, 29, 40, 0.98));
  box-shadow: 0 30px 75px rgba(0, 7, 12, 0.3);
}

.sign-in-card h2,
.sign-in-card label {
  color: var(--qv-text);
}

.back-link,
.sign-in-card label a,
.support a,
.password-toggle {
  color: #86d7c4;
}

.intro,
.remember,
.support,
.divider {
  color: var(--qv-muted);
}

.sign-in-card input[type="email"],
.sign-in-card input[type="password"],
.sso-button {
  border-color: var(--qv-line);
  color: #e7f3f0;
  background: rgba(2, 17, 25, 0.58);
}

.submit-button {
  border: 1px solid #38b99a;
  color: #041b19;
  background: linear-gradient(135deg, #56dabb, #3ac09f);
}

.submit-button span {
  color: #17352d;
}

.divider::before {
  border-color: var(--qv-line);
}

.divider span {
  background: #0b1e29;
}

/* Dialogs and forms */
.upload-dialog,
.confirm-dialog,
.employee-import-dialog,
.meeting-dialog {
  border: 1px solid var(--qv-line);
  color: var(--qv-text);
  background: #0b1e29;
  box-shadow: 0 34px 90px rgba(0, 7, 12, 0.64);
}

.upload-dialog::backdrop,
.confirm-dialog::backdrop,
.employee-import-dialog::backdrop,
.meeting-dialog::backdrop {
  background: rgba(1, 10, 16, 0.82);
  backdrop-filter: blur(9px);
}

.upload-dialog h2,
.confirm-dialog h2,
.employee-import-dialog h2,
.meeting-dialog h2 {
  color: var(--qv-text);
}

.upload-intro,
.import-intro,
.dialog-intro,
.confirm-dialog p:not(.eyebrow) {
  color: var(--qv-muted);
}

.upload-dialog .dialog-close,
.employee-import-dialog .dialog-close,
.meeting-dialog header button {
  border-color: var(--qv-line);
  color: #cbe0dc;
  background: rgba(255, 255, 255, 0.035);
}

.delete-warning,
.danger-zone {
  border-color: rgba(210, 111, 96, 0.23);
  color: #d7a29b;
  background: rgba(119, 47, 46, 0.14);
}

.danger-button {
  border-color: #c36d60;
  color: #fff6f4;
  background: #a94f45;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline-color: #69dfc0;
}

@media (max-width: 760px) {
  .topbar {
    background: rgba(6, 20, 29, 0.95);
  }

  .sidebar.mobile-open {
    background: linear-gradient(180deg, #0b2632, #0c2934);
  }
}

@media (prefers-reduced-motion: reduce) {
  .module-link,
  .primary-button,
  .hero-primary {
    transition: none;
  }
}
