/*
 * Vinduesvask.dk Corporate UI
 * Første rollout: opgaveflow (admin + staff)
 * Designretning godkendt på admin/staff_coverage.php.
 * Alt er scoped til body.corp-task-page og påvirker derfor ikke øvrige sider.
 */
body.corp-task-page {
  --corp-bg: #f6f8fa;
  --corp-surface: #ffffff;
  --corp-surface-soft: #f8fafb;
  --corp-border: #dfe5eb;
  --corp-border-strong: #cfd7df;
  --corp-text: #1f2937;
  --corp-text-2: #344054;
  --corp-muted: #697586;
  --corp-primary: #1f67d2;
  --corp-primary-hover: #1959b8;
  --corp-primary-soft: #eef4fb;
  --corp-primary-border: #cbdcf2;
  --corp-success: #2f6f4e;
  --corp-success-soft: #edf6f1;
  --corp-success-border: #d5eadf;
  --corp-warning: #7a5d20;
  --corp-warning-soft: #f8f3e8;
  --corp-warning-border: #eadfca;
  --corp-danger: #a7372e;
  --corp-danger-soft: #fff1f0;
  --corp-danger-border: #efc5c1;
  --corp-info: #45647f;
  --corp-info-soft: #eef3f7;
  --corp-info-border: #d7e1e9;
  --corp-neutral-soft: #f1f4f7;
  --corp-neutral-border: #dde3e9;
  color: var(--corp-text);
  background: var(--corp-bg);
}

/* Sidehoved / typografi */
body.corp-task-page main.container { max-width: 1320px; }
body.corp-task-page h1,
body.corp-task-page h2,
body.corp-task-page h3,
body.corp-task-page .h4,
body.corp-task-page .h5,
body.corp-task-page .h6 {
  color: var(--corp-text);
  letter-spacing: -.01em;
}
body.corp-task-page h1,
body.corp-task-page .h4 { font-weight: 700; }
body.corp-task-page .text-muted,
body.corp-task-page .form-text { color: var(--corp-muted) !important; }

/* Kort */
body.corp-task-page .card {
  background: var(--corp-surface);
  border: 1px solid var(--corp-border) !important;
  border-radius: 14px;
  box-shadow: 0 4px 16px rgba(31,41,55,.045);
}
body.corp-task-page .card-header {
  background: var(--corp-surface-soft);
  border-bottom: 1px solid var(--corp-border);
  color: var(--corp-text);
}
body.corp-task-page .border,
body.corp-task-page hr { border-color: var(--corp-border) !important; }
body.corp-task-page .bg-light { background: var(--corp-surface-soft) !important; }

/* Formularer */
body.corp-task-page .form-label {
  color: var(--corp-text-2);
  font-weight: 600;
}
body.corp-task-page .form-control,
body.corp-task-page .form-select,
body.corp-task-page .input-group-text {
  border-color: var(--corp-border-strong);
  border-radius: 9px;
  color: var(--corp-text);
}
body.corp-task-page .input-group > .form-control,
body.corp-task-page .input-group > .form-select { border-radius: 9px 0 0 9px; }
body.corp-task-page .input-group > .btn { border-radius: 0 9px 9px 0; }
body.corp-task-page .form-control:focus,
body.corp-task-page .form-select:focus,
body.corp-task-page .form-check-input:focus {
  border-color: #8eb5ea;
  box-shadow: 0 0 0 .2rem rgba(31,103,210,.10);
}
body.corp-task-page .form-check-input:checked {
  background-color: var(--corp-primary);
  border-color: var(--corp-primary);
}

/* Knapper: én klar brandfarve; øvrige handlinger afdæmpes */
body.corp-task-page .btn {
  border-radius: 9px;
  font-weight: 600;
  box-shadow: none !important;
}
body.corp-task-page .btn-primary {
  background: var(--corp-primary);
  border-color: var(--corp-primary);
  color: #fff;
}
body.corp-task-page .btn-primary:hover,
body.corp-task-page .btn-primary:focus {
  background: var(--corp-primary-hover);
  border-color: var(--corp-primary-hover);
}
body.corp-task-page .btn-outline-primary {
  color: var(--corp-primary);
  background: #fff;
  border-color: #aac6ea;
}
body.corp-task-page .btn-outline-primary:hover {
  color: var(--corp-primary);
  background: var(--corp-primary-soft);
  border-color: #8eb5df;
}
body.corp-task-page .btn-outline-secondary,
body.corp-task-page .btn-outline-dark {
  color: #475467;
  background: #fff;
  border-color: var(--corp-border-strong);
}
body.corp-task-page .btn-outline-secondary:hover,
body.corp-task-page .btn-outline-dark:hover {
  color: var(--corp-primary);
  background: var(--corp-primary-soft);
  border-color: #aac6ea;
}
body.corp-task-page .btn-success {
  color: #fff;
  background: var(--corp-success);
  border-color: var(--corp-success);
}
body.corp-task-page .btn-success:hover { background: #285f43; border-color: #285f43; }
body.corp-task-page .btn-outline-success {
  color: var(--corp-success);
  background: #fff;
  border-color: #b8d8c7;
}
body.corp-task-page .btn-outline-success:hover {
  color: var(--corp-success);
  background: var(--corp-success-soft);
  border-color: #9fcbb3;
}
body.corp-task-page .btn-warning,
body.corp-task-page .btn-outline-warning {
  color: var(--corp-warning);
  background: var(--corp-warning-soft);
  border-color: #ddcfb2;
}
body.corp-task-page .btn-warning:hover,
body.corp-task-page .btn-outline-warning:hover {
  color: #674d18;
  background: #f2ead9;
  border-color: #d4c29e;
}
body.corp-task-page .btn-danger {
  color: #fff;
  background: var(--corp-danger);
  border-color: var(--corp-danger);
}
body.corp-task-page .btn-outline-danger {
  color: #667085;
  background: #fff;
  border-color: var(--corp-border-strong);
}
body.corp-task-page .btn-outline-danger:hover {
  color: var(--corp-danger);
  background: var(--corp-danger-soft);
  border-color: #dfaaa5;
}

/* Badges/status: bløde statusfarver i stedet for stærke flader */
body.corp-task-page .badge {
  border-radius: 7px;
  font-weight: 650;
  padding: .32em .55em;
  letter-spacing: 0;
}
body.corp-task-page .badge.text-bg-primary,
body.corp-task-page .badge.bg-primary {
  color: #2458a6 !important;
  background: var(--corp-primary-soft) !important;
  border: 1px solid var(--corp-primary-border);
}
body.corp-task-page .badge.text-bg-success,
body.corp-task-page .badge.bg-success {
  color: var(--corp-success) !important;
  background: var(--corp-success-soft) !important;
  border: 1px solid var(--corp-success-border);
}
body.corp-task-page .badge.text-bg-warning,
body.corp-task-page .badge.bg-warning {
  color: var(--corp-warning) !important;
  background: var(--corp-warning-soft) !important;
  border: 1px solid var(--corp-warning-border);
}
body.corp-task-page .badge.text-bg-danger,
body.corp-task-page .badge.bg-danger {
  color: var(--corp-danger) !important;
  background: var(--corp-danger-soft) !important;
  border: 1px solid var(--corp-danger-border);
}
body.corp-task-page .badge.text-bg-info,
body.corp-task-page .badge.bg-info {
  color: var(--corp-info) !important;
  background: var(--corp-info-soft) !important;
  border: 1px solid var(--corp-info-border);
}
body.corp-task-page .badge.text-bg-secondary,
body.corp-task-page .badge.bg-secondary,
body.corp-task-page .badge.text-bg-light,
body.corp-task-page .badge.bg-light {
  color: #52606f !important;
  background: var(--corp-neutral-soft) !important;
  border: 1px solid var(--corp-neutral-border);
}

/* Alerts */
body.corp-task-page .alert {
  border-radius: 10px;
  box-shadow: none;
}
body.corp-task-page .alert-danger {
  color: #8f2d25;
  background: var(--corp-danger-soft);
  border-color: var(--corp-danger-border);
}
body.corp-task-page .alert-warning {
  color: var(--corp-warning);
  background: var(--corp-warning-soft);
  border-color: var(--corp-warning-border);
}
body.corp-task-page .alert-success {
  color: var(--corp-success);
  background: var(--corp-success-soft);
  border-color: var(--corp-success-border);
}
body.corp-task-page .alert-info,
body.corp-task-page .alert-primary {
  color: #315a83;
  background: var(--corp-primary-soft);
  border-color: var(--corp-primary-border);
}
body.corp-task-page .alert-secondary,
body.corp-task-page .alert-light {
  color: #52606f;
  background: var(--corp-surface-soft);
  border-color: var(--corp-border);
}

/* Tabs */
body.corp-task-page .nav-pills {
  gap: .35rem;
  padding: .3rem;
  border: 1px solid var(--corp-border);
  background: #fff;
  border-radius: 10px;
  width: fit-content;
}
body.corp-task-page .nav-pills .nav-link {
  color: #52606f;
  border-radius: 7px;
  padding: .45rem .75rem;
  font-weight: 600;
}
body.corp-task-page .nav-pills .nav-link.active {
  color: #2458a6;
  background: var(--corp-primary-soft);
}

/* Lister/tabeller */
body.corp-task-page .list-group {
  border-radius: 11px;
  overflow: hidden;
}
body.corp-task-page .list-group-item {
  border-color: var(--corp-border);
  color: var(--corp-text);
}
body.corp-task-page .list-group-item-action:hover {
  background: #fafbfc;
}
body.corp-task-page table thead th {
  background: #f3f5f7;
  color: #475467;
  border-color: var(--corp-border-strong);
  font-size: .8rem;
  font-weight: 700;
}
body.corp-task-page table tbody td { border-color: #e6eaee; }

/* Opgavekort og prioritet */
body.corp-task-page .task-card,
body.corp-task-page .mine-task,
body.corp-task-page .task-hero {
  border-left: 4px solid #aab4bf !important;
}
body.corp-task-page .task-card.p-important,
body.corp-task-page .mine-task.important,
body.corp-task-page .task-hero.important {
  border-left-color: #b48a3c !important;
}
body.corp-task-page .task-card.p-urgent,
body.corp-task-page .mine-task.urgent,
body.corp-task-page .task-hero.urgent {
  border-left-color: #b95a52 !important;
}
body.corp-task-page .task-card:hover,
body.corp-task-page a.mine-task:hover {
  background: #fbfcfd;
  border-color: var(--corp-border-strong) !important;
}
body.corp-task-page .status-dot { background: #98a2b3 !important; }
body.corp-task-page .status-dot.future { background: #6f9edb !important; }
body.corp-task-page .status-dot.overdue { background: #b95a52 !important; }
body.corp-task-page .recipient-state {
  background: #f8fafb !important;
  border-color: var(--corp-border) !important;
}

/* Opret/rediger flow */
body.corp-task-page .recipient-box {
  border-color: var(--corp-border) !important;
  background: #fff !important;
}
body.corp-task-page .recipient-row { border-color: #edf0f2 !important; }
body.corp-task-page .workflow-note {
  border-left: 3px solid #8aa7c4 !important;
  background: #f8fafb;
}
body.corp-task-page #newCustomerFields > .border,
body.corp-task-page #billingFields {
  background: #f8fafb !important;
  border-color: var(--corp-border) !important;
}
body.corp-task-page #newWindowDetails > .border { box-shadow: none; }
body.corp-task-page #taskCustomerResults {
  border: 1px solid var(--corp-border);
  box-shadow: 0 10px 24px rgba(31,41,55,.10) !important;
}

/* Modaler */
body.corp-task-page .modal-content {
  border: 1px solid var(--corp-border);
  border-radius: 14px;
  box-shadow: 0 18px 50px rgba(31,41,55,.16);
}
body.corp-task-page .modal-header,
body.corp-task-page .modal-footer { border-color: var(--corp-border); }

/* Links i kort skal være rolige og corporate */
body.corp-task-page main a:not(.btn):not(.nav-link):not(.dropdown-item):not(.list-group-item) {
  color: #245fae;
}

@media (max-width: 767.98px) {
  body.corp-task-page .card { border-radius: 12px; }
  body.corp-task-page .nav-pills { width: 100%; overflow-x: auto; flex-wrap: nowrap; }
  body.corp-task-page .nav-pills .nav-link { white-space: nowrap; }
}


/* CORP_STAFF_DASHBOARD_V2
 * Staff landing + Dagens opgaver.
 * Retning: 90 % neutral grå/hvid, farve kun hvor den har betydning.
 */
body.corp-staff-dashboard {
  --corp-bg: #f6f8fa;
  --corp-surface: #ffffff;
  --corp-surface-soft: #f8fafb;
  --corp-border: #dfe5eb;
  --corp-border-strong: #cfd7df;
  --corp-text: #1f2937;
  --corp-text-2: #344054;
  --corp-muted: #697586;
  --corp-primary: #1f67d2;
  --corp-primary-hover: #1959b8;
  --corp-primary-soft: #eef4fb;
  --corp-primary-border: #cbdcf2;
  --corp-success: #2f6f4e;
  --corp-success-soft: #edf6f1;
  --corp-success-border: #d5eadf;
  --corp-warning: #7a5d20;
  --corp-warning-soft: #f8f3e8;
  --corp-warning-border: #eadfca;
  --corp-danger: #a7372e;
  --corp-danger-soft: #fff1f0;
  --corp-danger-border: #efc5c1;
  --corp-neutral-soft: #f1f4f7;
  background: var(--corp-bg);
  color: var(--corp-text);
}
body.corp-staff-dashboard .container-xxl,
body.corp-staff-dashboard .container.py-3 { max-width: 1320px; }

body.corp-staff-dashboard .card {
  border: 1px solid var(--corp-border) !important;
  border-radius: 14px;
  box-shadow: 0 4px 16px rgba(31,41,55,.045);
  background: var(--corp-surface);
}
body.corp-staff-dashboard .card-header {
  background: var(--corp-surface-soft) !important;
  border-bottom: 1px solid var(--corp-border) !important;
  color: var(--corp-text);
}
body.corp-staff-dashboard .list-group-item {
  border-color: #e7ebef;
  background: #fff;
}
body.corp-staff-dashboard .text-muted { color: var(--corp-muted) !important; }

body.corp-staff-dashboard .staff-flow-hero {
  background: #fff !important;
  border: 1px solid var(--corp-border) !important;
  border-left: 4px solid #86a9cf !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 16px rgba(31,41,55,.045) !important;
}
body.corp-staff-dashboard .staff-flow-title { color: var(--corp-text) !important; }
body.corp-staff-dashboard .staff-flow-text { color: var(--corp-muted) !important; }

body.corp-staff-dashboard .staff-substitute-banner,
body.corp-staff-dashboard .staff-absence-banner {
  background: #fff !important;
  border: 1px solid var(--corp-border) !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 16px rgba(31,41,55,.04) !important;
}
body.corp-staff-dashboard .staff-substitute-banner { border-left: 4px solid #9aafc4 !important; }
body.corp-staff-dashboard .staff-absence-banner { border-left: 4px solid #c98a84 !important; }
body.corp-staff-dashboard .staff-substitute-item,
body.corp-staff-dashboard .staff-absence-item {
  background: var(--corp-surface-soft) !important;
  border-color: var(--corp-border) !important;
}
body.corp-staff-dashboard .staff-substitute-label { color: var(--corp-muted) !important; }
body.corp-staff-dashboard .staff-substitute-value { color: var(--corp-text) !important; }

body.corp-staff-dashboard .staff-time-card {
  background: #fff !important;
  border: 1px solid var(--corp-border) !important;
  border-left: 4px solid #b9c4cf !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 16px rgba(31,41,55,.04) !important;
}
body.corp-staff-dashboard .staff-time-card.is-active { border-left-color: #7ba38b !important; }
body.corp-staff-dashboard .staff-time-badge.active {
  background: var(--corp-success-soft) !important;
  color: var(--corp-success) !important;
  border: 1px solid var(--corp-success-border) !important;
}
body.corp-staff-dashboard .staff-time-badge.warn {
  background: var(--corp-warning-soft) !important;
  color: var(--corp-warning) !important;
  border: 1px solid var(--corp-warning-border) !important;
}

body.corp-staff-dashboard .staff-top-grid { gap: 12px; }
body.corp-staff-dashboard .staff-top-card {
  border: 1px solid var(--corp-border) !important;
  background: #fff !important;
  border-radius: 13px !important;
  box-shadow: 0 4px 14px rgba(31,41,55,.04) !important;
}
body.corp-staff-dashboard .staff-top-card:hover,
body.corp-staff-dashboard .staff-top-card:focus {
  transform: translateY(-1px);
  border-color: #b9c7d5 !important;
  box-shadow: 0 7px 18px rgba(31,41,55,.07) !important;
}
body.corp-staff-dashboard .staff-top-label { color: #475467 !important; }
body.corp-staff-dashboard .staff-top-label::after { color: #6588ad !important; }
body.corp-staff-dashboard .staff-top-value {
  color: #263445 !important;
  font-weight: 600 !important;
}

body.corp-staff-dashboard .staff-task-card,
body.corp-staff-dashboard .staff-task-card.border-primary {
  border: 1px solid var(--corp-border) !important;
  border-left: 4px solid #aab7c4 !important;
  box-shadow: none !important;
}
body.corp-staff-dashboard .staff-task-card.warning,
body.corp-staff-dashboard .staff-task-card.border-warning { border-left-color: #b99a5c !important; }
body.corp-staff-dashboard .staff-task-card.success,
body.corp-staff-dashboard .staff-task-card.border-success { border-left-color: #7da18a !important; }
body.corp-staff-dashboard .staff-task-card.border-danger { border-left-color: #bd746d !important; }
body.corp-staff-dashboard .staff-task-card:hover {
  border-color: #ccd5de !important;
  background: #fcfcfd !important;
}

body.corp-staff-dashboard .case-type {
  border-radius: 7px !important;
  border: 1px solid var(--corp-border) !important;
  font-weight: 650 !important;
}
body.corp-staff-dashboard .case-type-normal {
  background: #eef4fb !important;
  color: #315f8f !important;
  border-color: #d1dfed !important;
}
body.corp-staff-dashboard .case-type-kk {
  background: #f8eeee !important;
  color: #8b4540 !important;
  border-color: #ecd4d2 !important;
}
body.corp-staff-dashboard .case-type-complaint {
  background: #f8f3e8 !important;
  color: #755c2b !important;
  border-color: #eadfca !important;
}

body.corp-staff-dashboard .staff-empty-card { opacity: 1 !important; }
body.corp-staff-dashboard .staff-empty-card .card-header { background: #fff !important; }
body.corp-staff-dashboard .staff-empty-card .text-muted::before {
  background: var(--corp-neutral-soft) !important;
  color: #6b7b8c !important;
  border: 1px solid var(--corp-border) !important;
}
body.corp-staff-dashboard .staff-done-summary,
body.corp-staff-dashboard .staff-done-direct-summary {
  background: #fff !important;
  border-top-color: var(--corp-border) !important;
}
body.corp-staff-dashboard .staff-done-toggle,
body.corp-staff-dashboard .staff-done-direct-summary button {
  color: #526b84 !important;
  background: #fff !important;
  border-color: #c5d0db !important;
}
body.corp-staff-dashboard .staff-done-toggle:hover,
body.corp-staff-dashboard .staff-done-direct-summary button:hover {
  color: var(--corp-primary) !important;
  background: var(--corp-primary-soft) !important;
  border-color: #aac6ea !important;
}

body.corp-staff-dashboard .btn-dark {
  color: #fff !important;
  background: var(--corp-primary) !important;
  border-color: var(--corp-primary) !important;
}
body.corp-staff-dashboard .btn-dark:hover {
  background: var(--corp-primary-hover) !important;
  border-color: var(--corp-primary-hover) !important;
}
body.corp-staff-dashboard .btn-outline-danger {
  color: #667085 !important;
  background: #fff !important;
  border-color: var(--corp-border-strong) !important;
}
body.corp-staff-dashboard .btn-outline-danger:hover {
  color: var(--corp-danger) !important;
  background: var(--corp-danger-soft) !important;
  border-color: #dfaaa5 !important;
}
body.corp-staff-dashboard .btn-warning,
body.corp-staff-dashboard .btn-outline-warning {
  color: var(--corp-warning) !important;
  background: var(--corp-warning-soft) !important;
  border-color: #ddcfb2 !important;
}

body.corp-staff-dashboard .task-item { border-bottom-color: #e7ebef !important; }
body.corp-staff-dashboard .task-dot { background: #8193a5 !important; }
body.corp-staff-dashboard .task-overdue { color: #9f4942 !important; }
body.corp-staff-dashboard .task-overdue .task-dot { background: #b96760 !important; }

@media (max-width: 767.98px) {
  body.corp-staff-dashboard .staff-top-card { min-height: 88px; }
  body.corp-staff-dashboard .card { border-radius: 12px; }
}


/* CORP_FERIE_BEMANDING_V1
 * Ferie- og bemandingsoversigt.
 * Samme corporate retning som staff_coverage og opgavesystemet:
 * neutral grå/hvid base, brandblå handlinger og bløde statusfarver.
 */
body.corp-ferie-bemanding {
  --corp-bg: #f6f8fa;
  --corp-surface: #ffffff;
  --corp-surface-soft: #f8fafb;
  --corp-border: #dfe5eb;
  --corp-border-strong: #cfd7df;
  --corp-text: #1f2937;
  --corp-text-2: #344054;
  --corp-muted: #697586;
  --corp-primary: #1f67d2;
  --corp-primary-hover: #1959b8;
  --corp-primary-soft: #eef4fb;
  --corp-primary-border: #cbdcf2;
  --corp-success: #2f6f4e;
  --corp-success-soft: #edf6f1;
  --corp-success-border: #d5eadf;
  --corp-warning: #7a5d20;
  --corp-warning-soft: #f8f3e8;
  --corp-warning-border: #eadfca;
  --corp-danger: #a7372e;
  --corp-danger-soft: #fff1f0;
  --corp-danger-border: #efc5c1;
  --corp-neutral-soft: #f1f4f7;
  --corp-neutral-border: #dde3e9;
  background: var(--corp-bg);
  color: var(--corp-text);
}

/* Sidehoved */
body.corp-ferie-bemanding main.container {
  max-width: 1480px;
}
body.corp-ferie-bemanding h1,
body.corp-ferie-bemanding .h4 {
  color: var(--corp-text);
  font-weight: 700;
  letter-spacing: -.01em;
}
body.corp-ferie-bemanding .text-muted {
  color: var(--corp-muted) !important;
}

/* Tophandlinger: én egentlig primær handling, resten rolige */
body.corp-ferie-bemanding .fb-top-actions .btn {
  border-radius: 8px;
  font-weight: 600;
  box-shadow: none !important;
}
body.corp-ferie-bemanding .fb-top-actions .btn-success {
  color: #fff !important;
  background: var(--corp-primary) !important;
  border-color: var(--corp-primary) !important;
}
body.corp-ferie-bemanding .fb-top-actions .btn-success:hover {
  background: var(--corp-primary-hover) !important;
  border-color: var(--corp-primary-hover) !important;
}
body.corp-ferie-bemanding .fb-top-actions .btn-primary,
body.corp-ferie-bemanding .fb-top-actions .btn-dark,
body.corp-ferie-bemanding .fb-top-actions .btn-outline-primary,
body.corp-ferie-bemanding .fb-top-actions .btn-outline-secondary {
  color: #475467 !important;
  background: #fff !important;
  border-color: var(--corp-border-strong) !important;
}
body.corp-ferie-bemanding .fb-top-actions .btn-primary:hover,
body.corp-ferie-bemanding .fb-top-actions .btn-dark:hover,
body.corp-ferie-bemanding .fb-top-actions .btn-outline-primary:hover,
body.corp-ferie-bemanding .fb-top-actions .btn-outline-secondary:hover {
  color: var(--corp-primary) !important;
  background: var(--corp-primary-soft) !important;
  border-color: #aac6ea !important;
}
body.corp-ferie-bemanding .fb-top-actions .btn:disabled {
  color: #98a2b3 !important;
  background: #f8fafb !important;
  border-color: var(--corp-border) !important;
  opacity: 1;
}

/* Filterkort */
body.corp-ferie-bemanding .card {
  border: 1px solid var(--corp-border) !important;
  border-radius: 14px;
  box-shadow: 0 4px 16px rgba(31,41,55,.045);
  background: var(--corp-surface);
}
body.corp-ferie-bemanding .card-header {
  color: var(--corp-text);
  background: var(--corp-surface-soft) !important;
  border-bottom: 1px solid var(--corp-border) !important;
}
body.corp-ferie-bemanding .form-label {
  color: var(--corp-text-2);
  font-weight: 600;
}
body.corp-ferie-bemanding .form-control,
body.corp-ferie-bemanding .form-select {
  color: var(--corp-text);
  border-color: var(--corp-border-strong);
  border-radius: 8px;
}
body.corp-ferie-bemanding .form-control:focus,
body.corp-ferie-bemanding .form-select:focus,
body.corp-ferie-bemanding .form-check-input:focus {
  border-color: #8eb5ea;
  box-shadow: 0 0 0 .2rem rgba(31,103,210,.10);
}
body.corp-ferie-bemanding .fb-filter-actions .btn {
  border-radius: 8px;
  font-weight: 600;
}
body.corp-ferie-bemanding .fb-filter-actions .btn-primary {
  background: var(--corp-primary) !important;
  border-color: var(--corp-primary) !important;
}

/* KPI-kort: neutrale flader, status kun i tallet */
body.corp-ferie-bemanding .fb-kpi {
  min-height: 108px;
  position: relative;
  overflow: hidden;
  box-shadow: none;
}
body.corp-ferie-bemanding .fb-kpi::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: #c5ced7;
}
body.corp-ferie-bemanding .fb-kpi .fb-number {
  color: #263445;
  font-size: 1.55rem;
  font-weight: 700;
}
body.corp-ferie-bemanding .fb-kpi .fb-number.text-danger {
  color: #9b4942 !important;
}
body.corp-ferie-bemanding .fb-kpi .fb-number.text-warning {
  color: #806327 !important;
}
body.corp-ferie-bemanding .fb-kpi .fb-number.text-success {
  color: #386f53 !important;
}
body.corp-ferie-bemanding .fb-missing-customers a,
body.corp-ferie-bemanding .fb-missing-name,
body.corp-ferie-bemanding a.text-danger {
  color: #9b4942 !important;
}

/* Bløde statuschips */
body.corp-ferie-bemanding .badge {
  border-radius: 7px;
  padding: .34em .56em;
  font-weight: 650;
  letter-spacing: 0;
}
body.corp-ferie-bemanding .badge.bg-success {
  color: var(--corp-success) !important;
  background: var(--corp-success-soft) !important;
  border: 1px solid var(--corp-success-border);
}
body.corp-ferie-bemanding .badge.bg-danger {
  color: var(--corp-danger) !important;
  background: var(--corp-danger-soft) !important;
  border: 1px solid var(--corp-danger-border);
}
body.corp-ferie-bemanding .badge.bg-warning {
  color: var(--corp-warning) !important;
  background: var(--corp-warning-soft) !important;
  border: 1px solid var(--corp-warning-border);
}
body.corp-ferie-bemanding .badge.bg-primary {
  color: #315f8f !important;
  background: var(--corp-primary-soft) !important;
  border: 1px solid var(--corp-primary-border);
}
body.corp-ferie-bemanding .badge.bg-secondary {
  color: #52606f !important;
  background: var(--corp-neutral-soft) !important;
  border: 1px solid var(--corp-neutral-border);
}
body.corp-ferie-bemanding .text-success {
  color: var(--corp-success) !important;
}
body.corp-ferie-bemanding .text-warning {
  color: var(--corp-warning) !important;
}
body.corp-ferie-bemanding .text-danger {
  color: var(--corp-danger) !important;
}

/* Ugelegend */
body.corp-ferie-bemanding .fb-legend {
  padding: .45rem .2rem;
  color: var(--corp-text-2);
}
body.corp-ferie-bemanding .fb-legend > strong {
  margin-right: .2rem;
}

/* Tabeller: mere rolige linjer og grå overskrifter */
body.corp-ferie-bemanding table {
  color: var(--corp-text-2);
}
body.corp-ferie-bemanding table thead th,
body.corp-ferie-bemanding .table-light > * > * {
  color: #475467 !important;
  background: #f3f5f7 !important;
  border-color: var(--corp-border) !important;
  font-weight: 700;
}
body.corp-ferie-bemanding table tbody td,
body.corp-ferie-bemanding table tbody th {
  border-color: #e6eaee !important;
}
body.corp-ferie-bemanding .table-bordered > :not(caption) > * > * {
  border-color: #e1e6eb !important;
}
body.corp-ferie-bemanding .table-hover > tbody > tr:hover > * {
  --bs-table-accent-bg: #fafbfc;
  color: inherit;
}
body.corp-ferie-bemanding .fb-week-table .fb-staff-col {
  background: #fff !important;
  color: var(--corp-text) !important;
  box-shadow: 1px 0 0 #e3e8ed;
}
body.corp-ferie-bemanding .fb-covered-name {
  color: #486d59 !important;
}

/* Rediger og sekundære knapper er neutrale indtil hover */
body.corp-ferie-bemanding .btn-outline-primary,
body.corp-ferie-bemanding .btn-outline-secondary {
  color: #475467;
  background: #fff;
  border-color: var(--corp-border-strong);
}
body.corp-ferie-bemanding .btn-outline-primary:hover,
body.corp-ferie-bemanding .btn-outline-secondary:hover {
  color: var(--corp-primary);
  background: var(--corp-primary-soft);
  border-color: #aac6ea;
}

/* Informationsbokse */
body.corp-ferie-bemanding .alert {
  border-radius: 10px;
  box-shadow: none;
}
body.corp-ferie-bemanding .alert-warning {
  color: var(--corp-warning);
  background: var(--corp-warning-soft);
  border-color: var(--corp-warning-border);
}
body.corp-ferie-bemanding .alert-danger {
  color: #8f2d25;
  background: var(--corp-danger-soft);
  border-color: var(--corp-danger-border);
}
body.corp-ferie-bemanding .alert-success {
  color: var(--corp-success);
  background: var(--corp-success-soft);
  border-color: var(--corp-success-border);
}
body.corp-ferie-bemanding .alert-info,
body.corp-ferie-bemanding .alert-primary {
  color: #315a83;
  background: var(--corp-primary-soft);
  border-color: var(--corp-primary-border);
}

/* Send-vagtplan modal */
body.corp-ferie-bemanding .modal-content {
  border: 1px solid var(--corp-border);
  border-radius: 14px;
  box-shadow: 0 18px 50px rgba(31,41,55,.16);
}
body.corp-ferie-bemanding .modal-header,
body.corp-ferie-bemanding .modal-footer {
  border-color: var(--corp-border);
}
body.corp-ferie-bemanding .fb-roster-recipient {
  border-color: var(--corp-border) !important;
  background: #fff;
}
body.corp-ferie-bemanding .fb-roster-recipient:hover {
  background: #fafbfc;
}
body.corp-ferie-bemanding #sendRosterSubmit.btn-success {
  color: #fff;
  background: var(--corp-primary) !important;
  border-color: var(--corp-primary) !important;
}

/* Print skal fortsat være rent og sort/hvidt. */
@media print {
  body.corp-ferie-bemanding {
    background: #fff !important;
    color: #000 !important;
  }
  body.corp-ferie-bemanding .card {
    border: 1px solid #aaa !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }
  body.corp-ferie-bemanding .card-header,
  body.corp-ferie-bemanding table thead th,
  body.corp-ferie-bemanding .table-light > * > * {
    background: #eee !important;
    color: #000 !important;
  }
  body.corp-ferie-bemanding .badge {
    color: #000 !important;
    background: #fff !important;
    border: 1px solid #777 !important;
  }
  body.corp-ferie-bemanding .fb-week-table .fb-staff-col {
    background: #fff !important;
    box-shadow: none !important;
  }
}


/* CORP_QUALITY_UI_V1
 * Kontrolrapporter / kvalitetsopfølgning.
 * Samme rolige corporate retning som opgaver og ferie/bemanding.
 */
body.corp-quality-page {
  --quality-red: #9a453f;
  --quality-red-soft: #fbf1f0;
  --quality-red-border: #ebcfcc;
  --quality-amber: #745d2b;
  --quality-amber-soft: #f8f4ea;
  --quality-amber-border: #e9dfc8;
  --quality-green: #356c50;
  --quality-green-soft: #eef6f1;
  --quality-green-border: #d7e8de;
  --quality-blue: #365f88;
  --quality-blue-soft: #eef4fa;
  --quality-blue-border: #d3e1ef;
}
body.corp-quality-page main.container { max-width:1380px; }
body.corp-quality-page .portal-legacy-content > .table-responsive,
body.corp-quality-page .container > .table-responsive {
  background:#fff;
  border:1px solid var(--corp-border,#dfe5eb);
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 4px 16px rgba(31,41,55,.035);
}
body.corp-quality-page table.table { margin-bottom:0; }
body.corp-quality-page table.table thead th {
  background:#f7f9fb;
  color:#475467;
  font-size:.82rem;
  font-weight:700;
  border-bottom:1px solid var(--corp-border,#dfe5eb);
  white-space:nowrap;
}
body.corp-quality-page table.table tbody td { border-color:#e8ecf0; }
body.corp-quality-page table.table tbody tr:hover > * { background:#fafbfc; }
body.corp-quality-page table.table tr.table-danger > * {
  --bs-table-bg:#fdf8f7;
  --bs-table-color:#27313d;
  box-shadow:inset 3px 0 0 #c88781;
}
body.corp-quality-page .badge.text-bg-danger,
body.corp-quality-page .badge.bg-danger {
  color:var(--quality-red)!important;
  background:var(--quality-red-soft)!important;
  border:1px solid var(--quality-red-border);
}
body.corp-quality-page .badge.text-bg-warning,
body.corp-quality-page .badge.bg-warning {
  color:var(--quality-amber)!important;
  background:var(--quality-amber-soft)!important;
  border:1px solid var(--quality-amber-border);
}
body.corp-quality-page .badge.text-bg-success,
body.corp-quality-page .badge.bg-success {
  color:var(--quality-green)!important;
  background:var(--quality-green-soft)!important;
  border:1px solid var(--quality-green-border);
}
body.corp-quality-page .badge.text-bg-primary,
body.corp-quality-page .badge.bg-primary {
  color:var(--quality-blue)!important;
  background:var(--quality-blue-soft)!important;
  border:1px solid var(--quality-blue-border);
}
body.corp-quality-page .badge.text-bg-secondary,
body.corp-quality-page .badge.bg-secondary,
body.corp-quality-page .badge.text-bg-light,
body.corp-quality-page .badge.bg-light {
  color:#5d6b79!important;
  background:#f2f4f6!important;
  border:1px solid #dfe4e9!important;
}
body.corp-quality-page .alert-danger {
  color:#843c36;background:var(--quality-red-soft);border-color:var(--quality-red-border);
}
body.corp-quality-page .alert-warning {
  color:#6e5728;background:var(--quality-amber-soft);border-color:var(--quality-amber-border);
}
body.corp-quality-page .alert-success {
  color:#315f47;background:var(--quality-green-soft);border-color:var(--quality-green-border);
}
body.corp-quality-page .alert-primary,
body.corp-quality-page .alert-info {
  color:#365f88;background:var(--quality-blue-soft);border-color:var(--quality-blue-border);
}
body.corp-quality-page .card-rounded { border-radius:14px!important; }
body.corp-quality-page .lbl {
  color:#3f668d!important;background:#eef4fa!important;border:1px solid #d6e2ee;
}
body.corp-quality-page .note-box,
body.corp-quality-page .kr-existing-image {
  background:#f8fafb!important;border-color:#e1e6eb!important;
}
body.corp-quality-page .kr-img { border-color:#dfe5eb!important; }
body.corp-quality-page .kr-manage-dialog {
  border:1px solid #dfe5eb!important;
  box-shadow:0 20px 60px rgba(31,41,55,.20)!important;
}
body.corp-quality-page .kr-manage-head,
body.corp-quality-page .kr-manage-foot { border-color:#e1e6eb!important; }
body.corp-quality-page .btn-outline-danger {
  color:#667085!important;background:#fff!important;border-color:#cfd7df!important;
}
body.corp-quality-page .btn-outline-danger:hover,
body.corp-quality-page .btn-outline-danger:focus {
  color:#963d36!important;background:#fbf1f0!important;border-color:#d7a9a5!important;
}
body.corp-quality-page .btn-success {
  background:#356c50!important;border-color:#356c50!important;
}
body.corp-quality-page .btn-success:hover {
  background:#2d5d45!important;border-color:#2d5d45!important;
}
@media print {
  body.corp-quality-page { background:#fff!important;color:#000!important; }
  body.corp-quality-page .card,
  body.corp-quality-page .table-responsive {
    box-shadow:none!important;border-color:#aaa!important;
  }
  body.corp-quality-page .badge {
    color:#000!important;background:#fff!important;border:1px solid #777!important;
  }
}


/* CORP_MESSAGES_UI_V1
 * Beskeder for admin, staff og kunde.
 * Neutral arbejdsflade; blå bruges til handling, statusfarver kun som signal.
 */
body.corp-message-page {
  --msg-bg:#f6f8fa;
  --msg-surface:#ffffff;
  --msg-surface-soft:#f8fafb;
  --msg-border:#dfe5eb;
  --msg-border-strong:#cbd5df;
  --msg-text:#1f2937;
  --msg-muted:#667085;
  --msg-blue:#2f67a0;
  --msg-blue-soft:#eef4fa;
  --msg-green:#356c50;
  --msg-green-soft:#edf6f1;
  --msg-amber:#745d2b;
  --msg-amber-soft:#f8f3e8;
  --msg-red:#963d36;
  --msg-red-soft:#fbf1f0;
  background:var(--msg-bg);
  color:var(--msg-text);
}
body.corp-message-page main.container {
  max-width:1260px;
}
body.corp-message-page .container.my-3,
body.corp-message-page .container.py-3,
body.corp-message-page .container.py-4 {
  max-width:1120px;
}

/* Cards/thread surfaces */
body.corp-message-page .card {
  border:1px solid var(--msg-border) !important;
  border-radius:14px !important;
  box-shadow:0 4px 16px rgba(31,41,55,.04);
}
body.corp-message-page .corp-message-origin {
  border-left:4px solid #8aa7c3 !important;
}
body.corp-message-page .corp-message-thread {
  background:#fbfcfd;
}
body.corp-message-page .corp-message-compose-card,
body.corp-message-page .corp-message-compose-panel {
  background:#fff;
  border:1px solid var(--msg-border);
  border-radius:14px;
  box-shadow:0 4px 16px rgba(31,41,55,.035);
}
body.corp-message-page .corp-message-compose-panel {
  padding:20px;
}

/* Replies: subtle conversational hierarchy */
body.corp-message-page .corp-message-reply {
  border:1px solid var(--msg-border) !important;
  background:#fff !important;
  border-radius:10px !important;
  box-shadow:none !important;
}
body.corp-message-page .corp-message-reply-admin,
body.corp-message-page .corp-message-reply-staff {
  border-left:3px solid #8eabc7 !important;
  background:#f8fbfe !important;
}
body.corp-message-page .corp-message-reply-customer {
  border-left:3px solid #aeb8c2 !important;
  background:#fbfcfd !important;
}

/* Existing .reply had a stronger vertical line; make it quieter */
body.corp-message-page .reply {
  border-left:3px solid #d3dbe3 !important;
  padding:.75rem .9rem !important;
}
body.corp-message-page .reply.corp-message-reply-admin,
body.corp-message-page .reply.corp-message-reply-staff {
  border-left-color:#8eabc7 !important;
}

/* Text/meta */
body.corp-message-page .text-muted,
body.corp-message-page .form-text {
  color:var(--msg-muted) !important;
}
body.corp-message-page .msg-body,
body.corp-message-page .reply-body {
  color:#27313d;
  line-height:1.55;
}
body.corp-message-page h1,
body.corp-message-page h2 {
  color:#202b38;
}

/* Forms */
body.corp-message-page .form-control,
body.corp-message-page .form-select {
  border-color:#ccd5de;
  border-radius:9px;
  box-shadow:none;
}
body.corp-message-page .form-control:focus,
body.corp-message-page .form-select:focus {
  border-color:#8db2d6;
  box-shadow:0 0 0 .2rem rgba(47,103,160,.10);
}
body.corp-message-page textarea.form-control {
  min-height:112px;
}

/* Buttons */
body.corp-message-page .btn-primary {
  background:#2f67a0 !important;
  border-color:#2f67a0 !important;
}
body.corp-message-page .btn-primary:hover,
body.corp-message-page .btn-primary:focus {
  background:#285989 !important;
  border-color:#285989 !important;
}
body.corp-message-page .btn-outline-primary {
  color:#35658f !important;
  border-color:#b7cce0 !important;
  background:#fff !important;
}
body.corp-message-page .btn-outline-primary:hover {
  color:#285989 !important;
  background:var(--msg-blue-soft) !important;
  border-color:#94b4d1 !important;
}
body.corp-message-page .btn-light,
body.corp-message-page .btn-outline-secondary,
body.corp-message-page .btn-outline-dark {
  color:#52606e !important;
  background:#fff !important;
  border-color:#cdd6df !important;
}
body.corp-message-page .btn-light:hover,
body.corp-message-page .btn-outline-secondary:hover,
body.corp-message-page .btn-outline-dark:hover {
  color:#2f5f8c !important;
  background:#f3f7fa !important;
  border-color:#b9c9d8 !important;
}
/* Destructive action is quiet until hover */
body.corp-message-page .btn-danger,
body.corp-message-page .btn-outline-danger {
  color:#7b4b47 !important;
  background:#fff !important;
  border-color:#d8c1bf !important;
}
body.corp-message-page .btn-danger:hover,
body.corp-message-page .btn-outline-danger:hover {
  color:#8f3730 !important;
  background:var(--msg-red-soft) !important;
  border-color:#d9a7a2 !important;
}

/* Status */
body.corp-message-page .badge.text-bg-warning,
body.corp-message-page .badge.bg-warning {
  color:var(--msg-amber) !important;
  background:var(--msg-amber-soft) !important;
  border:1px solid #e9ddc3;
}
body.corp-message-page .badge.text-bg-success,
body.corp-message-page .badge.bg-success {
  color:var(--msg-green) !important;
  background:var(--msg-green-soft) !important;
  border:1px solid #d5e7dc;
}
body.corp-message-page .badge.text-bg-secondary,
body.corp-message-page .badge.bg-secondary,
body.corp-message-page .badge.bg-light {
  color:#596776 !important;
  background:#f1f4f6 !important;
  border:1px solid #dfe4e9 !important;
}

/* Alerts */
body.corp-message-page .alert-success {
  color:#315f47;
  background:var(--msg-green-soft);
  border-color:#d5e7dc;
}
body.corp-message-page .alert-info,
body.corp-message-page .alert-primary {
  color:#355f87;
  background:var(--msg-blue-soft);
  border-color:#d3e0ed;
}
body.corp-message-page .alert-warning {
  color:#6c572c;
  background:var(--msg-amber-soft);
  border-color:#e8dcc2;
}
body.corp-message-page .alert-danger {
  color:#843c36;
  background:var(--msg-red-soft);
  border-color:#ebcfcc;
}

/* Message lists */
body.corp-message-page .table-responsive {
  background:#fff;
  border:1px solid var(--msg-border);
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 4px 14px rgba(31,41,55,.035);
}
body.corp-message-page .corp-message-table {
  margin-bottom:0;
}
body.corp-message-page .corp-message-table thead th {
  background:#f7f9fb;
  color:#475467;
  border-bottom:1px solid var(--msg-border);
  font-size:.82rem;
  font-weight:700;
}
body.corp-message-page .corp-message-table tbody td {
  border-color:#e8ecf0;
}
body.corp-message-page .corp-message-table.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-bg-type:#fbfcfd;
}
body.corp-message-page .corp-message-table tbody tr:hover > * {
  background:#f7f9fb;
}
body.corp-message-page .corp-message-table a {
  color:#315f8a;
  font-weight:600;
  text-decoration:none;
}
body.corp-message-page .corp-message-table a:hover {
  text-decoration:underline;
}

/* Legacy list cards */
body.corp-message-page .corp-message-list {
  border:1px solid var(--msg-border);
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 4px 14px rgba(31,41,55,.035);
}
body.corp-message-page .corp-message-list .list-group-item {
  border-color:#e7ebef;
  background:#fff;
}
body.corp-message-page .corp-message-list .list-group-item:hover {
  background:#f8fafb;
}
body.corp-message-page .corp-message-list .border-success {
  border-left-color:#8baa98 !important;
}
body.corp-message-page .corp-message-list .border-danger {
  border-left-color:#c28a84 !important;
}

/* Filters */
body.corp-message-list-page form.d-flex.gap-2.mb-3 {
  background:#fff;
  border:1px solid var(--msg-border);
  border-radius:12px;
  padding:12px 14px;
  align-items:center;
  flex-wrap:wrap;
}

/* Customer compose: floorplan helper card */
body.corp-message-compose-page .card {
  box-shadow:none;
}
body.corp-message-compose-page .corp-message-compose-panel {
  max-width:900px;
}

/* Attachments */
body.corp-message-page a[href*="/uploads/messages/"] {
  color:#315f8a;
  text-decoration:none;
}
body.corp-message-page a[href*="/uploads/messages/"]:hover {
  text-decoration:underline;
}

/* Responsive */
@media (max-width:767.98px) {
  body.corp-message-page .container.my-3,
  body.corp-message-page .container.py-3,
  body.corp-message-page .container.py-4 {
    padding-left:12px;
    padding-right:12px;
  }
  body.corp-message-page .corp-message-compose-panel {
    padding:15px;
  }
  body.corp-message-page .d-flex.justify-content-between.align-items-center {
    gap:10px;
    flex-wrap:wrap;
  }
}


/* CORP_PROPOSALS_UI_V1
 * Tilbud: oversigt, oprettelse, tilbudsvisning og beregning.
 * Neutral arbejdsflade med blå primær handling og afdæmpede statusfarver.
 */
body.corp-proposal-page {
  --proposal-bg:#f6f8fa;
  --proposal-surface:#fff;
  --proposal-soft:#f8fafb;
  --proposal-border:#dfe5eb;
  --proposal-border-strong:#cad4de;
  --proposal-text:#1f2937;
  --proposal-muted:#667085;
  --proposal-blue:#2f67a0;
  --proposal-blue-soft:#eef4fa;
  --proposal-green:#356c50;
  --proposal-green-soft:#edf6f1;
  --proposal-amber:#745d2b;
  --proposal-amber-soft:#f8f3e8;
  --proposal-red:#963d36;
  --proposal-red-soft:#fbf1f0;
  background:var(--proposal-bg);
  color:var(--proposal-text);
}
body.corp-proposal-page main.container {
  max-width:1400px;
}
body.corp-proposal-page .text-muted,
body.corp-proposal-page .muted {
  color:var(--proposal-muted) !important;
}

/* Fælles kort/formularer */
body.corp-proposal-page .card,
body.corp-proposal-page .corp-proposal-create-form {
  background:#fff;
  border:1px solid var(--proposal-border) !important;
  border-radius:14px !important;
  box-shadow:0 4px 16px rgba(31,41,55,.04);
}
body.corp-proposal-page .corp-proposal-create-form {
  padding:20px;
}
body.corp-proposal-page .card-header {
  background:#f8fafb !important;
  border-bottom:1px solid var(--proposal-border) !important;
}
body.corp-proposal-page .form-control,
body.corp-proposal-page .form-select,
body.corp-proposal-page input,
body.corp-proposal-page select,
body.corp-proposal-page textarea {
  border-color:#ccd5de;
  border-radius:9px;
  box-shadow:none;
}
body.corp-proposal-page .form-control:focus,
body.corp-proposal-page .form-select:focus,
body.corp-proposal-page input:focus,
body.corp-proposal-page select:focus,
body.corp-proposal-page textarea:focus {
  border-color:#8eb2d5;
  box-shadow:0 0 0 .2rem rgba(47,103,160,.10);
  outline:0;
}
body.corp-proposal-page .input-group-text {
  background:#f7f9fb;
  border-color:#ccd5de;
  color:#667085;
}

/* Sidehoved / handlingslinje */
body.corp-proposal-page .corp-proposal-toolbar {
  background:#fff;
  border:1px solid var(--proposal-border);
  border-radius:14px;
  padding:14px 16px;
  box-shadow:0 4px 14px rgba(31,41,55,.035);
  margin-bottom:16px;
}
body.corp-proposal-page .corp-proposal-toolbar h1 {
  color:#202b38;
}

/* Knapper: blå = primær, resten neutral */
body.corp-proposal-page .btn-primary,
body.corp-proposal-page button.primary {
  background:var(--proposal-blue) !important;
  border-color:var(--proposal-blue) !important;
  color:#fff !important;
}
body.corp-proposal-page .btn-primary:hover,
body.corp-proposal-page button.primary:hover {
  background:#285989 !important;
  border-color:#285989 !important;
}
body.corp-proposal-page .btn-outline-primary,
body.corp-proposal-page .btn-outline-success,
body.corp-proposal-page .btn-outline-secondary,
body.corp-proposal-page .btn-outline-dark,
body.corp-proposal-page .wrap button:not(.primary):not(.danger) {
  color:#52677b !important;
  background:#fff !important;
  border-color:#cbd5df !important;
}
body.corp-proposal-page .btn-outline-primary:hover,
body.corp-proposal-page .btn-outline-success:hover,
body.corp-proposal-page .btn-outline-secondary:hover,
body.corp-proposal-page .btn-outline-dark:hover,
body.corp-proposal-page .wrap button:not(.primary):not(.danger):hover {
  color:#2f5f8c !important;
  background:var(--proposal-blue-soft) !important;
  border-color:#a9c2da !important;
}
body.corp-proposal-page .btn-outline-warning {
  color:#6f5a2d !important;
  background:#fff !important;
  border-color:#d9cfbb !important;
}
body.corp-proposal-page .btn-outline-warning:hover {
  background:var(--proposal-amber-soft) !important;
  border-color:#d8c8a6 !important;
}
body.corp-proposal-page .btn-outline-danger,
body.corp-proposal-page button.danger {
  color:#7a4b47 !important;
  background:#fff !important;
  border-color:#d8c2bf !important;
}
body.corp-proposal-page .btn-outline-danger:hover,
body.corp-proposal-page button.danger:hover {
  color:#8f3730 !important;
  background:var(--proposal-red-soft) !important;
  border-color:#d9a7a2 !important;
}

/* Badges / status */
body.corp-proposal-page .badge.bg-secondary,
body.corp-proposal-page .badge.bg-light,
body.corp-proposal-page .pill {
  color:#566575 !important;
  background:#f1f4f6 !important;
  border:1px solid #dde3e8 !important;
}
body.corp-proposal-page .status-draft {
  color:#596776 !important;
  background:#f2f4f6 !important;
  border-color:#dde3e8 !important;
}
body.corp-proposal-page .status-sent {
  color:#365f88 !important;
  background:var(--proposal-blue-soft) !important;
  border-color:#d2e0ed !important;
}
body.corp-proposal-page .status-won {
  color:var(--proposal-green) !important;
  background:var(--proposal-green-soft) !important;
  border-color:#d5e7dc !important;
}
body.corp-proposal-page .status-lost {
  color:#8b4540 !important;
  background:var(--proposal-red-soft) !important;
  border-color:#ebcfcc !important;
}

/* Oversigten */
body.corp-proposals-list .wrap {
  max-width:1360px !important;
  margin:20px auto !important;
  padding:0 18px !important;
}
body.corp-proposals-list .toolbar:first-child {
  background:#fff;
  border:1px solid var(--proposal-border);
  border-radius:14px;
  padding:14px 16px;
  box-shadow:0 4px 14px rgba(31,41,55,.035);
  margin-bottom:12px !important;
}
body.corp-proposals-list form.toolbar {
  background:#fff;
  border:1px solid var(--proposal-border);
  border-radius:12px;
  padding:12px 14px;
  margin-bottom:14px !important;
}
body.corp-proposals-list .tablewrap {
  background:#fff;
  border:1px solid var(--proposal-border);
  border-radius:14px;
  overflow:auto;
  box-shadow:0 4px 14px rgba(31,41,55,.035);
}
body.corp-proposals-list table {
  margin:0;
  background:#fff;
}
body.corp-proposals-list th {
  background:#f7f9fb !important;
  color:#475467;
  font-size:.82rem;
  font-weight:700 !important;
  border-bottom:1px solid var(--proposal-border) !important;
}
body.corp-proposals-list td {
  border-bottom:1px solid #e8ecf0 !important;
}
body.corp-proposals-list tr:hover td {
  background:#fafbfc !important;
}
body.corp-proposals-list .actions {
  gap:7px !important;
}
body.corp-proposals-list .actions button,
body.corp-proposals-list .pagination button,
body.corp-proposals-list .toolbar button {
  padding:7px 10px !important;
  border-radius:8px !important;
}
body.corp-proposals-list .pagination {
  margin-top:14px !important;
}

/* Tilbudsvisning */
body.corp-proposal-view .corp-proposal-main-form {
  border-left:4px solid #8aa7c3 !important;
}
body.corp-proposal-view .card {
  margin-top:16px;
}
body.corp-proposal-view .table-responsive {
  border:1px solid var(--proposal-border);
  border-radius:12px;
  overflow:auto;
  background:#fff;
}
body.corp-proposal-view .table-responsive table {
  margin-bottom:0;
}
body.corp-proposal-view .table thead th {
  background:#f7f9fb;
  color:#475467;
  border-bottom-color:var(--proposal-border);
}
body.corp-proposal-view .table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-bg-type:#fbfcfd;
}
body.corp-proposal-view .fp-rooms,
body.corp-proposal-view .fp-wrap {
  border-color:var(--proposal-border) !important;
}
body.corp-proposal-view .modal-content {
  border:1px solid var(--proposal-border);
  border-radius:14px;
  box-shadow:0 20px 60px rgba(31,41,55,.20);
}
body.corp-proposal-view .modal-header,
body.corp-proposal-view .modal-footer {
  border-color:#e2e7ec;
}

/* Beregning */
body.corp-proposal-calculation #page {
  max-width:1260px;
}
body.corp-proposal-calculation .card {
  border-left:4px solid #a3b6c8 !important;
}
body.corp-proposal-calculation .p-3.border.rounded.bg-light {
  background:#f8fafb !important;
  border:1px solid var(--proposal-border) !important;
  border-radius:12px !important;
  height:100%;
}
body.corp-proposal-calculation code {
  color:#445d75;
  background:#eef2f6;
  padding:1px 4px;
  border-radius:4px;
}
body.corp-proposal-calculation hr {
  border-color:#dfe5eb;
  opacity:1;
}
body.corp-proposal-calculation .alert-info {
  color:#355f87;
  background:var(--proposal-blue-soft);
  border-color:#d3e0ed;
}

/* Opret tilbud */
body.corp-proposal-create .container.my-4 {
  max-width:1050px;
}
body.corp-proposal-create .corp-proposal-create-form {
  margin:0;
}
body.corp-proposal-create h1 {
  font-size:1.45rem;
  color:#202b38;
}
body.corp-proposal-create .alert-danger {
  color:#843c36;
  background:var(--proposal-red-soft);
  border-color:#ebcfcc;
}

@media (max-width:767.98px) {
  body.corp-proposal-page .corp-proposal-toolbar {
    align-items:flex-start !important;
  }
  body.corp-proposal-page .corp-proposal-toolbar > .d-flex {
    width:100%;
  }
  body.corp-proposals-list .wrap {
    padding:0 10px !important;
  }
}


/* CORP_APV_UI_V1
 * APV / arbejdsmiljø / kemiregister / instruktioner / nærved.
 * Sikkerhedsfarver bevares som betydning, men ikke som store farveflader.
 */
body.corp-apv-page {
  --apv-bg:#f6f8fa;
  --apv-surface:#ffffff;
  --apv-soft:#f8fafb;
  --apv-border:#dfe5eb;
  --apv-border-strong:#cdd6df;
  --apv-text:#1f2937;
  --apv-muted:#667085;
  --apv-blue:#315f8d;
  --apv-blue-soft:#eef4fa;
  --apv-blue-border:#d1dfed;
  --apv-green:#356c50;
  --apv-green-soft:#edf6f1;
  --apv-green-border:#d4e7dc;
  --apv-amber:#745d2b;
  --apv-amber-soft:#f8f3e8;
  --apv-amber-border:#e8dcc2;
  --apv-red:#963d36;
  --apv-red-soft:#fbf1f0;
  --apv-red-border:#ebcfcc;
  background:var(--apv-bg);
  color:var(--apv-text);
}
body.corp-apv-page main.container { max-width:1380px; }
body.corp-apv-page .container.py-3,
body.corp-apv-page .container.py-4 { max-width:1280px; }

/* Sideoverskrifter og metadata */
body.corp-apv-page h1,
body.corp-apv-page h2,
body.corp-apv-page h3,
body.corp-apv-page h4 { color:#202b38; }
body.corp-apv-page .text-muted,
body.corp-apv-page .form-text { color:var(--apv-muted)!important; }

/* Kort */
body.corp-apv-page .card {
  border:1px solid var(--apv-border)!important;
  border-radius:14px!important;
  box-shadow:0 4px 16px rgba(31,41,55,.04)!important;
  background:var(--apv-surface);
}
body.corp-apv-page .card-header {
  background:var(--apv-soft)!important;
  border-bottom:1px solid var(--apv-border)!important;
  color:#344054;
}
body.corp-apv-page .card-footer {
  background:#fbfcfd!important;
  border-top:1px solid var(--apv-border)!important;
}

/* KPI/statuskort: farve som smal indikator i stedet for hele rammen. */
body.corp-apv-page .card.border-danger,
body.corp-apv-page .card.border-warning,
body.corp-apv-page .card.border-success,
body.corp-apv-page .card.border-primary,
body.corp-apv-page .card.border-primary-subtle {
  border:1px solid var(--apv-border)!important;
}
body.corp-apv-page .card.border-danger { border-left:4px solid #bd7771!important; }
body.corp-apv-page .card.border-warning { border-left:4px solid #b69a62!important; }
body.corp-apv-page .card.border-success { border-left:4px solid #7ea08a!important; }
body.corp-apv-page .card.border-primary,
body.corp-apv-page .card.border-primary-subtle { border-left:4px solid #8ca9c4!important; }

/* Tabeller */
body.corp-apv-page .table-responsive {
  background:#fff;
  border:1px solid var(--apv-border);
  border-radius:14px;
  overflow:auto;
  box-shadow:0 4px 14px rgba(31,41,55,.03);
}
body.corp-apv-page .card > .table-responsive {
  border:0;
  border-radius:0 0 14px 14px;
  box-shadow:none;
}
body.corp-apv-page table.table { margin-bottom:0; }
body.corp-apv-page table.table thead th,
body.corp-apv-page table.table thead.table-light th,
body.corp-apv-page .table-light > * {
  --bs-table-bg:#f7f9fb;
  --bs-table-color:#475467;
  border-color:var(--apv-border);
  font-size:.82rem;
  font-weight:700;
}
body.corp-apv-page table.table tbody td { border-color:#e8ecf0; }
body.corp-apv-page table.table tbody tr:hover > * { background:#fafbfc; }

/* Badges: professionelle soft-statusser. */
body.corp-apv-page .badge {
  border-radius:999px;
  font-weight:650;
  letter-spacing:.01em;
}
body.corp-apv-page .badge.text-bg-success,
body.corp-apv-page .badge.bg-success {
  color:var(--apv-green)!important;
  background:var(--apv-green-soft)!important;
  border:1px solid var(--apv-green-border)!important;
}
body.corp-apv-page .badge.text-bg-warning,
body.corp-apv-page .badge.bg-warning {
  color:var(--apv-amber)!important;
  background:var(--apv-amber-soft)!important;
  border:1px solid var(--apv-amber-border)!important;
}
body.corp-apv-page .badge.text-bg-danger,
body.corp-apv-page .badge.bg-danger {
  color:var(--apv-red)!important;
  background:var(--apv-red-soft)!important;
  border:1px solid var(--apv-red-border)!important;
}
body.corp-apv-page .badge.text-bg-primary,
body.corp-apv-page .badge.bg-primary {
  color:var(--apv-blue)!important;
  background:var(--apv-blue-soft)!important;
  border:1px solid var(--apv-blue-border)!important;
}
body.corp-apv-page .badge.text-bg-secondary,
body.corp-apv-page .badge.bg-secondary,
body.corp-apv-page .badge.text-bg-light,
body.corp-apv-page .badge.bg-light {
  color:#596776!important;
  background:#f1f4f6!important;
  border:1px solid #dfe4e9!important;
}

/* Alerts: samme signal, mindre farveflade. */
body.corp-apv-page .alert {
  border-radius:11px;
  border-width:1px;
}
body.corp-apv-page .alert-info,
body.corp-apv-page .alert-primary {
  color:#355f87;
  background:var(--apv-blue-soft);
  border-color:var(--apv-blue-border);
}
body.corp-apv-page .alert-success {
  color:#315f47;
  background:var(--apv-green-soft);
  border-color:var(--apv-green-border);
}
body.corp-apv-page .alert-warning {
  color:#6c572c;
  background:var(--apv-amber-soft);
  border-color:var(--apv-amber-border);
}
body.corp-apv-page .alert-danger {
  color:#843c36;
  background:var(--apv-red-soft);
  border-color:var(--apv-red-border);
}
body.corp-apv-page .alert-light,
body.corp-apv-page .alert-secondary {
  color:#52606e;
  background:#f8fafb;
  border-color:var(--apv-border)!important;
}

/* Formularer */
body.corp-apv-page .form-control,
body.corp-apv-page .form-select {
  border-color:#ccd5de;
  border-radius:9px;
  box-shadow:none;
}
body.corp-apv-page .form-control:focus,
body.corp-apv-page .form-select:focus,
body.corp-apv-page .form-check-input:focus {
  border-color:#8db2d6;
  box-shadow:0 0 0 .2rem rgba(49,95,141,.10);
}
body.corp-apv-page .form-check-input:checked {
  background-color:#4776a3;
  border-color:#4776a3;
}
body.corp-apv-page textarea.form-control { line-height:1.5; }

/* Tabs på kunde-APV */
body.corp-apv-page .nav-tabs {
  border-bottom:1px solid var(--apv-border);
  gap:2px;
}
body.corp-apv-page .nav-tabs .nav-link {
  color:#5d6b79;
  border:1px solid transparent;
  border-radius:9px 9px 0 0;
  font-weight:600;
  padding:.65rem .8rem;
}
body.corp-apv-page .nav-tabs .nav-link:hover {
  color:#315f8d;
  background:#f6f9fc;
  border-color:#e3e8ee #e3e8ee transparent;
}
body.corp-apv-page .nav-tabs .nav-link.active {
  color:#274f78;
  background:#fff;
  border-color:var(--apv-border) var(--apv-border) #fff;
}
body.corp-apv-page .tab-content {
  background:#fff;
  border-color:var(--apv-border)!important;
  box-shadow:0 4px 14px rgba(31,41,55,.025);
}

/* Knap-hierarki */
body.corp-apv-page .btn-primary {
  background:#315f8d!important;
  border-color:#315f8d!important;
}
body.corp-apv-page .btn-primary:hover,
body.corp-apv-page .btn-primary:focus {
  background:#294f76!important;
  border-color:#294f76!important;
}
body.corp-apv-page .btn-success {
  background:#356c50!important;
  border-color:#356c50!important;
}
body.corp-apv-page .btn-success:hover { background:#2e5d45!important; border-color:#2e5d45!important; }
body.corp-apv-page .btn-outline-primary {
  color:#315f8d!important;
  background:#fff!important;
  border-color:#b7cbe0!important;
}
body.corp-apv-page .btn-outline-primary:hover {
  color:#294f76!important;
  background:var(--apv-blue-soft)!important;
  border-color:#93b1ce!important;
}
body.corp-apv-page .btn-outline-secondary,
body.corp-apv-page .btn-light {
  color:#52606e!important;
  background:#fff!important;
  border-color:#cdd6df!important;
}
body.corp-apv-page .btn-outline-secondary:hover,
body.corp-apv-page .btn-light:hover {
  color:#315f8d!important;
  background:#f3f7fa!important;
  border-color:#b9c9d8!important;
}
/* Destruktiv handling er neutral indtil hover. */
body.corp-apv-page .btn-danger,
body.corp-apv-page .btn-outline-danger {
  color:#72504c!important;
  background:#fff!important;
  border-color:#d6c0bd!important;
}
body.corp-apv-page .btn-danger:hover,
body.corp-apv-page .btn-outline-danger:hover {
  color:#8f3730!important;
  background:var(--apv-red-soft)!important;
  border-color:#d9a7a2!important;
}

/* Sticky opfølgningskort ved nærvedshændelser */
body.corp-apv-page .sticky-top.card {
  top:calc(var(--brand-h, 80px) + 28px)!important;
}

/* Links */
body.corp-apv-page a:not(.btn):not(.nav-link):not(.dropdown-item) {
  color:#315f8d;
}

/* Mobil: faner kan scrolles vandret i stedet for at presse siden. */
@media (max-width:991.98px) {
  body.corp-apv-page .nav-tabs {
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:thin;
    padding-bottom:1px;
  }
  body.corp-apv-page .nav-tabs .nav-item { flex:0 0 auto; }
  body.corp-apv-page .nav-tabs .nav-link { white-space:nowrap; }
}

/* Print/dokumentpakker: ingen dekorative skygger/farveflader på papir. */
@media print {
  body.corp-apv-page { background:#fff!important; color:#000!important; }
  body.corp-apv-page .card,
  body.corp-apv-page .table-responsive,
  body.corp-apv-page .tab-content {
    box-shadow:none!important;
    border-color:#999!important;
  }
  body.corp-apv-page .badge {
    color:#000!important;
    background:#fff!important;
    border:1px solid #777!important;
  }
}


/* CORP_WORKTIME_UI_V1
 * Arbejdstimer, tidsregistrering og udlæg.
 * Tal-tunge sider holdes neutrale; farve bruges kun til afvigelser/status.
 */
body.corp-worktime-page {
  --wt-bg:#f6f8fa;
  --wt-surface:#ffffff;
  --wt-surface-soft:#f8fafb;
  --wt-border:#dfe5eb;
  --wt-border-strong:#cbd5df;
  --wt-text:#1f2937;
  --wt-muted:#667085;
  --wt-blue:#2f67a0;
  --wt-blue-soft:#eef4fa;
  --wt-green:#356c50;
  --wt-green-soft:#edf6f1;
  --wt-amber:#745d2b;
  --wt-amber-soft:#f8f3e8;
  --wt-red:#913f39;
  --wt-red-soft:#fbf1f0;
  background:var(--wt-bg);
  color:var(--wt-text);
}

body.corp-worktime-page main.container {
  max-width:1440px;
}

/* Kort og hovedflader */
body.corp-worktime-page .card {
  border:1px solid var(--wt-border) !important;
  border-radius:14px !important;
  box-shadow:0 4px 16px rgba(31,41,55,.04) !important;
  background:#fff;
}
body.corp-worktime-page .card-header {
  background:#f8fafb !important;
  border-bottom:1px solid var(--wt-border) !important;
  color:#27313d;
}
body.corp-worktime-page .text-muted,
body.corp-worktime-page .form-text {
  color:var(--wt-muted) !important;
}

/* Filterlinje på timeoversigterne */
body.corp-worktime-page .corp-worktime-filter {
  align-items:center;
  flex-wrap:wrap;
}
body.corp-worktime-page .corp-worktime-filter .form-control {
  min-width:145px;
}

/* Tabeller */
body.corp-worktime-page .table-responsive {
  background:#fff;
}
body.corp-worktime-page table.table {
  margin-bottom:0;
}
body.corp-worktime-page table.table thead th,
body.corp-worktime-page table.table tfoot th {
  background:#f7f9fb !important;
  color:#475467;
  border-color:var(--wt-border);
  font-size:.83rem;
  font-weight:700;
  vertical-align:middle;
}
body.corp-worktime-page table.table tbody td {
  border-color:#e8ecf0;
  vertical-align:middle;
}
body.corp-worktime-page table.table.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-bg-type:#fbfcfd;
}
body.corp-worktime-page table.table tbody tr:hover > * {
  background:#f7f9fb;
}
body.corp-worktime-page table.table a.link-primary,
body.corp-worktime-page table.table a {
  color:#315f8a;
}

/* Total-kolonner/tal */
body.corp-worktime-overview .corp-worktime-table td:last-child,
body.corp-worktime-overview .corp-worktime-table th:last-child {
  background:#fafbfd;
}
body.corp-worktime-overview .corp-worktime-table tfoot th {
  border-top:2px solid #cfd7df;
}

/* Aconto / negative saldoer: tydelige, men ikke skrigende */
body.corp-worktime-page .text-danger {
  color:#974a43 !important;
}
body.corp-worktime-page .alert-warning {
  color:#6c572c;
  background:var(--wt-amber-soft);
  border-color:#e8dcc2;
}
body.corp-worktime-page .alert-danger {
  color:#843c36;
  background:var(--wt-red-soft);
  border-color:#ebcfcc;
}
body.corp-worktime-page .alert-success {
  color:#315f47;
  background:var(--wt-green-soft);
  border-color:#d5e7dc;
}
body.corp-worktime-page .alert-info {
  color:#355f87;
  background:var(--wt-blue-soft);
  border-color:#d3e0ed;
}

/* Formularer */
body.corp-worktime-page .form-control,
body.corp-worktime-page .form-select {
  border-color:#ccd5de;
  border-radius:9px;
  box-shadow:none;
}
body.corp-worktime-page .form-control:focus,
body.corp-worktime-page .form-select:focus {
  border-color:#8db2d6;
  box-shadow:0 0 0 .2rem rgba(47,103,160,.10);
}
body.corp-worktime-page .form-label {
  color:#3b4654;
  font-weight:600;
}

/* Knap-hierarki */
body.corp-worktime-page .btn-primary,
body.corp-worktime-page .btn-success {
  background:#2f67a0 !important;
  border-color:#2f67a0 !important;
  color:#fff !important;
}
body.corp-worktime-page .btn-primary:hover,
body.corp-worktime-page .btn-success:hover {
  background:#285989 !important;
  border-color:#285989 !important;
}
body.corp-worktime-page .btn-outline-primary {
  color:#35658f !important;
  border-color:#b7cce0 !important;
  background:#fff !important;
}
body.corp-worktime-page .btn-outline-primary:hover {
  color:#285989 !important;
  background:var(--wt-blue-soft) !important;
  border-color:#94b4d1 !important;
}
body.corp-worktime-page .btn-outline-secondary,
body.corp-worktime-page .btn-outline-dark {
  color:#52606e !important;
  background:#fff !important;
  border-color:#cdd6df !important;
}
body.corp-worktime-page .btn-outline-secondary:hover,
body.corp-worktime-page .btn-outline-dark:hover {
  color:#2f5f8c !important;
  background:#f3f7fa !important;
  border-color:#b9c9d8 !important;
}

/* Slet/tjek-ud er destruktive handlinger: neutrale indtil hover */
body.corp-worktime-page .btn-danger,
body.corp-worktime-page .btn-outline-danger {
  color:#687381 !important;
  background:#fff !important;
  border-color:#cfd7df !important;
}
body.corp-worktime-page .btn-danger:hover,
body.corp-worktime-page .btn-outline-danger:hover {
  color:#8f3730 !important;
  background:var(--wt-red-soft) !important;
  border-color:#d9a7a2 !important;
}

/* Statusbadges */
body.corp-worktime-page .badge.text-bg-warning,
body.corp-worktime-page .badge.bg-warning {
  color:var(--wt-amber) !important;
  background:var(--wt-amber-soft) !important;
  border:1px solid #e9ddc3;
}
body.corp-worktime-page .badge.text-bg-success,
body.corp-worktime-page .badge.bg-success {
  color:var(--wt-green) !important;
  background:var(--wt-green-soft) !important;
  border:1px solid #d5e7dc;
}
body.corp-worktime-page .badge.text-bg-danger,
body.corp-worktime-page .badge.bg-danger {
  color:var(--wt-red) !important;
  background:var(--wt-red-soft) !important;
  border:1px solid #ebcfcc;
}

/* Tidsmonitor: åben række fremhæves med diskret venstrekant */
body.corp-time-monitor tr.table-warning > * {
  --bs-table-bg:#fdfaf4;
}
body.corp-time-monitor tr.table-warning > *:first-child {
  box-shadow:inset 3px 0 0 #b79a60;
}

/* Udlæg: eksisterende inline card-shadow skal underordnes fælles design */
body.corp-expense-page .card {
  border:1px solid var(--wt-border) !important;
  box-shadow:0 4px 16px rgba(31,41,55,.04) !important;
}

/* Staff: stor gem-knap beholdes tydelig */
body.corp-worktime-staff .d-grid .btn-primary {
  min-height:46px;
  font-weight:650;
}

/* Mobil */
@media (max-width:767.98px) {
  body.corp-worktime-page .corp-worktime-filter {
    width:100%;
  }
  body.corp-worktime-page .corp-worktime-filter .form-control,
  body.corp-worktime-page .corp-worktime-filter .btn {
    flex:1 1 140px;
  }
  body.corp-worktime-page .table-responsive {
    border-radius:10px;
  }
}

@media print {
  body.corp-worktime-page {
    background:#fff !important;
    color:#000 !important;
  }
  body.corp-worktime-page .card {
    box-shadow:none !important;
    border-color:#aaa !important;
  }
}


/* CORP_MASTERDATA_UI_V1
 * Kunder + medarbejder/personale administration.
 * Stamdata skal være roligt, præcist og informationsorienteret.
 */
body.corp-masterdata-page {
  --md-bg:#f6f8fa;
  --md-surface:#ffffff;
  --md-soft:#f8fafb;
  --md-border:#dfe5eb;
  --md-border-strong:#cbd5df;
  --md-text:#1f2937;
  --md-muted:#667085;
  --md-blue:#2f67a0;
  --md-blue-soft:#eef4fa;
  --md-green:#356c50;
  --md-green-soft:#edf6f1;
  --md-amber:#745d2b;
  --md-amber-soft:#f8f3e8;
  --md-red:#913f39;
  --md-red-soft:#fbf1f0;
  background:var(--md-bg);
  color:var(--md-text);
}
body.corp-masterdata-page main.container { max-width:1440px; }

body.corp-masterdata-page .card {
  border:1px solid var(--md-border) !important;
  border-radius:14px !important;
  box-shadow:0 4px 16px rgba(31,41,55,.04) !important;
  background:#fff;
}
body.corp-masterdata-page .card-header {
  background:#f8fafb !important;
  border-bottom:1px solid var(--md-border) !important;
  color:#27313d;
}
body.corp-masterdata-page .text-muted,
body.corp-masterdata-page .form-text { color:var(--md-muted) !important; }

/* Forms */
body.corp-masterdata-page .form-control,
body.corp-masterdata-page .form-select {
  border-color:#ccd5de;
  border-radius:9px;
  box-shadow:none;
}
body.corp-masterdata-page .form-control:focus,
body.corp-masterdata-page .form-select:focus {
  border-color:#8db2d6;
  box-shadow:0 0 0 .2rem rgba(47,103,160,.10);
}
body.corp-masterdata-page .form-label {
  color:#3b4654;
  font-weight:600;
}

/* Tables */
body.corp-masterdata-page .table-responsive {
  border-radius:12px;
}
body.corp-masterdata-page table.table thead th {
  background:#f7f9fb !important;
  color:#475467;
  border-color:var(--md-border);
  font-size:.83rem;
  font-weight:700;
  white-space:nowrap;
}
body.corp-masterdata-page table.table tbody td {
  border-color:#e8ecf0;
  vertical-align:middle;
}
body.corp-masterdata-page table.table.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-bg-type:#fbfcfd;
}
body.corp-masterdata-page table.table tbody tr:hover > * { background:#f7f9fb; }

/* Primary vs neutral actions */
body.corp-masterdata-page .btn-primary,
body.corp-masterdata-page .btn-success {
  background:var(--md-blue) !important;
  border-color:var(--md-blue) !important;
  color:#fff !important;
}
body.corp-masterdata-page .btn-primary:hover,
body.corp-masterdata-page .btn-success:hover {
  background:#285989 !important;
  border-color:#285989 !important;
}
body.corp-masterdata-page .btn-outline-primary,
body.corp-masterdata-page .btn-outline-info,
body.corp-masterdata-page .btn-outline-success,
body.corp-masterdata-page .btn-outline-dark,
body.corp-masterdata-page .btn-outline-secondary {
  color:#52606e !important;
  background:#fff !important;
  border-color:#cdd6df !important;
}
body.corp-masterdata-page .btn-outline-primary:hover,
body.corp-masterdata-page .btn-outline-info:hover,
body.corp-masterdata-page .btn-outline-success:hover,
body.corp-masterdata-page .btn-outline-dark:hover,
body.corp-masterdata-page .btn-outline-secondary:hover {
  color:#2f5f8c !important;
  background:var(--md-blue-soft) !important;
  border-color:#a9bfd4 !important;
}
body.corp-masterdata-page .btn-danger,
body.corp-masterdata-page .btn-outline-danger {
  color:#687381 !important;
  background:#fff !important;
  border-color:#cfd7df !important;
}
body.corp-masterdata-page .btn-danger:hover,
body.corp-masterdata-page .btn-outline-danger:hover {
  color:#8f3730 !important;
  background:var(--md-red-soft) !important;
  border-color:#d9a7a2 !important;
}

/* Status badges */
body.corp-masterdata-page .badge.bg-success,
body.corp-masterdata-page .badge.text-bg-success {
  color:var(--md-green) !important;
  background:var(--md-green-soft) !important;
  border:1px solid #d5e7dc;
}
body.corp-masterdata-page .badge.bg-danger,
body.corp-masterdata-page .badge.text-bg-danger {
  color:var(--md-red) !important;
  background:var(--md-red-soft) !important;
  border:1px solid #ebcfcc;
}
body.corp-masterdata-page .badge.bg-warning,
body.corp-masterdata-page .badge.text-bg-warning {
  color:var(--md-amber) !important;
  background:var(--md-amber-soft) !important;
  border:1px solid #e9ddc3;
}
body.corp-masterdata-page .badge.bg-primary,
body.corp-masterdata-page .badge.text-bg-primary,
body.corp-masterdata-page .badge.text-bg-info {
  color:#365f88 !important;
  background:var(--md-blue-soft) !important;
  border:1px solid #d3e0ed;
}
body.corp-masterdata-page .badge.bg-secondary,
body.corp-masterdata-page .badge.text-bg-secondary,
body.corp-masterdata-page .badge.bg-light,
body.corp-masterdata-page .badge.text-bg-light {
  color:#596776 !important;
  background:#f1f4f6 !important;
  border:1px solid #dfe4e9 !important;
}

/* Alerts */
body.corp-masterdata-page .alert-success { color:#315f47; background:var(--md-green-soft); border-color:#d5e7dc; }
body.corp-masterdata-page .alert-warning { color:#6c572c; background:var(--md-amber-soft); border-color:#e8dcc2; }
body.corp-masterdata-page .alert-danger { color:#843c36; background:var(--md-red-soft); border-color:#ebcfcc; }
body.corp-masterdata-page .alert-info { color:#355f87; background:var(--md-blue-soft); border-color:#d3e0ed; }

/* Customer list: actions should not become a wall of blue. */
body.corp-customer-list td:last-child .btn {
  margin-bottom:3px;
}
body.corp-customer-list td:last-child .btn-primary {
  background:#fff !important;
  color:#315f8a !important;
  border-color:#b7cce0 !important;
}
body.corp-customer-list td:last-child .btn-primary:hover {
  background:var(--md-blue-soft) !important;
}

/* Customer dashboard: KPI cards are informational, not promotional. */
body.corp-customer-dashboard .row.g-3 > [class*="col-"] > .card {
  height:100%;
}
body.corp-customer-dashboard .card h2,
body.corp-customer-dashboard .card h3,
body.corp-customer-dashboard .card h4,
body.corp-customer-dashboard .card h5,
body.corp-customer-dashboard .card h6 {
  color:#263445;
}

/* Personnel overview filter card */
body.corp-personnel-overview .card:first-of-type,
body.corp-staff-list .card:first-of-type {
  background:#fff;
}

/* Deactivation stays visually secondary until chosen. */
body.corp-staff-admin form[action*="delete_medarbejder"] .btn {
  color:#687381 !important;
  background:#fff !important;
  border-color:#cfd7df !important;
}
body.corp-staff-admin form[action*="delete_medarbejder"] .btn:hover {
  color:#8f3730 !important;
  background:var(--md-red-soft) !important;
  border-color:#d9a7a2 !important;
}

/* Onboarding/responsibilities: compact but calm admin workspace. */
body.corp-staff-onboarding table .form-control-sm,
body.corp-staff-onboarding table .form-select-sm {
  min-width:90px;
}
body.corp-staff-onboarding table td,
body.corp-staff-responsibilities table td {
  background:#fff;
}

@media (max-width:767.98px) {
  body.corp-masterdata-page .corp-masterdata-filter {
    width:100%;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
  }
  body.corp-masterdata-page .corp-masterdata-filter .input-group {
    width:100% !important;
  }
  body.corp-masterdata-page .card { border-radius:12px !important; }
}


/* CORP_MARKETING_UI_V1
 * Markedsføring, flyers, arealdata og områder.
 */
body.corp-marketing-page{
  --mk-bg:#f6f8fa;--mk-surface:#fff;--mk-soft:#f8fafb;--mk-border:#dfe5eb;
  --mk-text:#1f2937;--mk-muted:#667085;--mk-blue:#2f67a0;--mk-blue-soft:#eef4fa;
  --mk-green:#356c50;--mk-green-soft:#edf6f1;--mk-amber:#745d2b;--mk-amber-soft:#f8f3e8;
  --mk-red:#913f39;--mk-red-soft:#fbf1f0;background:var(--mk-bg)!important;color:var(--mk-text)!important;
}
body.corp-marketing-page main.container{max-width:1480px}
body.corp-marketing-page .portal-legacy-content{max-width:1480px;margin:0 auto;padding:18px 16px 34px}
body.corp-marketing-page .portal-legacy-content>.wrap,
body.corp-marketing-page .portal-legacy-content>.box{max-width:none!important;margin-left:auto!important;margin-right:auto!important}
body.corp-marketing-page h1{color:#202b38!important;font-weight:700}
body.corp-marketing-page h2,body.corp-marketing-page h3{color:#2a3644!important}
body.corp-marketing-page .muted,body.corp-marketing-page .hint,body.corp-marketing-page small.muted{color:var(--mk-muted)!important}

body.corp-marketing-page .card,
body.corp-marketing-page .box,
body.corp-marketing-page .stat,
body.corp-marketing-page .option,
body.corp-marketing-page .settings-box,
body.corp-marketing-page .action-section{
  background:#fff!important;border:1px solid var(--mk-border)!important;border-radius:14px!important;
  box-shadow:0 4px 16px rgba(31,41,55,.04)!important;
}
body.corp-marketing-page .card-header{background:#f8fafb!important;border-bottom:1px solid var(--mk-border)!important}
body.corp-marketing-page .stat,body.corp-marketing-page .option{box-shadow:none!important;background:#f8fafb!important}
body.corp-marketing-page .action-section,body.corp-marketing-page .settings-box{box-shadow:none!important;background:#f8fafb!important}

body.corp-marketing-page input:not([type=checkbox]):not([type=radio]):not([type=color]),
body.corp-marketing-page select,body.corp-marketing-page textarea{
  border:1px solid #ccd5de!important;border-radius:9px!important;background:#fff!important;color:#27313d!important;
}
body.corp-marketing-page input:focus,body.corp-marketing-page select:focus,body.corp-marketing-page textarea:focus{
  border-color:#8db2d6!important;box-shadow:0 0 0 .2rem rgba(47,103,160,.10)!important;outline:0!important;
}

body.corp-marketing-page .btn-primary,
body.corp-marketing-page .btn.primary,
body.corp-marketing-page a.button:not(.secondary):not(.button-secondary):not(.button-admin):not(.button-pdf):not(.green),
body.corp-marketing-page button.button:not(.secondary):not(.button-secondary):not(.button-admin):not(.button-pdf):not(.green){
  background:var(--mk-blue)!important;border-color:var(--mk-blue)!important;color:#fff!important;
}
body.corp-marketing-page .btn-primary:hover,body.corp-marketing-page .btn.primary:hover,
body.corp-marketing-page a.button:hover{filter:brightness(.94)}
body.corp-marketing-page .btn-secondary,body.corp-marketing-page .btn-outline-secondary,
body.corp-marketing-page .button-secondary,body.corp-marketing-page .button.secondary,
body.corp-marketing-page .button-admin,body.corp-marketing-page .secondary{
  background:#fff!important;color:#536170!important;border:1px solid #cdd6df!important;
}
body.corp-marketing-page .btn-secondary:hover,body.corp-marketing-page .btn-outline-secondary:hover,
body.corp-marketing-page .button-secondary:hover,body.corp-marketing-page .secondary:hover{
  background:#f3f7fa!important;color:#2f5f8c!important;border-color:#b9c9d8!important;
}
body.corp-marketing-page .green,body.corp-marketing-page .button-pdf{
  background:var(--mk-green-soft)!important;color:var(--mk-green)!important;border:1px solid #d5e7dc!important;
}
body.corp-marketing-page .orange{background:var(--mk-amber-soft)!important;color:var(--mk-amber)!important;border:1px solid #e7d9b9!important}

body.corp-marketing-page table{background:#fff!important;border-collapse:separate!important;border-spacing:0!important;width:100%}
body.corp-marketing-page th{background:#f7f9fb!important;color:#475467!important;font-weight:700!important;border-color:#dfe5eb!important}
body.corp-marketing-page td{border-color:#e7ebef!important;color:#2e3946}
body.corp-marketing-page tbody tr:hover td{background:#fafbfc!important}
body.corp-marketing-page .table-wrap,body.corp-marketing-page .table-responsive{border:1px solid var(--mk-border);border-radius:12px;overflow:auto;background:#fff}
body.corp-marketing-page .table-wrap table,body.corp-marketing-page .table-responsive table{margin:0!important}

body.corp-marketing-page .notice,body.corp-marketing-page .alert.ok,body.corp-marketing-page .msg{
  background:var(--mk-green-soft)!important;color:var(--mk-green)!important;border:1px solid #d5e7dc!important;border-left:4px solid #83a792!important;border-radius:10px!important;
}
body.corp-marketing-page .warn{background:var(--mk-amber-soft)!important;color:var(--mk-amber)!important;border:1px solid #e7d9b9!important;border-left:4px solid #b79a60!important;border-radius:10px!important}
body.corp-marketing-page .error,body.corp-marketing-page .alert.err,body.corp-marketing-page .err{
  background:var(--mk-red-soft)!important;color:var(--mk-red)!important;border-color:#ebcfcc!important;
}
body.corp-marketing-page .badge,body.corp-marketing-page .tag,body.corp-marketing-page .pill{
  background:#f1f4f6!important;color:#596776!important;border:1px solid #dfe4e9!important;border-radius:999px!important;
}
body.corp-marketing-page .badge.printed,body.corp-marketing-page .pill-active{background:var(--mk-green-soft)!important;color:var(--mk-green)!important;border-color:#d5e7dc!important}
body.corp-marketing-page .badge.generated{background:var(--mk-amber-soft)!important;color:var(--mk-amber)!important;border-color:#e7d9b9!important}

/* Flyer map: filters look like a compact control panel, map stays dominant. */
body.corp-marketing-page form.filters{background:#fff!important;border:1px solid var(--mk-border);border-radius:12px;padding:12px!important;box-shadow:0 4px 14px rgba(31,41,55,.035)}
body.corp-marketing-page #map{border:1px solid #d7dee6!important;border-radius:12px!important;box-shadow:0 4px 16px rgba(31,41,55,.04)}
body.corp-marketing-page .toolbar{background:#fff;border:1px solid var(--mk-border);border-radius:10px;padding:8px 10px!important}

/* Route flyer upload/result summary */
body.corp-marketing-page .summary{gap:12px!important}
body.corp-marketing-page .summary>div{background:#f8fafb!important;border:1px solid var(--mk-border);border-radius:10px!important}
body.corp-marketing-page pre{background:#202833!important;color:#eef2f6!important;border-radius:10px!important}

/* Street areas */
body.corp-marketing-page form.inline{background:#fff!important;border:1px solid var(--mk-border)!important;border-radius:12px!important;padding:14px!important}

@media(max-width:767.98px){
 body.corp-marketing-page .portal-legacy-content{padding:12px 10px 28px}
 body.corp-marketing-page form .row{grid-template-columns:1fr!important}
 body.corp-marketing-page .grid,body.corp-marketing-page .grid2{grid-template-columns:1fr!important}
 body.corp-marketing-page #map{height:62vh!important}
}


/* CORP_MARKETING_UI_V1
 * Markedsføring, flyers, arealdata og områder.
 */
body.corp-marketing-page{
  --mk-bg:#f6f8fa;--mk-surface:#fff;--mk-soft:#f8fafb;--mk-border:#dfe5eb;
  --mk-text:#1f2937;--mk-muted:#667085;--mk-blue:#2f67a0;--mk-blue-soft:#eef4fa;
  --mk-green:#356c50;--mk-green-soft:#edf6f1;--mk-amber:#745d2b;--mk-amber-soft:#f8f3e8;
  --mk-red:#913f39;--mk-red-soft:#fbf1f0;background:var(--mk-bg)!important;color:var(--mk-text)!important;
}
body.corp-marketing-page main.container{max-width:1480px}
body.corp-marketing-page .portal-legacy-content{max-width:1480px;margin:0 auto;padding:18px 16px 34px}
body.corp-marketing-page .portal-legacy-content>.wrap,
body.corp-marketing-page .portal-legacy-content>.box{max-width:none!important;margin-left:auto!important;margin-right:auto!important}
body.corp-marketing-page h1{color:#202b38!important;font-weight:700}
body.corp-marketing-page h2,body.corp-marketing-page h3{color:#2a3644!important}
body.corp-marketing-page .muted,body.corp-marketing-page .hint,body.corp-marketing-page small.muted{color:var(--mk-muted)!important}

body.corp-marketing-page .card,
body.corp-marketing-page .box,
body.corp-marketing-page .stat,
body.corp-marketing-page .option,
body.corp-marketing-page .settings-box,
body.corp-marketing-page .action-section{
  background:#fff!important;border:1px solid var(--mk-border)!important;border-radius:14px!important;
  box-shadow:0 4px 16px rgba(31,41,55,.04)!important;
}
body.corp-marketing-page .card-header{background:#f8fafb!important;border-bottom:1px solid var(--mk-border)!important}
body.corp-marketing-page .stat,body.corp-marketing-page .option{box-shadow:none!important;background:#f8fafb!important}
body.corp-marketing-page .action-section,body.corp-marketing-page .settings-box{box-shadow:none!important;background:#f8fafb!important}

body.corp-marketing-page input:not([type=checkbox]):not([type=radio]):not([type=color]),
body.corp-marketing-page select,body.corp-marketing-page textarea{
  border:1px solid #ccd5de!important;border-radius:9px!important;background:#fff!important;color:#27313d!important;
}
body.corp-marketing-page input:focus,body.corp-marketing-page select:focus,body.corp-marketing-page textarea:focus{
  border-color:#8db2d6!important;box-shadow:0 0 0 .2rem rgba(47,103,160,.10)!important;outline:0!important;
}

body.corp-marketing-page .btn-primary,
body.corp-marketing-page .btn.primary,
body.corp-marketing-page a.button:not(.secondary):not(.button-secondary):not(.button-admin):not(.button-pdf):not(.green),
body.corp-marketing-page button.button:not(.secondary):not(.button-secondary):not(.button-admin):not(.button-pdf):not(.green){
  background:var(--mk-blue)!important;border-color:var(--mk-blue)!important;color:#fff!important;
}
body.corp-marketing-page .btn-primary:hover,body.corp-marketing-page .btn.primary:hover,
body.corp-marketing-page a.button:hover{filter:brightness(.94)}
body.corp-marketing-page .btn-secondary,body.corp-marketing-page .btn-outline-secondary,
body.corp-marketing-page .button-secondary,body.corp-marketing-page .button.secondary,
body.corp-marketing-page .button-admin,body.corp-marketing-page .secondary{
  background:#fff!important;color:#536170!important;border:1px solid #cdd6df!important;
}
body.corp-marketing-page .btn-secondary:hover,body.corp-marketing-page .btn-outline-secondary:hover,
body.corp-marketing-page .button-secondary:hover,body.corp-marketing-page .secondary:hover{
  background:#f3f7fa!important;color:#2f5f8c!important;border-color:#b9c9d8!important;
}
body.corp-marketing-page .green,body.corp-marketing-page .button-pdf{
  background:var(--mk-green-soft)!important;color:var(--mk-green)!important;border:1px solid #d5e7dc!important;
}
body.corp-marketing-page .orange{background:var(--mk-amber-soft)!important;color:var(--mk-amber)!important;border:1px solid #e7d9b9!important}

body.corp-marketing-page table{background:#fff!important;border-collapse:separate!important;border-spacing:0!important;width:100%}
body.corp-marketing-page th{background:#f7f9fb!important;color:#475467!important;font-weight:700!important;border-color:#dfe5eb!important}
body.corp-marketing-page td{border-color:#e7ebef!important;color:#2e3946}
body.corp-marketing-page tbody tr:hover td{background:#fafbfc!important}
body.corp-marketing-page .table-wrap,body.corp-marketing-page .table-responsive{border:1px solid var(--mk-border);border-radius:12px;overflow:auto;background:#fff}
body.corp-marketing-page .table-wrap table,body.corp-marketing-page .table-responsive table{margin:0!important}

body.corp-marketing-page .notice,body.corp-marketing-page .alert.ok,body.corp-marketing-page .msg{
  background:var(--mk-green-soft)!important;color:var(--mk-green)!important;border:1px solid #d5e7dc!important;border-left:4px solid #83a792!important;border-radius:10px!important;
}
body.corp-marketing-page .warn{background:var(--mk-amber-soft)!important;color:var(--mk-amber)!important;border:1px solid #e7d9b9!important;border-left:4px solid #b79a60!important;border-radius:10px!important}
body.corp-marketing-page .error,body.corp-marketing-page .alert.err,body.corp-marketing-page .err{
  background:var(--mk-red-soft)!important;color:var(--mk-red)!important;border-color:#ebcfcc!important;
}
body.corp-marketing-page .badge,body.corp-marketing-page .tag,body.corp-marketing-page .pill{
  background:#f1f4f6!important;color:#596776!important;border:1px solid #dfe4e9!important;border-radius:999px!important;
}
body.corp-marketing-page .badge.printed,body.corp-marketing-page .pill-active{background:var(--mk-green-soft)!important;color:var(--mk-green)!important;border-color:#d5e7dc!important}
body.corp-marketing-page .badge.generated{background:var(--mk-amber-soft)!important;color:var(--mk-amber)!important;border-color:#e7d9b9!important}

/* Flyer map: filters look like a compact control panel, map stays dominant. */
body.corp-marketing-page form.filters{background:#fff!important;border:1px solid var(--mk-border);border-radius:12px;padding:12px!important;box-shadow:0 4px 14px rgba(31,41,55,.035)}
body.corp-marketing-page #map{border:1px solid #d7dee6!important;border-radius:12px!important;box-shadow:0 4px 16px rgba(31,41,55,.04)}
body.corp-marketing-page .toolbar{background:#fff;border:1px solid var(--mk-border);border-radius:10px;padding:8px 10px!important}

/* Route flyer upload/result summary */
body.corp-marketing-page .summary{gap:12px!important}
body.corp-marketing-page .summary>div{background:#f8fafb!important;border:1px solid var(--mk-border);border-radius:10px!important}
body.corp-marketing-page pre{background:#202833!important;color:#eef2f6!important;border-radius:10px!important}

/* Street areas */
body.corp-marketing-page form.inline{background:#fff!important;border:1px solid var(--mk-border)!important;border-radius:12px!important;padding:14px!important}

@media(max-width:767.98px){
 body.corp-marketing-page .portal-legacy-content{padding:12px 10px 28px}
 body.corp-marketing-page form .row{grid-template-columns:1fr!important}
 body.corp-marketing-page .grid,body.corp-marketing-page .grid2{grid-template-columns:1fr!important}
 body.corp-marketing-page #map{height:62vh!important}
}


/* CORP_ADMIN_LOGIN_LOG_V1 */
body.corp-admin-login-log { background:#f6f8fa; color:#1f2937; }
body.corp-admin-login-log main.container { max-width:1450px; }
body.corp-admin-login-log .card { border:1px solid #dfe5eb !important; border-radius:14px !important; box-shadow:0 4px 16px rgba(31,41,55,.04) !important; }
body.corp-admin-login-log .table thead th { background:#f7f9fb; color:#475467; border-color:#dfe5eb; font-size:.82rem; font-weight:700; }
body.corp-admin-login-log .table tbody td { border-color:#e8ecf0; }
body.corp-admin-login-log .table tbody tr:hover > * { background:#f8fafb; }
body.corp-admin-login-log .form-control, body.corp-admin-login-log .form-select { border-color:#ccd5de; border-radius:9px; box-shadow:none; }
body.corp-admin-login-log .form-control:focus, body.corp-admin-login-log .form-select:focus { border-color:#8db2d6; box-shadow:0 0 0 .2rem rgba(47,103,160,.10); }
body.corp-admin-login-log .btn-primary { background:#2f67a0 !important; border-color:#2f67a0 !important; }
body.corp-admin-login-log .btn-primary:hover { background:#285989 !important; border-color:#285989 !important; }


/* CORP_WEED_UI_V1
 * Ukrudtsskema: indberetninger, ukrudtsmidler og certificerede medarbejdere.
 */
body.corp-weed-page {
  --weed-bg:#f6f8fa;
  --weed-surface:#ffffff;
  --weed-soft:#f8fafb;
  --weed-border:#dde3ea;
  --weed-border-strong:#cbd5df;
  --weed-text:#1f2937;
  --weed-muted:#667085;
  --weed-blue:#2f67a0;
  --weed-blue-soft:#eef4fa;
  --weed-green:#356c50;
  --weed-green-soft:#edf6f1;
  --weed-amber:#745d2b;
  --weed-amber-soft:#f8f3e8;
  --weed-red:#8d403a;
  --weed-red-soft:#fbf1f0;
  background:var(--weed-bg);
  color:var(--weed-text);
}

body.corp-weed-page main.container {
  width:calc(100% - 32px);
  max-width:1480px;
}

body.corp-weed-page .weed-module {
  color:var(--weed-text);
}

body.corp-weed-page .weed-container {
  width:100%;
  max-width:none;
  margin:0;
}

body.corp-weed-page .weed-page-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:14px;
}

body.corp-weed-page .weed-page-head h1 {
  margin:0;
  font-size:1.6rem;
  font-weight:700;
  letter-spacing:-.015em;
}

body.corp-weed-page .weed-page-subtitle {
  margin:4px 0 0;
  color:var(--weed-muted);
  font-size:.94rem;
}

body.corp-weed-page .weed-nav {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  padding:7px;
  margin:0 0 18px;
  background:#fff;
  border:1px solid var(--weed-border);
  border-radius:12px;
  box-shadow:0 3px 12px rgba(31,41,55,.025);
}

body.corp-weed-page .weed-nav-link {
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:7px 11px;
  border:1px solid transparent;
  border-radius:8px;
  color:#4d5968;
  text-decoration:none;
  font-size:.91rem;
  font-weight:600;
  transition:background .15s ease,border-color .15s ease,color .15s ease;
}

body.corp-weed-page .weed-nav-link:hover {
  color:#315f8a;
  background:#f5f8fb;
  border-color:#d9e3ec;
}

body.corp-weed-page .weed-nav-link.is-active {
  color:#2f5f8a;
  background:var(--weed-blue-soft);
  border-color:#d0deeb;
}

body.corp-weed-page .weed-module .card {
  margin:0 0 16px;
  padding:18px;
  background:var(--weed-surface);
  border:1px solid var(--weed-border) !important;
  border-radius:14px !important;
  box-shadow:0 4px 16px rgba(31,41,55,.035) !important;
}

body.corp-weed-page .weed-module .card h2 {
  margin:0 0 14px;
  color:#2f3946;
  font-size:1.06rem;
  font-weight:700;
}

body.corp-weed-page .weed-admin-card {
  background:#fbfcfd !important;
}

body.corp-weed-page .weed-admin-card p {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 !important;
}

body.corp-weed-page .weed-module .grid {
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:15px;
}

body.corp-weed-page .weed-module .col-2 { grid-column:span 2; }
body.corp-weed-page .weed-module .col-3 { grid-column:span 3; }
body.corp-weed-page .weed-module .col-4 { grid-column:span 4; }
body.corp-weed-page .weed-module .col-6 { grid-column:span 6; }
body.corp-weed-page .weed-module .col-12 { grid-column:span 12; }

body.corp-weed-page .weed-module label {
  display:block;
  margin:0 0 6px;
  color:#3d4856;
  font-size:.88rem;
  font-weight:650;
}

body.corp-weed-page .weed-module input,
body.corp-weed-page .weed-module select,
body.corp-weed-page .weed-module textarea {
  width:100%;
  max-width:none;
  min-height:40px;
  padding:8px 10px;
  border:1px solid #ccd5de;
  border-radius:9px;
  background:#fff;
  color:var(--weed-text);
  box-shadow:none;
}

body.corp-weed-page .weed-module textarea {
  min-height:78px;
  resize:vertical;
}

body.corp-weed-page .weed-module input:focus,
body.corp-weed-page .weed-module select:focus,
body.corp-weed-page .weed-module textarea:focus {
  outline:0;
  border-color:#8db2d6;
  box-shadow:0 0 0 .2rem rgba(47,103,160,.10);
}

body.corp-weed-page .weed-module input[type="checkbox"] {
  width:auto;
  min-height:0;
  accent-color:var(--weed-blue);
}

body.corp-weed-page .weed-module .muted,
body.corp-weed-page .weed-module .small {
  color:var(--weed-muted);
  font-size:.82rem;
}

body.corp-weed-page .weed-module button,
body.corp-weed-page .weed-module .btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  width:auto;
  padding:8px 12px;
  border:1px solid var(--weed-blue);
  border-radius:8px;
  background:var(--weed-blue);
  color:#fff;
  text-decoration:none;
  font-size:.9rem;
  font-weight:600;
  line-height:1.15;
  cursor:pointer;
}

body.corp-weed-page .weed-module button:hover,
body.corp-weed-page .weed-module .btn:hover {
  background:#285989;
  border-color:#285989;
  color:#fff;
}

body.corp-weed-page .weed-module .btn.secondary,
body.corp-weed-page .weed-module .btn.light {
  background:#fff;
  border-color:#cfd7df;
  color:#52606e;
}

body.corp-weed-page .weed-module .btn.secondary:hover,
body.corp-weed-page .weed-module .btn.light:hover {
  background:#f3f7fa;
  border-color:#b9c9d8;
  color:#2f5f8c;
}

body.corp-weed-page .weed-filter-actions {
  align-self:end;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

body.corp-weed-page .weed-module .msg,
body.corp-weed-page .weed-module .warn {
  margin:0 0 16px;
  padding:11px 13px;
  border-radius:10px;
  font-size:.91rem;
}

body.corp-weed-page .weed-module .msg {
  color:var(--weed-green);
  background:var(--weed-green-soft);
  border:1px solid #d5e7dc;
}

body.corp-weed-page .weed-module .msg-error {
  color:var(--weed-red);
  background:var(--weed-red-soft);
  border-color:#ebcfcc;
}

body.corp-weed-page .weed-module .warn {
  color:#6c572c;
  background:var(--weed-amber-soft);
  border:1px solid #e8dcc2;
}

body.corp-weed-page .weed-table-wrap {
  width:100%;
  overflow-x:auto;
  border:1px solid #e2e7ec;
  border-radius:10px;
}

body.corp-weed-page .weed-module table.weed-table {
  width:100%;
  min-width:760px;
  margin:0;
  border-collapse:separate;
  border-spacing:0;
  background:#fff;
}

body.corp-weed-page .weed-module .weed-table th,
body.corp-weed-page .weed-module .weed-table td {
  padding:10px 11px;
  text-align:left;
  vertical-align:top;
  border:0;
  border-bottom:1px solid #e8ecf0;
}

body.corp-weed-page .weed-module .weed-table th {
  position:sticky;
  top:0;
  z-index:1;
  color:#475467;
  background:#f7f9fb;
  font-size:.8rem;
  font-weight:700;
  white-space:nowrap;
}

body.corp-weed-page .weed-module .weed-table tbody tr:last-child td {
  border-bottom:0;
}

body.corp-weed-page .weed-module .weed-table tbody tr:hover td {
  background:#fafbfd;
}

body.corp-weed-page .weed-status {
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border-radius:999px;
  font-size:.78rem;
  font-weight:700;
  white-space:nowrap;
}

body.corp-weed-page .weed-status.is-active {
  color:var(--weed-green);
  background:var(--weed-green-soft);
  border:1px solid #d5e7dc;
}

body.corp-weed-page .weed-status.is-inactive {
  color:#66717f;
  background:#f1f4f6;
  border:1px solid #dfe4e9;
}

@media (max-width:991.98px) {
  body.corp-weed-page .weed-module .col-2,
  body.corp-weed-page .weed-module .col-3,
  body.corp-weed-page .weed-module .col-4 {
    grid-column:span 6;
  }
  body.corp-weed-page .weed-module .col-6 {
    grid-column:span 12;
  }
}

@media (max-width:575.98px) {
  body.corp-weed-page main.container {
    width:calc(100% - 20px);
  }
  body.corp-weed-page .weed-page-head h1 {
    font-size:1.35rem;
  }
  body.corp-weed-page .weed-module .grid > * {
    grid-column:1 / -1 !important;
  }
  body.corp-weed-page .weed-module .card {
    padding:14px;
  }
  body.corp-weed-page .weed-nav {
    gap:5px;
  }
  body.corp-weed-page .weed-nav-link {
    flex:1 1 auto;
    justify-content:center;
  }
}


/* CORP_ABSENCE_UI_V1
 * Fravær, dækning, ferie/helligdage og konflikter.
 * Neutrale flader; farve reserveres til faktisk status og afvigelser.
 */
body.corp-absence-page {
  --abs-bg:#f6f8fa;
  --abs-surface:#fff;
  --abs-soft:#f8fafb;
  --abs-border:#dfe5eb;
  --abs-text:#1f2937;
  --abs-muted:#667085;
  --abs-blue:#2f67a0;
  --abs-blue-soft:#eef4fa;
  --abs-green:#356c50;
  --abs-green-soft:#edf6f1;
  --abs-amber:#745d2b;
  --abs-amber-soft:#f8f3e8;
  --abs-red:#913f39;
  --abs-red-soft:#fbf1f0;
  background:var(--abs-bg);
  color:var(--abs-text);
}
body.corp-absence-page main.container { max-width:1440px; }

body.corp-absence-page .card {
  border:1px solid var(--abs-border)!important;
  border-radius:14px!important;
  box-shadow:0 4px 16px rgba(31,41,55,.04)!important;
  background:#fff;
}
body.corp-absence-page .card-header {
  background:#f8fafb!important;
  border-bottom:1px solid var(--abs-border)!important;
  color:#27313d;
}
body.corp-absence-page .text-muted { color:var(--abs-muted)!important; }

/* KPI cards */
body.corp-absence-page .coverage-kpi {
  min-height:108px;
  border-left:4px solid #aeb8c3!important;
}
body.corp-absence-page .corp-absence-kpis > div:nth-child(1) .coverage-kpi { border-left-color:#c48a84!important; }
body.corp-absence-page .corp-absence-kpis > div:nth-child(2) .coverage-kpi { border-left-color:#8cab98!important; }
body.corp-absence-page .coverage-kpi .num { color:#27313d!important; }
body.corp-absence-page .coverage-kpi .text-danger { color:#914a43!important; }
body.corp-absence-page .coverage-kpi .text-success { color:#356c50!important; }

/* Tables */
body.corp-absence-page .table-responsive {
  background:#fff;
  border-radius:12px;
}
body.corp-absence-page table.table thead th {
  background:#f7f9fb!important;
  color:#475467;
  border-color:var(--abs-border);
  font-size:.83rem;
  font-weight:700;
}
body.corp-absence-page table.table tbody td { border-color:#e8ecf0; }
body.corp-absence-page table.table tbody tr:hover > * { background:#f8fafb; }
body.corp-absence-page table.table.table-striped > tbody > tr:nth-of-type(odd) > * { --bs-table-bg-type:#fbfcfd; }
body.corp-absence-page .coverage-date-row td {
  background:#f4f7f9!important;
  color:#344054;
}

/* Status badges */
body.corp-absence-page .badge.bg-success,
body.corp-absence-page .badge.text-bg-success {
  color:var(--abs-green)!important;
  background:var(--abs-green-soft)!important;
  border:1px solid #d5e7dc;
}
body.corp-absence-page .badge.bg-warning,
body.corp-absence-page .badge.text-bg-warning {
  color:var(--abs-amber)!important;
  background:var(--abs-amber-soft)!important;
  border:1px solid #e8dcc2;
}
body.corp-absence-page .badge.bg-danger,
body.corp-absence-page .badge.text-bg-danger {
  color:var(--abs-red)!important;
  background:var(--abs-red-soft)!important;
  border:1px solid #ebcfcc;
}
body.corp-absence-page .badge.bg-primary,
body.corp-absence-page .badge.text-bg-primary,
body.corp-absence-page .badge.bg-info {
  color:#355f87!important;
  background:var(--abs-blue-soft)!important;
  border:1px solid #d3e0ed!important;
}
body.corp-absence-page .badge.bg-secondary,
body.corp-absence-page .badge.text-bg-secondary {
  color:#596776!important;
  background:#f1f4f6!important;
  border:1px solid #dfe4e9;
}

/* Alerts */
body.corp-absence-page .alert-info,
body.corp-absence-page .alert-primary {
  color:#355f87;
  background:var(--abs-blue-soft);
  border-color:#d3e0ed;
}
body.corp-absence-page .alert-success {
  color:#315f47;
  background:var(--abs-green-soft);
  border-color:#d5e7dc;
}
body.corp-absence-page .alert-warning {
  color:#6c572c;
  background:var(--abs-amber-soft);
  border-color:#e8dcc2;
}
body.corp-absence-page .alert-danger {
  color:#843c36;
  background:var(--abs-red-soft);
  border-color:#ebcfcc;
}

/* Buttons */
body.corp-absence-page .btn-primary,
body.corp-absence-page .btn-success {
  background:var(--abs-blue)!important;
  border-color:var(--abs-blue)!important;
  color:#fff!important;
}
body.corp-absence-page .btn-primary:hover,
body.corp-absence-page .btn-success:hover {
  background:#285989!important;
  border-color:#285989!important;
}
body.corp-absence-page .btn-outline-primary {
  color:#35658f!important;
  border-color:#b7cce0!important;
  background:#fff!important;
}
body.corp-absence-page .btn-outline-primary:hover {
  color:#285989!important;
  background:var(--abs-blue-soft)!important;
  border-color:#94b4d1!important;
}
body.corp-absence-page .btn-outline-success,
body.corp-absence-page .btn-outline-warning,
body.corp-absence-page .btn-outline-secondary,
body.corp-absence-page .btn-outline-dark {
  color:#596776!important;
  background:#fff!important;
  border-color:#cdd6df!important;
}
body.corp-absence-page .btn-outline-success:hover,
body.corp-absence-page .btn-outline-warning:hover,
body.corp-absence-page .btn-outline-secondary:hover,
body.corp-absence-page .btn-outline-dark:hover {
  color:#2f5f8c!important;
  background:#f3f7fa!important;
  border-color:#b9c9d8!important;
}
body.corp-absence-page .btn-danger,
body.corp-absence-page .btn-outline-danger {
  color:#687381!important;
  background:#fff!important;
  border-color:#cfd7df!important;
}
body.corp-absence-page .btn-danger:hover,
body.corp-absence-page .btn-outline-danger:hover {
  color:#8f3730!important;
  background:var(--abs-red-soft)!important;
  border-color:#d9a7a2!important;
}

/* Forms */
body.corp-absence-page .form-control,
body.corp-absence-page .form-select {
  border-color:#ccd5de;
  border-radius:9px;
  box-shadow:none;
}
body.corp-absence-page .form-control:focus,
body.corp-absence-page .form-select:focus {
  border-color:#8db2d6;
  box-shadow:0 0 0 .2rem rgba(47,103,160,.10);
}

/* Calendar – keep category meaning but soften full-cell fills */
body.corp-absence-calendar .day {
  border-color:#dde4ea!important;
  background:#fff;
}
body.corp-absence-calendar .day.off-fri {
  background:#f2f8f4!important;
  border-color:#dcebe2!important;
}
body.corp-absence-calendar .day.off-ferie {
  background:#fbf8ef!important;
  border-color:#ece3cf!important;
}
body.corp-absence-calendar .day.off-sygdom {
  background:#fcf3f2!important;
  border-color:#edd6d3!important;
}
body.corp-absence-calendar .day.is-holiday {
  border-color:#a5afba!important;
  box-shadow:inset 0 3px 0 #9aa8b5;
}
body.corp-absence-calendar .holiday-name { color:#5d6b79!important; }
body.corp-absence-calendar .swatch.fri { background:#7da18a!important; }
body.corp-absence-calendar .swatch.ferie { background:#b9a06d!important; }
body.corp-absence-calendar .swatch.sygdom { background:#bd746d!important; }
body.corp-absence-calendar .swatch.holiday { background:#8f9cab!important; }
body.corp-absence-calendar .day.calendar-day:hover {
  box-shadow:0 0 0 2px rgba(47,103,160,.16)!important;
}
body.corp-absence-calendar .day.selection-range {
  box-shadow:inset 0 0 0 999px rgba(47,103,160,.06)!important;
}
body.corp-absence-calendar .day.selection-start,
body.corp-absence-calendar .day.selection-end {
  outline-color:#5f8db8!important;
}

/* Fraværsindstillinger person rows */
body.corp-absence-settings .abs-person {
  border-color:var(--abs-border)!important;
  background:#fbfcfd!important;
  border-radius:9px;
}

@media (max-width:767.98px) {
  body.corp-absence-page main.container { padding-left:12px; padding-right:12px; }
  body.corp-absence-page .coverage-kpi { min-height:96px; }
}

@media print {
  body.corp-absence-page { background:#fff!important; color:#000!important; }
  body.corp-absence-page .card { box-shadow:none!important; border-color:#aaa!important; }
  body.corp-absence-page .badge { color:#000!important; background:#fff!important; border:1px solid #777!important; }
}


/* CORP_ECONOMY_PROCUREMENT_UI_V1
 * Økonomi, varekatalog, bestillinger, forbrugsberegner og rekvisitionsblanketter.
 */
body.corp-economy-page {
  --eco-bg:#f6f8fa;
  --eco-surface:#ffffff;
  --eco-soft:#f8fafb;
  --eco-border:#dfe5eb;
  --eco-border-strong:#ccd5de;
  --eco-text:#1f2937;
  --eco-muted:#667085;
  --eco-blue:#2f67a0;
  --eco-blue-soft:#eef4fa;
  --eco-green:#356c50;
  --eco-green-soft:#edf6f1;
  --eco-amber:#745d2b;
  --eco-amber-soft:#f8f3e8;
  --eco-red:#913f39;
  --eco-red-soft:#fbf1f0;
  background:var(--eco-bg);
  color:var(--eco-text);
}
body.corp-economy-page main.container { max-width:1450px; }
body.corp-economy-page .container-xxl { max-width:1450px; }

body.corp-economy-page .card {
  border:1px solid var(--eco-border)!important;
  border-radius:14px!important;
  box-shadow:0 4px 16px rgba(31,41,55,.04)!important;
  background:#fff;
}
body.corp-economy-page .card-header {
  background:#f8fafb!important;
  color:#2d3743;
  border-bottom:1px solid var(--eco-border)!important;
  padding:.8rem 1rem;
}
body.corp-economy-page .text-muted,
body.corp-economy-page .form-text,
body.corp-economy-page .help { color:var(--eco-muted)!important; }

body.corp-economy-page .form-label {
  color:#3c4754;
  font-weight:600;
}
body.corp-economy-page .form-control,
body.corp-economy-page .form-select {
  border-color:#ccd5de;
  border-radius:9px;
  box-shadow:none;
}
body.corp-economy-page .form-control:focus,
body.corp-economy-page .form-select:focus {
  border-color:#8db2d6;
  box-shadow:0 0 0 .2rem rgba(47,103,160,.10);
}
body.corp-economy-page .input-group .form-control:first-child { border-radius:9px 0 0 9px; }
body.corp-economy-page .input-group .btn:last-child { border-radius:0 9px 9px 0; }

body.corp-economy-page .corp-economy-filter {
  background:#fff;
  border:1px solid var(--eco-border);
  border-radius:12px;
  padding:14px;
  margin-left:0;
  margin-right:0;
}

body.corp-economy-page .table-responsive {
  border-radius:10px;
}
body.corp-economy-page table.table thead th {
  background:#f7f9fb!important;
  color:#475467;
  border-color:var(--eco-border);
  font-size:.82rem;
  font-weight:700;
  white-space:nowrap;
}
body.corp-economy-page table.table tbody td,
body.corp-economy-page table.table tfoot th,
body.corp-economy-page table.table tfoot td { border-color:#e8ecf0; }
body.corp-economy-page table.table.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-bg-type:#fbfcfd;
}
body.corp-economy-page table.table tbody tr:hover > * { background:#f7f9fb; }
body.corp-economy-page .table-secondary > * { background:#f2f4f6!important; color:#697586!important; }
body.corp-economy-page .table-warning > * { background:#fbf8ef!important; color:inherit!important; }

body.corp-economy-page .btn-primary {
  background:var(--eco-blue)!important;
  border-color:var(--eco-blue)!important;
  color:#fff!important;
}
body.corp-economy-page .btn-primary:hover {
  background:#285989!important;
  border-color:#285989!important;
}
body.corp-economy-page .btn-outline-primary {
  color:#35658f!important;
  background:#fff!important;
  border-color:#b7cce0!important;
}
body.corp-economy-page .btn-outline-primary:hover {
  color:#285989!important;
  background:var(--eco-blue-soft)!important;
  border-color:#94b4d1!important;
}
body.corp-economy-page .btn-outline-secondary {
  color:#52606e!important;
  background:#fff!important;
  border-color:#cdd6df!important;
}
body.corp-economy-page .btn-outline-secondary:hover {
  color:#2f5f8c!important;
  background:#f3f7fa!important;
  border-color:#b9c9d8!important;
}
/* Destruktive handlinger er neutrale til hover */
body.corp-economy-page .btn-danger,
body.corp-economy-page .btn-outline-danger {
  color:#687381!important;
  background:#fff!important;
  border-color:#cfd7df!important;
}
body.corp-economy-page .btn-danger:hover,
body.corp-economy-page .btn-outline-danger:hover {
  color:#8f3730!important;
  background:var(--eco-red-soft)!important;
  border-color:#d9a7a2!important;
}

body.corp-economy-page .badge.bg-primary,
body.corp-economy-page .badge.text-bg-primary {
  color:#315f8a!important;
  background:var(--eco-blue-soft)!important;
  border:1px solid #d3e0ed;
}
body.corp-economy-page .badge.bg-success,
body.corp-economy-page .badge.text-bg-success {
  color:var(--eco-green)!important;
  background:var(--eco-green-soft)!important;
  border:1px solid #d5e7dc;
}
body.corp-economy-page .badge.bg-warning,
body.corp-economy-page .badge.text-bg-warning {
  color:var(--eco-amber)!important;
  background:var(--eco-amber-soft)!important;
  border:1px solid #e8dcc2;
}
body.corp-economy-page .badge.bg-secondary,
body.corp-economy-page .badge.text-bg-secondary {
  color:#596776!important;
  background:#f1f4f6!important;
  border:1px solid #dfe4e9;
}

body.corp-economy-page .alert-success {
  color:#315f47;
  background:var(--eco-green-soft);
  border-color:#d5e7dc;
}
body.corp-economy-page .alert-warning {
  color:#6c572c;
  background:var(--eco-amber-soft);
  border-color:#e8dcc2;
}
body.corp-economy-page .alert-danger {
  color:#843c36;
  background:var(--eco-red-soft);
  border-color:#ebcfcc;
}

/* Varekatalog */
body.corp-catalog-page .corp-economy-grid > [class*="col-"] > .card { height:100%; }
body.corp-catalog-page .corp-economy-pagehead .btn-danger { white-space:nowrap; }
body.corp-catalog-page .card .list-group-item { border-color:#edf0f3; }

/* Bestillinger */
body.corp-orders-page .corp-economy-tablewrap {
  background:#fff;
  border:1px solid var(--eco-border);
  border-radius:14px;
  box-shadow:0 4px 16px rgba(31,41,55,.04);
}
body.corp-orders-page .corp-economy-tablewrap table { margin-bottom:0; }
body.corp-order-detail-page dl dt { color:#596776; font-weight:600; }
body.corp-order-detail-page dl dd { color:#27313d; }
body.corp-order-detail-page tfoot th { background:#f8fafb; }

/* Forbrugsberegner */
body.corp-consumption-page .portal-legacy-content { max-width:1450px; margin:0 auto; }
body.corp-consumption-page .corp-consumption-toolbar { gap:12px; flex-wrap:wrap; }
body.corp-consumption-page .corp-consumption-calc-card {
  border-top:3px solid #8aa7c3!important;
}
body.corp-consumption-page .mono { font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace; }
body.corp-consumption-page table input.form-control-sm,
body.corp-consumption-page table select.form-select-sm { min-width:72px; }
body.corp-consumption-page table td:first-child input.form-control-sm { min-width:150px; }
body.corp-consumption-page .dropdown-menu { border-color:var(--eco-border); box-shadow:0 10px 28px rgba(31,41,55,.10); }

/* Rekvisitionsblanketter */
body.corp-requisition-page .container-xxl.py-4 { padding-top:.5rem!important; }
body.corp-requisition-overview .badge.bg-primary { min-width:28px; }
body.corp-requisition-settings select[multiple] { min-height:116px; }
body.corp-requisition-detail .corp-requisition-sheet { border-top:3px solid #8aa7c3!important; }
body.corp-requisition-detail .card-header.bg-white { background:#f8fafb!important; }

@media (max-width:767.98px) {
  body.corp-economy-page .corp-economy-pagehead,
  body.corp-economy-page .corp-consumption-toolbar,
  body.corp-requisition-page .d-flex.justify-content-between { flex-wrap:wrap; gap:10px; }
  body.corp-economy-page .corp-economy-filter { padding:12px; }
  body.corp-economy-page table.table { min-width:760px; }
  body.corp-order-detail-page table.table { min-width:680px; }
}

@media print {
  body.corp-economy-page { background:#fff!important; color:#000!important; }
  body.corp-economy-page .card { box-shadow:none!important; border-color:#aaa!important; }
  body.corp-economy-page .corp-economy-filter,
  body.corp-economy-page .btn { box-shadow:none!important; }
  body.corp-requisition-detail .no-print { display:none!important; }
}

/* CORP_LANDINGPAGE_UI_V1_START */
body.corp-landing-page {
  background: #f6f8fa;
}

body.corp-landing-page #top {
  max-width: 1320px;
}

body.corp-landing-page #top > .row .card,
body.corp-landing-page .container.my-3 > .card {
  border: 1px solid #dde3ea !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, .045) !important;
  background: #fff !important;
}

body.corp-landing-page .container.my-3 > .card.border-warning {
  border-color: #dde3ea !important;
  border-left: 4px solid #2f67a0 !important;
}

body.corp-landing-page .container.my-3 > .card .btn-success {
  background: #2f67a0 !important;
  border-color: #2f67a0 !important;
  color: #fff !important;
}

body.corp-landing-page .container.my-3 > .card .btn-success:hover {
  background: #285b8d !important;
  border-color: #285b8d !important;
}

body.corp-landing-page .container.my-3 > .card .btn-outline-success,
body.corp-landing-page .container.my-3 > .card .btn-outline-dark,
body.corp-landing-page .container.my-3 > .card .btn-outline-secondary {
  color: #334155 !important;
  border-color: #cbd5e1 !important;
  background: #fff !important;
}

body.corp-landing-page .container.my-3 > .card .btn-outline-success:hover,
body.corp-landing-page .container.my-3 > .card .btn-outline-dark:hover,
body.corp-landing-page .container.my-3 > .card .btn-outline-secondary:hover {
  color: #0f172a !important;
  border-color: #94a3b8 !important;
  background: #f8fafc !important;
}

body.corp-landing-page .container.my-3 > .card .btn-outline-primary {
  color: #2f67a0 !important;
  border-color: #7ea4c8 !important;
  background: #fff !important;
}

body.corp-landing-page .container.my-3 > .card .btn-outline-primary:hover {
  color: #fff !important;
  border-color: #2f67a0 !important;
  background: #2f67a0 !important;
}

body.corp-landing-page .container.my-3 .bg-light {
  background: #f8fafc !important;
  border-color: #dce3ea !important;
}

body.corp-landing-page .container.my-3 .bg-success-subtle {
  background: #edf7f1 !important;
  border-color: #cfe8d8 !important;
}

body.corp-landing-page .container.my-3 .bg-warning-subtle {
  background: #fff8e7 !important;
  border-color: #ead8a1 !important;
}

body.corp-landing-page .container.my-3 .bg-danger-subtle {
  background: #fff1f0 !important;
  border-color: #efc8c5 !important;
}

body.corp-landing-page #top > .alert-warning {
  background: #fff8e7 !important;
  border: 1px solid #ead8a1 !important;
  border-left: 4px solid #c28a12 !important;
  color: #4b3b13 !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, .035) !important;
}

body.corp-landing-page #top > .alert-warning .btn-warning {
  background: #2f67a0 !important;
  border-color: #2f67a0 !important;
  color: #fff !important;
}

body.corp-landing-page #top > .alert-warning .btn-warning:hover {
  background: #285b8d !important;
  border-color: #285b8d !important;
}

body.corp-landing-page #top > .alert-danger {
  background: #fff4f3 !important;
  border: 1px solid #efcfcc !important;
  border-left: 4px solid #b42318 !important;
  color: #5d2420 !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, .035) !important;
}

body.corp-landing-page #top > .alert-danger .btn-danger {
  background: #2f67a0 !important;
  border-color: #2f67a0 !important;
  color: #fff !important;
}

body.corp-landing-page #adminTaskAlertModal .modal-header.bg-danger {
  background: #fff !important;
  color: #1f2937 !important;
  border-bottom: 1px solid #e5e7eb !important;
  border-left: 4px solid #b42318 !important;
}

body.corp-landing-page #adminTaskAlertModal .btn-close-white {
  filter: none !important;
}

body.corp-landing-page #adminTaskAlertModal .modal-footer .btn-danger {
  background: #2f67a0 !important;
  border-color: #2f67a0 !important;
}

body.corp-landing-page .task-item {
  border-bottom-color: #e5e7eb !important;
}

body.corp-landing-page .task-dot {
  background: #6f8eaa !important;
}

body.corp-landing-page .task-overdue,
body.corp-landing-page .task-overdue .small {
  color: #b42318 !important;
}

body.corp-landing-page .task-overdue .task-dot {
  background: #b42318 !important;
}

body.corp-landing-page #top a:not(.btn):not(.list-group-item) {
  color: #2f67a0;
}

body.corp-landing-page #top .badge.text-bg-warning,
body.corp-landing-page #top .badge.bg-warning {
  background: #fff0bd !important;
  color: #624600 !important;
  border: 1px solid #e6cf83 !important;
}

body.corp-landing-page #top .badge.text-bg-danger,
body.corp-landing-page #top .badge.bg-danger {
  background: #fdecea !important;
  color: #9f241b !important;
  border: 1px solid #efc7c3 !important;
}

body.corp-landing-page #top .badge.bg-success,
body.corp-landing-page #top .badge.text-bg-success {
  background: #e8f4ed !important;
  color: #17633a !important;
  border: 1px solid #c9e2d2 !important;
}

body.corp-landing-page #top .list-group-item {
  border-color: #e5e7eb !important;
  background: #fff;
}

body.corp-landing-page #top .list-group-item-action:hover {
  background: #f8fafc !important;
}

body.corp-landing-page #top .btn-outline-secondary {
  color: #475569 !important;
  border-color: #b9c3cf !important;
  background: #fff !important;
}

body.corp-landing-page #top .btn-outline-secondary:hover {
  color: #1f2937 !important;
  border-color: #8f9baa !important;
  background: #f8fafc !important;
}
/* CORP_LANDINGPAGE_UI_V1_END */

/* CORP_CUSTOMER_DIRECTORY_V1 */
body.corp-customer-directory .corp-customer-directory-stats .card {
  box-shadow:none !important;
}
body.corp-customer-directory .corp-customer-directory-stats .fs-4 {
  color:#27364a;
}
body.corp-customer-directory .corp-customer-staff {
  max-width:260px;
  white-space:normal;
  line-height:1.3;
}
body.corp-customer-directory table td:first-child {
  min-width:190px;
}
body.corp-customer-directory table td:nth-child(2) {
  min-width:180px;
}
body.corp-customer-directory table td:nth-child(3) {
  min-width:190px;
}
body.corp-customer-directory table td:nth-child(5) {
  min-width:210px;
}
body.corp-customer-directory table td:last-child {
  min-width:190px;
}
body.corp-customer-directory .dropdown-menu form .dropdown-item {
  color:var(--bs-dropdown-link-color);
  text-decoration:none;
}
@media (max-width: 991.98px) {
  body.corp-customer-directory .corp-masterdata-filter .btn {
    min-height:38px;
  }
}
