/* =========================================
   ACENTIO x ZAMMAD – v1 foundation
   Based on the design system
   =========================================*/ 

/* Optional if Google Fonts are allowed */
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300;400;500;600;700&display=swap');

:root {
  --ac-primary: #0A3042;
  --ac-primary-strong: #051E2B;
  --ac-secondary: #E6D3A0;
  --ac-accent: #B8923D;
  --ac-cta: #2AA090;

  --ac-bg: #FFFFFF;
  --ac-card: #FFFFFF;
  --ac-muted: #F2EFE8;
  --ac-surface-subtle: #FAF8F4;
  --ac-accent-subtle: #F0E8D4;
  --ac-border: #D6D0C4;

  --ac-text: #051E2B;
  --ac-text-muted: #264D66;
  --ac-danger: #E83535;
  --ac-ring: #C9A042;

  --ac-radius: 8px;
  --ac-radius-sm: 4px;
  --ac-shadow-sm: 0 1px 2px rgba(5, 30, 43, 0.08);
  --ac-shadow-md: 0 4px 12px rgba(5, 30, 43, 0.10);
  --ac-shadow-lg: 0 10px 24px rgba(5, 30, 43, 0.14);
}

/* =========================================
   TYPOGRAPHY
   ========================================= */

html,
body,
button,
input,
select,
textarea {
  font-family: "Roboto Condensed", system-ui, sans-serif !important;
  color: var(--ac-text);
}

body {
  background: var(--ac-bg) !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
}

h1, h2, h3, h4, h5, h6,
.hero, .title, .headline {
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
  color: var(--ac-primary) !important;
}

a {
    color: var(--ac-ring);
}



/* =========================================
   NAVIGATION
   ========================================= */

.navigation {
    width: 230px;
    background: var(--ac-primary);
}

/* Force show navigation toggle */

.menu-item-navigation-toggle-button,
.js-navigation-toggle-button {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

@container navigation (width > 50px) {
  .menu-item-navigation-toggle-button,
  .js-navigation-toggle-button {
    display: flex !important;
    justify-content: flex-end !important;
    height: 30px;
  }
}

/* More visbile icons */
.menu-item .icon {
    fill: var(--ac-surface-subtle);
}

/* More visbile tasks */
.tasks {
    background: #ffffff29;
}

/* More visbile User menu */
.user-menu>li {
    background: rgb(0 0 0 / 0%);
}

.user-menu-icon {
    fill: var(--ac-surface-subtle);
}

/* =========================================
   LEFT NAV SCROLLBAR (TARGET ACTUAL PANEL)
   ========================================= */

/* native scrollbar på selve task-listen */
.navigation .tasks,
.navigation .tasks-navigation,
.navigation .tasks.tasks-navigation {
  scrollbar-width: thin !important;
  scrollbar-color: rgba(255, 255, 255, 0.24) transparent !important;
}

.navigation .tasks::-webkit-scrollbar,
.navigation .tasks-navigation::-webkit-scrollbar,
.navigation .tasks.tasks-navigation::-webkit-scrollbar {
  width: 4px !important;
}

.navigation .tasks::-webkit-scrollbar-track,
.navigation .tasks-navigation::-webkit-scrollbar-track,
.navigation .tasks.tasks-navigation::-webkit-scrollbar-track {
  background: transparent !important;
}

.navigation .tasks::-webkit-scrollbar-thumb,
.navigation .tasks-navigation::-webkit-scrollbar-thumb,
.navigation .tasks.tasks-navigation::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.24) !important;
  border-radius: 999px !important;
}

.navigation .tasks::-webkit-scrollbar-thumb:hover,
.navigation .tasks-navigation::-webkit-scrollbar-thumb:hover,
.navigation .tasks.tasks-navigation::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.34) !important;
}

/* fallback hvis Zammad bruger PerfectScrollbar inde i samme område */
.navigation .tasks .ps__rail-y,
.navigation .tasks-navigation .ps__rail-y,
.navigation .tasks.tasks-navigation .ps__rail-y {
  width: 4px !important;
  right: 1px !important;
  background: transparent !important;
  opacity: 1 !important;
}

.navigation .tasks .ps__thumb-y,
.navigation .tasks-navigation .ps__thumb-y,
.navigation .tasks.tasks-navigation .ps__thumb-y {
  width: 4px !important;
  right: 0 !important;
  background-color: rgba(255, 255, 255, 0.24) !important;
  border-radius: 999px !important;
}

/* =========================================
   SEARCH
   ========================================= */

/* Switch logo */
.search {
  display: flex !important;
  align-items: center !important;
  padding: 6px 8px !important;
}

.search-holder {
  margin: 0 !important;
}

.search .logo {
  display: block !important;
  width: 72px !important;
  height: 32px !important;
  margin: 0 6px 0 8px !important;
  background-image: url("https://tricomimages.s3.dualstack.eu-west-1.amazonaws.com/servicedesk.acent.io/images/servicedesk.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

.search .logo svg {
  display: none !important;
}

.search input[type='search'] {
  width: 100%;
  color: var(--ac-text);
  background: #fff;
}

/* =========================================
   LISTS / TABLE VIEWS
   ========================================= */

/* Base tables */
table,
.table {
  background: #fff !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
}

/* Generic headers */
table thead th,
.table thead th,
table th,
.table th {
  background: var(--ac-surface-subtle) !important;
  color: var(--ac-primary) !important;
  border-bottom: 1px solid var(--ac-border) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
}

/* Generic cells */
table td,
.table td {
  border-bottom: 1px solid rgba(214, 208, 196, 0.5) !important;
  color: var(--ac-text) !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
}

/* Generic hover / active */
table tbody tr:hover td,
.table tbody tr:hover td {
  background: var(--ac-surface-subtle) !important;
}

table tbody tr.active td,
.table tbody tr.active td {
  background: var(--ac-accent-subtle) !important;
}

table td a,
.table td a {
  font-weight: 500 !important;
}

table td:nth-child(n+3),
.table td:nth-child(n+3) {
  color: var(--ac-text-muted) !important;
}

.overviews .table > thead > tr > th {
  padding: 6px 8px !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
  vertical-align: middle !important;
}

.overviews .table > tbody > tr > td {
  padding: 4px 8px !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
  vertical-align: middle !important;
}

/* First column: checkbox / state icon */
.overviews .table > thead > tr > th:first-child,
.overviews .table > tbody > tr > td:first-child {
  width: 28px !important;
  padding-left: 4px !important;
  padding-right: 4px !important;
  text-align: center !important;
}

/* Title column links */
.overviews .table td a {
  display: inline-block !important;
  line-height: 1.1 !important;
}

/* Reduce visual bulk in overview rows */
.overviews .table tbody tr {
  height: auto !important;
}

.overviews .table .icon,
.overviews .table svg {
  vertical-align: middle !important;
  opacity: 0.9 !important;
}

/* Slightly calmer metadata columns */
.overviews .table td:nth-child(n+3) {
  color: var(--ac-text-muted) !important;
}

/* Checkbox */
.checkbox-replacement, .radio-replacement {
    justify-content: normal;
}

.tab.active {
    background: hsl(206.22deg 63.98% 58.63%);
}

.tabs {
    color: var(--ac-text-muted);
}

/* =========================================
   LOGIN
   ========================================= */

.fullscreen {
    background-color: #264D66;
    background-image: url(https://tricomimages.s3.dualstack.eu-west-1.amazonaws.com/servicedesk.acent.io/images/login-bg.jpg);
}

/* =========================================
   MISC
   ========================================= */

/* Reduce visual noise slightly */
.icon,
svg {
  opacity: 0.9;
}

/* Error page */
.error-image {
  height: 275px !important;
  width: 100% !important;
  max-width: 420px !important;
  margin: 24px auto 32px !important;
  background-image: url(https://tricomimages.s3.dualstack.eu-west-1.amazonaws.com/servicedesk.acent.io/images/error_bird.png) !important;
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

body.error,
.error-page,
.error-page body,
body:has(.error-image) {
  background: var(--ac-primary-strong) !important;
  color: #fff !important;
}

body:has(.error-image) h1,
body:has(.error-image) h2,
body:has(.error-image) h3 {
  color: #fff !important;
  text-align: center !important;
}

body:has(.error-image) p,
body:has(.error-image) .description,
body:has(.error-image) .subtitle {
  color: rgba(255, 255, 255, 0.72) !important;
  text-align: center !important;
}

body:has(.error-image) a {
  color: var(--ac-secondary) !important;
}

body:has(.error-image) a:hover {
  color: #fff !important;
}

body:has(.error-image) .error-image + p,
body:has(.error-image) .error-image ~ p {
  max-width: 560px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Remove Zammad logo */
.poweredBy {
    visibility: hidden;
}

/* =========================================
   TICKET OVERVIEW: HIDE MIDDLE SIDEBAR EARLIER
   ========================================= */

@media screen and (max-width: 3700px) {

  /* kun på Ticket Overview-siden */
  #content_permanent_TicketOverview.content.horizontal.flex.overviews.active > .sidebar {
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
  }

  /* skjul indholdet inde i sidebaren */
  #content_permanent_TicketOverview.content.horizontal.flex.overviews.active > .sidebar > * {
    display: none !important;
  }

  /* vis responsive overview-header */
  #content_permanent_TicketOverview .overview-header {
    display: flex !important;
  }
}