:root{
  --kct-sidebar:255px;
  --kct-brand-height:104px;
  --kct-info-height:112px;
  --kct-fixed-head:216px;
  --kct-navy:#031d3c;
  --kct-teal:#08aab5;
}

/* One layout system: prevent the original grid from reserving the sidebar twice. */
html,body.kctp-body{width:100%;max-width:100%;margin:0;overflow-x:hidden}
.kctp-body .portal{display:block!important;min-height:100vh!important;width:100%!important;background:#f3f7fb}
.kctp-body .sidebar{
  position:fixed!important;left:0!important;top:0!important;bottom:0!important;
  width:var(--kct-sidebar)!important;height:100vh!important;max-height:none!important;
  z-index:10020!important;overflow-y:auto!important;overflow-x:hidden!important;
  background:linear-gradient(180deg,#061f3d,#02162d)!important;
  scrollbar-width:thin;
}
.kctp-body .main{
  display:block!important;min-width:0!important;max-width:none!important;
  margin:0 0 0 var(--kct-sidebar)!important;
  width:calc(100vw - var(--kct-sidebar))!important;
  padding:var(--kct-fixed-head) 0 0!important;
  box-sizing:border-box!important;
}

/* Fixed brand and live-information bars. */
.kct-enterprise-fixed-head{
  position:fixed!important;left:var(--kct-sidebar)!important;right:0!important;top:0!important;
  width:auto!important;height:var(--kct-fixed-head)!important;z-index:10010!important;
  background:#fff;box-shadow:0 5px 18px rgba(4,35,66,.15);overflow:hidden;
}
.kct-enterprise-brandbar{
  height:var(--kct-brand-height)!important;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(110deg,#031b39 0%,#062f58 72%,#087b8c 100%);overflow:hidden;
}
.kct-enterprise-brandbar a{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:8px 24px;box-sizing:border-box}
.kct-enterprise-brandbar img{display:block;width:auto!important;height:78px!important;max-width:min(720px,72vw)!important;object-fit:contain!important}
.kct-enterprise-infobar{
  height:var(--kct-info-height)!important;display:grid!important;
  grid-template-columns:repeat(3,minmax(150px,1fr)) minmax(300px,1.35fr)!important;
  border-bottom:1px solid #dce6f0;background:#fff;overflow:hidden;
}
.kct-world-clock{display:flex;align-items:center;gap:12px;padding:13px 18px;border-right:1px solid #dce6f0;min-width:0}
.kct-world-clock .flag{font-size:26px;flex:0 0 auto}.kct-world-clock div{display:grid;min-width:0}.kct-world-clock b{font-size:13px}.kct-world-clock small,.kct-world-clock em{font-size:10px;color:#64778b;font-style:normal}.kct-world-clock strong{font-size:22px;line-height:1.15;font-variant-numeric:tabular-nums;color:#08243e;white-space:nowrap}
.kct-live-rates{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center;position:relative;padding:13px 22px;background:linear-gradient(135deg,#063b63,#069aa5);color:#fff;min-width:0}.kct-live-rates>div{display:grid}.kct-live-rates small{font-size:11px;font-weight:800}.kct-live-rates strong{font-size:21px;white-space:nowrap}.kct-live-rates em{font-size:10px;color:#baf7df;font-style:normal}.kct-live-rates>span{position:absolute;left:22px;bottom:7px;font-size:9px;color:#d9f6f8}

/* The page title and content fill all remaining space. */
.kctp-body .topbar{
  position:relative!important;top:auto!important;left:auto!important;right:auto!important;
  z-index:1!important;width:100%!important;min-height:88px!important;height:auto!important;
  padding:16px 24px!important;box-sizing:border-box!important;background:#fff;border-bottom:1px solid #dce6f0;
}
.kctp-body .content{
  box-sizing:border-box!important;width:100%!important;max-width:none!important;min-width:0!important;
  margin:0!important;padding:20px 24px 40px!important;overflow:visible!important;
}
.kctp-body .content>*{max-width:100%;box-sizing:border-box}
.kctp-body .panel{width:100%;min-width:0;box-sizing:border-box}

/* Forms and tables must never collapse into a narrow strip. */
.kctp-body .form-grid,.kctp-body .kct-wide-form{width:100%!important;min-width:0!important;box-sizing:border-box!important}
.kctp-body .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.kctp-body .kct-wide-form{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.kctp-body .form-grid label,.kctp-body .form-grid input,.kctp-body .form-grid select,.kctp-body .form-grid textarea{min-width:0!important;max-width:100%!important;width:100%;box-sizing:border-box}
.kctp-body .table-scroll{width:100%;max-width:100%;overflow:auto}
.kctp-body table{width:100%;min-width:760px}

/* Dashboard cards are full-card links and retain their colours. */
.kct-integrated-kpis{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:14px!important;margin-bottom:16px!important;width:100%!important}
.kct-kpi-card{position:relative;min-width:0;min-height:142px;border-radius:14px;padding:18px;display:flex!important;flex-direction:column;justify-content:flex-end;text-decoration:none!important;color:#fff!important;overflow:hidden;box-shadow:0 5px 15px rgba(5,40,75,.12);transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;cursor:pointer}
.kct-kpi-card:hover,.kct-kpi-card:focus{transform:translateY(-5px);box-shadow:0 15px 28px rgba(5,40,75,.24);filter:saturate(1.12);outline:none}
.kct-kpi-card i{position:absolute;left:18px;top:17px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.22);font-style:normal;font-size:24px}.kct-kpi-card strong{font-size:31px!important;color:#fff!important;line-height:1}.kct-kpi-card span{font-size:13px!important;color:#fff!important;font-weight:750;margin-top:7px}.kct-kpi-card b{position:absolute;right:17px;bottom:14px;font-size:24px;color:#fff}
.kct-kpi-1{background:linear-gradient(135deg,#25bd55,#049552)}.kct-kpi-2{background:linear-gradient(135deg,#2889ef,#0758c8)}.kct-kpi-3{background:linear-gradient(135deg,#ac5ce8,#6b29c8)}.kct-kpi-4{background:linear-gradient(135deg,#ffad10,#f25b00)}.kct-kpi-5{background:linear-gradient(135deg,#ff424a,#d90018)}.kct-kpi-6{background:linear-gradient(135deg,#16c1c6,#038590)}
.dashboard-integrated{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)!important;gap:16px!important;width:100%}.dashboard-integrated .panel,.kct-flight-dashboard{border-radius:14px;box-shadow:0 3px 13px rgba(5,40,75,.07)}
.kct-flight-dashboard{margin-top:16px}.kct-flight-row{transition:background .2s}.kct-flight-row:hover{background:#edf8fb}

@media(max-width:1450px){
  :root{--kct-sidebar:225px}
  .kct-integrated-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .kct-enterprise-infobar{grid-template-columns:repeat(3,minmax(140px,1fr)) minmax(275px,1.25fr)!important}
  .kctp-body .kct-wide-form{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1150px){
  :root{--kct-sidebar:205px;--kct-brand-height:92px;--kct-info-height:104px;--kct-fixed-head:196px}
  .kct-enterprise-brandbar img{height:68px!important}
  .kct-world-clock{padding:11px}.kct-world-clock strong{font-size:18px}
  .kct-live-rates{padding:11px 14px}.kct-live-rates strong{font-size:17px}
  .kctp-body .form-grid,.kctp-body .kct-wide-form{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  :root{--kct-sidebar:0px;--kct-brand-height:78px;--kct-info-height:116px;--kct-fixed-head:194px}
  .kctp-body .sidebar{position:relative!important;width:100%!important;height:auto!important;display:none!important}
  .kctp-body .main{margin-left:0!important;width:100%!important}
  .kct-enterprise-fixed-head{left:0!important}
  .kct-enterprise-brandbar img{height:58px!important;max-width:88vw!important}
  .kct-enterprise-infobar{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .kct-live-rates{display:none!important}
  .kct-integrated-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dashboard-integrated{grid-template-columns:1fr!important}
}
@media(max-width:600px){
  :root{--kct-info-height:174px;--kct-fixed-head:252px}
  .kct-enterprise-infobar{grid-template-columns:1fr 1fr!important}
  .kct-world-clock:nth-child(3){grid-column:1/-1}
  .kct-world-clock{padding:8px 10px}.kct-world-clock strong{font-size:17px}
  .kct-integrated-kpis{grid-template-columns:1fr!important}
  .kctp-body .content{padding:12px!important}
  .kctp-body .form-grid,.kctp-body .kct-wide-form{grid-template-columns:1fr!important}
}

@media print{
  .kct-enterprise-fixed-head{display:none!important}
  .kctp-body .main{margin:0!important;width:100%!important;padding:0!important}
}
\n\n/* v15.2.13 — takenpagina: linkerzijde volledig leesbaar en professioneel */
.kctp-body .main,.kctp-body .topbar,.kctp-body .content{min-width:0!important;box-sizing:border-box!important}
.kctp-body .content{padding-left:28px!important;padding-right:28px!important}
.kctp-body .content > .panel,.kctp-body .content > .kct-task-toolbar,.kctp-body .content > .task-board{margin-left:0!important;transform:none!important;position:relative!important;left:auto!important;right:auto!important;width:100%!important}
.kct-task-manage-bar{overflow:visible!important}
.kct-task-manage-bar .panel-head{display:flex!important;gap:18px!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important}
.kct-task-manage-bar .panel-head>div{min-width:260px;flex:1 1 420px}
.kct-task-manage-bar h2,.kct-task-manage-bar p{margin-left:0!important;padding-left:0!important;white-space:normal!important;overflow:visible!important}
.kct-task-toolbar{display:flex!important;gap:12px!important;align-items:center!important;margin:0 0 15px!important}
.kct-task-toolbar input{flex:1 1 420px!important;min-width:180px!important}
.kct-task-toolbar select{flex:0 1 260px!important;min-width:180px!important}
.kct-task-board-v15{grid-template-columns:repeat(3,minmax(260px,1fr))!important;align-items:start!important;width:100%!important;overflow:visible!important}
.kct-task-board-v15 .task-column{min-width:0!important;min-height:170px!important;height:auto!important;overflow:hidden!important}
.kct-task-board-v15 .task-card{min-height:0!important;height:auto!important;padding:12px!important}
.kct-task-board-v15 .kct-empty{margin:10px 0!important;padding:14px!important;background:rgba(255,255,255,.55)!important;border-radius:8px!important;color:#6b7d90!important}
@media(max-width:1300px){.kct-task-board-v15{grid-template-columns:repeat(2,minmax(260px,1fr))!important}}
@media(max-width:900px){.kctp-body .content{padding-left:16px!important;padding-right:16px!important}.kct-task-board-v15{grid-template-columns:1fr!important}.kct-task-toolbar{flex-direction:column!important;align-items:stretch!important}.kct-task-toolbar input,.kct-task-toolbar select{width:100%!important;min-width:0!important;flex:auto!important}}


/* v15.2.18 — gecentreerd werkvlak rechts van het vaste menu */
@media(min-width:901px){
  .kctp-body .main{
    margin-left:var(--kct-sidebar)!important;
    width:calc(100vw - var(--kct-sidebar))!important;
    max-width:calc(100vw - var(--kct-sidebar))!important;
    overflow-x:hidden!important;
  }

  .kctp-body .topbar,
  .kctp-body .content{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    box-sizing:border-box!important;
  }

  .kctp-body .content{
    padding-left:clamp(34px,3vw,54px)!important;
    padding-right:clamp(34px,3vw,54px)!important;
  }

  /* Alle hoofdelementen netjes in het midden van het beschikbare werkvlak. */
  .kctp-body .content > *,
  .kctp-body .content > .panel,
  .kctp-body .content > .kct-task-manage-bar,
  .kctp-body .content > .kct-task-toolbar,
  .kctp-body .content > .task-board,
  .kctp-body .content > .kct-patient-toolbar,
  .kctp-body .content > .kct-patient-list-panel{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    float:none!important;
    width:100%!important;
    max-width:1480px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
  }

  /* Titels en panel-koppen mogen nooit onder de sidebar terechtkomen. */
  .kctp-body .content .panel-head,
  .kctp-body .content .kct-step-heading,
  .kctp-body .content h1,
  .kctp-body .content h2,
  .kctp-body .content h3{
    position:relative!important;
    left:auto!important;
    margin-left:0!important;
    padding-left:0!important;
    transform:none!important;
    max-width:100%!important;
  }

  .kctp-body .kct-task-manage-bar{
    clear:both!important;
    overflow:visible!important;
  }

  .kctp-body .kct-task-manage-bar .panel-head{
    width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  .kctp-body .task-board,
  .kctp-body .kct-task-board-v15{
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* Tablet en telefoon gebruiken het volledige scherm zonder kunstmatige linker marge. */
@media(max-width:900px){
  .kctp-body .main{
    margin-left:0!important;
    width:100%!important;
    max-width:100%!important;
  }
  .kctp-body .content{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .kctp-body .content > *{
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* v15.2.19 — beheerblokken exact op dezelfde contentlijn */
@media(min-width:901px){
  .kctp-body .main > .kct-centered-manage-panel,
  .kctp-body .main > section.kct-centered-manage-panel,
  .kctp-body .main > div.kct-centered-manage-panel{
    width:auto!important;
    max-width:1480px!important;
    margin-left:clamp(34px,3vw,54px)!important;
    margin-right:clamp(34px,3vw,54px)!important;
    box-sizing:border-box!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
  }

  .kctp-body .content .kct-centered-manage-panel,
  .kctp-body .kct-centered-manage-panel{
    box-sizing:border-box!important;
  }

  .kctp-body .kct-centered-manage-panel > h1,
  .kctp-body .kct-centered-manage-panel > h2,
  .kctp-body .kct-centered-manage-panel > h3,
  .kctp-body .kct-centered-manage-panel .panel-head h1,
  .kctp-body .kct-centered-manage-panel .panel-head h2,
  .kctp-body .kct-centered-manage-panel .panel-head h3{
    margin-left:0!important;
    padding-left:0!important;
    left:auto!important;
    transform:none!important;
  }
}

/* Wereldkaart is uitsluitend toegestaan op Operationeel overzicht. */
body:not(.kct-route-dashboard) .kct-global-worldmap-panel,
body:not(.kct-route-dashboard) [data-kct-worldmap-global="1"]{
  display:none!important;
}


/* v15.2.20 — beheerblok exact even breed als het normale contentpaneel */
@media(min-width:901px){
  .kctp-body{
    --kct-reference-left:auto;
    --kct-reference-width:auto;
  }

  .kctp-body .kct-centered-manage-panel{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    box-sizing:border-box!important;
  }

  /* Wanneer JS de exacte referentiebreedte heeft bepaald, gebruik exact die waarden. */
  .kctp-body .kct-centered-manage-panel.kct-match-reference{
    width:var(--kct-reference-width)!important;
    max-width:var(--kct-reference-width)!important;
    min-width:0!important;
    margin-left:var(--kct-reference-left)!important;
    margin-right:0!important;
  }
}

@media(max-width:900px){
  .kctp-body .kct-centered-manage-panel.kct-match-reference{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}
