/* D-Connect Workspace anonymous/auth production bundle
 * Generated from the proven ordered stylesheet stack for production.
 * Source version: 0.24.81; consolidated in 0.24.82 to eliminate dozens of
 * render-blocking requests and intermediate style passes.
 */

/* ===== SOURCE: public/css/performance-02417.css ===== */
/* 0.24.17 - paint-safe bootstrap layer.
   Loaded first so the native GLPI chrome never flashes before the D-Connect shell JS is ready. */
html{background:#f3f7fb}
body.central{background:#f3f7fb!important}
body.central aside[data-testid="sidebar"],
body.central header[data-testid="main-header"]{display:none!important}
body.central .page-wrapper,
body.central .page-body{background:#f3f7fb!important}
body.central main#page{min-height:60vh}

/* Anonymous login: avoid one frame of the unstyled GLPI card. */
body.welcome-anonymous{background:#edf5fa!important}
body.welcome-anonymous .main-content-card{opacity:0!important}
body.welcome-anonymous.dc-login-02410 .main-content-card{opacity:1!important}

/* Disable cosmetic transitions during the very first paint. */
body:not(.dc-shell-ready) *{scroll-behavior:auto!important}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
/* Pre-theme the native content as well, so navigating to GLPI administration pages
   never shows a bright/default GLPI frame before the normal D-Connect stylesheet finishes. */
body.central .card,body.central .search-container,body.central .tab-content{border-color:#dce6ef!important;border-radius:10px!important;background:#fff!important}
body.central .card-header,body.central .card-footer{border-color:#e7eef4!important;background:#f8fbfd!important}
body.central .btn-primary{background:#10b7c5!important;border-color:#10b7c5!important}
body.central .form-control,body.central .form-select{border-color:#cfdee9!important;border-radius:8px!important}
body.central table.table thead th{background:#edf4f8!important;color:#3d5f7b!important}


/* ===== SOURCE: public/css/auth-helpdesk.css ===== */

/* =========================================================
   D-Connect Login + Simple Helpdesk UI 0.16.1
========================================================= */

/* ---------- Anonymous / login ---------- */
body.welcome-anonymous{
  min-height:100vh;
  background:
    radial-gradient(circle at 72% 18%, rgba(15,183,197,.15), transparent 28rem),
    linear-gradient(135deg,#06283f 0%,#0a4566 45%,#eef6fa 45%,#f5f9fc 100%)!important;
}
body.welcome-anonymous main#page.page-anonymous{
  min-height:100vh;
}
body.welcome-anonymous .container-tight{
  width:min(940px,92vw)!important;
  max-width:940px!important;
  padding:0!important;
}
body.welcome-anonymous .glpi-logo{
  display:none!important;
}
body.welcome-anonymous .container-tight:before{
  content:"D-CONNECT";
  display:block;
  margin:0 auto 16px;
  color:#fff;
  font-size:26px;
  line-height:1;
  font-weight:900;
  letter-spacing:.04em;
  text-align:center;
}
body.welcome-anonymous .container-tight:after{
  content:"IT. EINFACH. SICHER.";
  display:block;
  position:absolute;
  top:calc(50% - 230px);
  left:50%;
  transform:translateX(-50%);
  color:rgba(255,255,255,.72);
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
}
body.welcome-anonymous .main-content-card{
  width:min(520px,100%);
  margin:0 auto;
  border:1px solid rgba(213,226,235,.9)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 30px 90px rgba(2,30,47,.25)!important;
  overflow:hidden;
}
body.welcome-anonymous .main-content-card>.card-header{
  display:none!important;
}
body.welcome-anonymous .main-content-card>.card-body{
  padding:28px 32px 30px!important;
}
body.welcome-anonymous .main-content-card h2{
  color:#0a3155!important;
  font-size:23px!important;
  font-weight:850!important;
}
body.welcome-anonymous .form-label{
  color:#355872!important;
  font-size:10px!important;
  font-weight:750!important;
}
body.welcome-anonymous .form-control,
body.welcome-anonymous .form-select,
body.welcome-anonymous .select2-selection{
  min-height:42px!important;
  border:1px solid #cfdee9!important;
  border-radius:8px!important;
  background:#fdfefe!important;
  box-shadow:none!important;
}
body.welcome-anonymous .form-control:focus,
body.welcome-anonymous .form-select:focus{
  border-color:#67cbd3!important;
  box-shadow:0 0 0 3px rgba(16,183,197,.10)!important;
}
body.welcome-anonymous .btn-primary{
  min-height:42px!important;
  border-radius:8px!important;
  border-color:#10b7c5!important;
  background:#10b7c5!important;
  font-size:10px!important;
  font-weight:800!important;
}
body.welcome-anonymous .btn-primary:hover{
  background:#0799a5!important;
  border-color:#0799a5!important;
}
body.welcome-anonymous .forgot_password a{
  color:#168997!important;
  font-size:10px!important;
}
body.welcome-anonymous .text-muted.mt-3{
  color:rgba(255,255,255,.72)!important;
  font-size:9px!important;
}

/* ---------- Simple/helpdesk interface ---------- */
body .helpdesk-home-container{
  background:#f4f8fb!important;
}
body .helpdesk-home-container .search-banner{
  position:relative;
  min-height:255px!important;
  background:
    radial-gradient(circle at 75% 10%,rgba(14,183,197,.22),transparent 25rem),
    linear-gradient(135deg,#06283f,#0a4a6d)!important;
  overflow:hidden;
}
body .helpdesk-home-container .scene{
  opacity:.18;
  filter:saturate(.5);
}
body .helpdesk-home-container .search-banner-content{
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
body .helpdesk-home-container [data-testid="home-title"]{
  color:#fff!important;
  font-size:30px!important;
  font-weight:850!important;
  letter-spacing:-.02em;
}
body .helpdesk-home-container [data-testid="home-title"]:after{
  content:"D-Connect Service Portal";
  display:block;
  margin-top:8px;
  color:rgba(255,255,255,.70);
  font-size:10px;
  font-weight:650;
  letter-spacing:.04em;
}
body .helpdesk-home-container .search-bar-container{
  max-width:720px;
  margin:24px auto 0!important;
}
body .helpdesk-home-container .home-search{
  min-height:48px!important;
  padding-left:44px!important;
  border:1px solid rgba(255,255,255,.3)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.97)!important;
  color:#173b59!important;
  box-shadow:0 12px 30px rgba(0,20,35,.18)!important;
}
body .helpdesk-home-container .tiles-banner{
  padding:24px 0!important;
  background:#f4f8fb!important;
}
body .helpdesk-home-container .tiles-banner .card{
  border:1px solid #dce6ef!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(5,42,66,.04)!important;
  transition:.15s ease;
}
body .helpdesk-home-container .tiles-banner .card:hover{
  transform:translateY(-2px);
  border-color:#bfe6e9!important;
  box-shadow:0 9px 24px rgba(5,42,66,.08)!important;
}
body .helpdesk-home-container .tiles-banner .card-title{
  color:#123956!important;
  font-size:15px!important;
  font-weight:800!important;
}
body .helpdesk-home-container .tickets-banner{
  padding:12px 0 30px!important;
  background:#f4f8fb!important;
}
body .helpdesk-home-container .tickets-banner .card,
body .helpdesk-home-container .tickets-banner .tab-content{
  border-radius:10px!important;
}

/* Simple-interface generic page components */
body[class*="helpdesk"] main#page .card,
body .helpdesk-home-container .card{
  border-color:#dce6ef!important;
}
body[class*="helpdesk"] .btn-primary{
  background:#10b7c5!important;
  border-color:#10b7c5!important;
}
body[class*="helpdesk"] .nav-tabs .nav-link.active{
  color:#07818d!important;
  border-bottom-color:#10b7c5!important;
}

@media(max-width:700px){
  body.welcome-anonymous{
    background:linear-gradient(180deg,#06283f 0,#0a4566 35%,#f5f9fc 35%)!important;
  }
  body.welcome-anonymous .main-content-card>.card-body{
    padding:22px 20px!important;
  }
}


/* 0.21.7 anniversary logo on anonymous/helpdesk surfaces */
body.helpdesk .navbar-brand,
body.welcome-anonymous .navbar-brand{
  background-image:url("../img/dconnect-10-years.png")!important;
  background-repeat:no-repeat!important;
  background-position:left center!important;
  background-size:contain!important;
  min-width:210px!important;
  min-height:58px!important;
}

body.helpdesk .navbar-brand::before,
body.helpdesk .navbar-brand::after,
body.welcome-anonymous .navbar-brand::before,
body.welcome-anonymous .navbar-brand::after{
  content:none!important;
  display:none!important;
}

body.helpdesk .navbar-brand .glpi-logo,
body.welcome-anonymous .navbar-brand .glpi-logo{
  opacity:0!important;
}


/* 0.21.8: anniversary mark stays readable on dark portal bars */
body.helpdesk .navbar,
body.welcome-anonymous .navbar{
  --dc-anniversary-logo:url("../img/dconnect-10-years-dark.png");
}


/* 0.22.7: the customer portal owns its authenticated helpdesk header. */
body.dc-customer-portal-v1 .navbar-brand.dc-customer-brand-v1{
  background-image:var(--dc-customer-logo)!important;
}


/* ===== SOURCE: public/css/surface-system.css ===== */
/* =========================================================
   D-Connect Complete Surface System 0.18
   Login, anonymous pages, simple helpdesk, central pages,
   planning, search, dashboard and non-form GLPI surfaces.
========================================================= */

/* ---------- LOGIN / ANONYMOUS ---------- */
body.welcome-anonymous.dc-surface-anonymous{
  min-height:100vh!important;
  background:
    radial-gradient(circle at 18% 22%, rgba(13,183,197,.18), transparent 26rem),
    linear-gradient(120deg,#06283f 0%,#0a4566 44%,#eef5f9 44%,#f4f8fb 100%)!important;
}
body.welcome-anonymous.dc-surface-anonymous main#page{
  min-height:100vh!important;
  background:transparent!important;
}
body.welcome-anonymous.dc-surface-anonymous main#page>.flex-fill{
  margin:0!important;
  padding:28px 20px!important;
}
body.welcome-anonymous.dc-surface-anonymous .container-tight{
  position:relative;
  width:min(1120px,96vw)!important;
  max-width:1120px!important;
  padding:0!important;
}
body.welcome-anonymous.dc-surface-anonymous .container-tight>.text-center:first-child{
  display:none!important;
}
body.welcome-anonymous.dc-surface-anonymous .main-content-card{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border:1px solid rgba(211,225,234,.95)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 32px 90px rgba(2,29,47,.25)!important;
  overflow:hidden!important;
}
body.welcome-anonymous.dc-surface-anonymous .main-content-card>.card-header{
  display:none!important;
}
body.welcome-anonymous.dc-surface-anonymous .main-content-card>.card-body{
  padding:0!important;
}
body.welcome-anonymous.dc-surface-login .main-content-card form{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr)!important;
  min-height:610px;
  align-items:stretch;
}
body.welcome-anonymous.dc-surface-login .rich_text_container{
  grid-column:1!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  min-height:610px;
  padding:54px 58px!important;
  text-align:left!important;
  color:#eaf5f8!important;
  background:
    radial-gradient(circle at 82% 15%,rgba(17,183,197,.25),transparent 18rem),
    linear-gradient(145deg,#06283f,#0b4c6e)!important;
}
body.welcome-anonymous.dc-surface-login .rich_text_container *{
  color:inherit!important;
}
body.welcome-anonymous.dc-surface-login .rich_text_container h1,
body.welcome-anonymous.dc-surface-login .rich_text_container h2,
body.welcome-anonymous.dc-surface-login .rich_text_container h3{
  margin:0 0 12px!important;
  color:#fff!important;
  font-size:28px!important;
  font-weight:850!important;
}
body.welcome-anonymous.dc-surface-login .rich_text_container strong{
  color:#fff!important;
}
body.welcome-anonymous.dc-surface-login .rich_text_container ul{
  margin:10px 0 16px!important;
  padding-left:20px!important;
}
body.welcome-anonymous.dc-surface-login .rich_text_container li{
  margin:7px 0!important;
}
body.welcome-anonymous.dc-surface-login .main-content-card form>.row{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  margin:0!important;
  padding:56px 48px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.welcome-anonymous.dc-surface-login .main-content-card form>.row>.col-md-5{
  width:100%!important;
  max-width:430px!important;
  flex:0 0 100%!important;
}
body.welcome-anonymous.dc-surface-login .card-header{
  display:block!important;
  margin:0 0 28px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.welcome-anonymous.dc-surface-login .card-header h2{
  color:#0a3155!important;
  font-size:23px!important;
  font-weight:850!important;
}
body.welcome-anonymous.dc-surface-login .form-label{
  color:#355872!important;
  font-size:10px!important;
  font-weight:750!important;
}
body.welcome-anonymous.dc-surface-login .form-control,
body.welcome-anonymous.dc-surface-login .form-select,
body.welcome-anonymous.dc-surface-login .select2-selection{
  min-height:44px!important;
  border:1px solid #cfdee9!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#173b59!important;
  box-shadow:none!important;
}
body.welcome-anonymous.dc-surface-login .form-control:focus{
  border-color:#68ccd4!important;
  box-shadow:0 0 0 3px rgba(16,183,197,.10)!important;
}
body.welcome-anonymous.dc-surface-login .btn-primary{
  min-height:44px!important;
  border-radius:8px!important;
  border-color:#10b7c5!important;
  background:#10b7c5!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:800!important;
}
body.welcome-anonymous.dc-surface-login .btn-primary:hover{
  background:#0799a5!important;
  border-color:#0799a5!important;
}
body.welcome-anonymous.dc-surface-login .forgot_password a{
  color:#118c99!important;
  font-size:9px!important;
  font-weight:700!important;
}
body.welcome-anonymous.dc-surface-login .main-content-card form>.text-center.mt-4,
body.welcome-anonymous.dc-surface-login .main-content-card form>.border-top{
  grid-column:2!important;
}
body.welcome-anonymous.dc-surface-login .container-tight>.text-muted{
  margin-top:14px!important;
  color:rgba(255,255,255,.74)!important;
  font-size:8px!important;
}

/* Anonymous pages without custom login rich text */
body.welcome-anonymous.dc-surface-anonymous:not(.dc-surface-login) .main-content-card{
  width:min(560px,96vw)!important;
  margin:auto!important;
}
body.welcome-anonymous.dc-surface-anonymous:not(.dc-surface-login) .main-content-card>.card-body{
  padding:28px!important;
}

/* ---------- SIMPLE / HELPDESK HOME ---------- */
body.dc-surface-helpdesk-home .helpdesk-home-container{
  background:#f4f8fb!important;
}
body.dc-surface-helpdesk-home .search-banner{
  min-height:270px!important;
  position:relative;
  background:
    radial-gradient(circle at 74% 16%,rgba(14,183,197,.23),transparent 26rem),
    linear-gradient(135deg,#06283f,#0b4d70)!important;
}
body.dc-surface-helpdesk-home .search-banner .scene{
  opacity:.14!important;
}
body.dc-surface-helpdesk-home .search-banner-content{
  z-index:2;
  justify-content:center;
}
body.dc-surface-helpdesk-home [data-testid="home-title"]{
  color:#fff!important;
  font-size:31px!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
}
body.dc-surface-helpdesk-home [data-testid="home-title"]::after{
  content:"D-Connect Service Portal";
  display:block;
  margin-top:8px;
  color:rgba(255,255,255,.68);
  font-size:10px;
  font-weight:650;
  letter-spacing:.05em;
}
body.dc-surface-helpdesk-home .search-bar-container{
  max-width:760px!important;
  margin:24px auto 0!important;
}
body.dc-surface-helpdesk-home .home-search{
  min-height:50px!important;
  padding-left:44px!important;
  border:1px solid rgba(255,255,255,.34)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#173b59!important;
  box-shadow:0 14px 34px rgba(0,22,38,.18)!important;
}
body.dc-surface-helpdesk-home .search-result-container{
  margin-top:8px;
  border:1px solid #d6e2eb!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(5,42,66,.16)!important;
}
body.dc-surface-helpdesk-home .tiles-banner{
  padding:24px 0 14px!important;
  background:#f4f8fb!important;
}
body.dc-surface-helpdesk-home .tiles-banner .card{
  border:1px solid #dce6ef!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(5,42,66,.04)!important;
  transition:.15s ease;
}
body.dc-surface-helpdesk-home .tiles-banner .card:hover{
  transform:translateY(-2px);
  border-color:#bce5e8!important;
  box-shadow:0 10px 26px rgba(5,42,66,.08)!important;
}
body.dc-surface-helpdesk-home .tiles-banner .card-title{
  color:#123956!important;
  font-size:15px!important;
  font-weight:800!important;
}
body.dc-surface-helpdesk-home .tiles-banner .text-secondary{
  color:#71879a!important;
  font-size:10px!important;
}
body.dc-surface-helpdesk-home .tickets-banner{
  padding:12px 0 34px!important;
  background:#f4f8fb!important;
}
body.dc-surface-helpdesk-home .tickets-banner .card,
body.dc-surface-helpdesk-home .tickets-banner .tab-content{
  border:1px solid #dce6ef!important;
  border-radius:10px!important;
  background:#fff!important;
}

/* ---------- CENTRAL / DASHBOARD ---------- */
body.dc-surface-central .dc-surface-dashboard-block,
body.dc-route-dashboard .dc-surface-dashboard-block{
  border-radius:10px!important;
}
body.dc-surface-central .dashboard-card,
body.dc-route-dashboard .dashboard-card{
  border:1px solid #dce6ef!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(5,42,66,.035)!important;
}

/* ---------- PLANNING ---------- */
body.dc-surface-planning .planning,
body.dc-route-planning .planning,
body.dc-surface-planning [class*="planning"]{
  border-radius:10px;
}
body.dc-surface-planning .fc,
body.dc-route-planning .fc{
  background:#fff!important;
  border:1px solid #dce6ef!important;
  border-radius:10px!important;
  padding:10px!important;
}
body.dc-surface-planning .fc-button,
body.dc-route-planning .fc-button{
  border-radius:7px!important;
  background:#f7fafc!important;
  border-color:#d7e3ec!important;
  color:#355872!important;
}
body.dc-surface-planning .fc-button-active,
body.dc-route-planning .fc-button-active{
  background:#10b7c5!important;
  border-color:#10b7c5!important;
  color:#fff!important;
}

/* ---------- SEARCH / LIST SURFACES ---------- */
body.dc-core-surface .dc-surface-search-block{
  border:1px solid #dce6ef!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(5,42,66,.03)!important;
}
body.dc-core-surface .dc-surface-kanban-block{
  background:#f4f8fb!important;
}
body.dc-core-surface .dc-surface-timeline-block{
  border-color:#dce6ef!important;
}

/* ---------- MARKETPLACE / PREF / ADMIN NON-FORM ---------- */
body.dc-surface-preferences main#page .card,
body.dc-surface-marketplace main#page .card,
body.dc-surface-notifications main#page .card{
  border:1px solid #dce6ef!important;
  border-radius:10px!important;
  box-shadow:0 3px 12px rgba(5,42,66,.035)!important;
}

/* ---------- GLOBAL NON-FORM COMPONENTS ---------- */
body.dc-core-surface main#page .nav-tabs{
  border-color:#dce6ef!important;
}
body.dc-core-surface main#page .nav-tabs .nav-link{
  color:#45647b!important;
  font-size:9px!important;
  font-weight:750!important;
}
body.dc-core-surface main#page .nav-tabs .nav-link.active{
  color:#087d88!important;
  border-color:#dce6ef #dce6ef #fff!important;
}
body.dc-core-surface main#page .btn-primary{
  background:#10b7c5!important;
  border-color:#10b7c5!important;
}
body.dc-core-surface main#page .btn-primary:hover{
  background:#0799a5!important;
  border-color:#0799a5!important;
}

@media(max-width:850px){
  body.welcome-anonymous.dc-surface-login .main-content-card form{
    grid-template-columns:1fr!important;
  }
  body.welcome-anonymous.dc-surface-login .rich_text_container{
    grid-column:1!important;
    grid-row:1!important;
    min-height:320px!important;
    padding:34px 28px!important;
  }
  body.welcome-anonymous.dc-surface-login .main-content-card form>.row{
    grid-column:1!important;
    grid-row:2!important;
    padding:34px 26px!important;
  }
}


/* 0.18.1 - simple portal navigation cleanup */
body.dc-surface-helpdesk-home header a[href*="ticket"],
body.dc-surface-helpdesk-home nav a[href*="ticket"]{
  display:none!important;
}


/* =========================================================
   0.18.2 - Complete customer/simple portal treatment
========================================================= */

/* All pages in GLPI's simple/helpdesk interface */
body.helpdesk.dc-simple-helpdesk{
  background:#f4f8fb!important;
  color:#173b59!important;
}

body.helpdesk.dc-simple-helpdesk header.topbar,
body.helpdesk.dc-simple-helpdesk header[data-testid="main-header"]{
  min-height:72px!important;
  background:#0b3f5f!important;
  border:0!important;
  box-shadow:0 3px 14px rgba(4,31,48,.16)!important;
}

body.helpdesk.dc-simple-helpdesk header .header-container{
  max-width:1280px!important;
  min-height:72px!important;
}

body.helpdesk.dc-simple-helpdesk .navbar-brand{
  width:210px!important;
  min-width:210px!important;
  position:relative;
  display:flex!important;
  align-items:center!important;
  padding:0!important;
  text-decoration:none!important;
}

body.helpdesk.dc-simple-helpdesk .navbar-brand .glpi-logo{
  display:none!important;
}

body.helpdesk.dc-simple-helpdesk .navbar-brand::before{
  content:"D-CONNECT";
  display:block;
  color:#fff;
  font-size:20px;
  line-height:1;
  font-weight:900;
  letter-spacing:.035em;
}

body.helpdesk.dc-simple-helpdesk .navbar-brand::after{
  content:"IT. EINFACH. SICHER.";
  position:absolute;
  left:0;
  top:44px;
  color:rgba(255,255,255,.70);
  font-size:7px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
}

body.helpdesk.dc-simple-helpdesk #navbar-menu{
  min-height:72px!important;
}

body.helpdesk.dc-simple-helpdesk #navbar-menu>.navbar-nav{
  gap:4px;
}

body.helpdesk.dc-simple-helpdesk #navbar-menu .nav-link{
  min-height:40px;
  padding:9px 11px!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  border-radius:7px!important;
  color:rgba(255,255,255,.76)!important;
  font-size:10px!important;
  font-weight:700!important;
}

body.helpdesk.dc-simple-helpdesk #navbar-menu .nav-link:hover,
body.helpdesk.dc-simple-helpdesk #navbar-menu .nav-item.active>.nav-link,
body.helpdesk.dc-simple-helpdesk #navbar-menu .nav-link.active{
  background:rgba(255,255,255,.09)!important;
  color:#fff!important;
}

body.helpdesk.dc-simple-helpdesk #navbar-menu .nav-link i{
  color:#72d4dc!important;
  font-size:16px!important;
}

/* Hard backup: hide Tickets link in every helpdesk/simple page */
body.helpdesk.dc-simple-helpdesk #navbar-menu a[href*="/front/ticket"],
body.helpdesk.dc-simple-helpdesk #navbar-menu a[href*="ticket.php"],
body.helpdesk.dc-simple-helpdesk #navbar-menu li[aria-label="Tickets"]{
  display:none!important;
}

body.helpdesk.dc-simple-helpdesk .user-menu .nav-link{
  border-radius:9px!important;
  padding:6px 8px!important;
  color:#fff!important;
}

body.helpdesk.dc-simple-helpdesk .user-menu .text-muted-menu{
  color:rgba(255,255,255,.62)!important;
}

body.helpdesk.dc-simple-helpdesk .user-menu .avatar{
  border-radius:8px!important;
  box-shadow:0 0 0 2px rgba(255,255,255,.15)!important;
}

/* Body/content container */
body.helpdesk.dc-simple-helpdesk .page-wrapper{
  background:#f4f8fb!important;
}

body.helpdesk.dc-simple-helpdesk .page-body{
  max-width:1280px!important;
  padding-top:18px!important;
}

body.helpdesk.dc-simple-helpdesk main#page{
  color:#173b59!important;
}

/* Generic simple portal title */
body.helpdesk.dc-simple-helpdesk main#page h1,
body.helpdesk.dc-simple-helpdesk main#page .page-title{
  color:#0a3155!important;
  font-weight:850!important;
  letter-spacing:-.02em!important;
}

/* ---------- Service catalog ---------- */
body.helpdesk.dc-service-catalog-page main#page{
  padding-top:4px!important;
}

body.helpdesk.dc-service-catalog-page main#page>.page-header,
body.helpdesk.dc-service-catalog-page main#page>.d-flex:first-child{
  margin-bottom:12px!important;
}

body.helpdesk.dc-service-catalog-page [data-breadcrumbs-container]{
  margin:0!important;
}

body.helpdesk.dc-service-catalog-page [data-breadcrumbs-container] .breadcrumb-item a{
  color:#0a3155!important;
  font-size:22px!important;
  font-weight:850!important;
  text-decoration:none!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-filter-items]{
  min-width:270px!important;
  min-height:38px!important;
  border:1px solid #cfdee9!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#173b59!important;
  box-shadow:none!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items]{
  margin-top:10px!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items]>.col-12,
body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items]>.col-sm-6,
body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items]>.col-md-4,
body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] [class*="col-"]{
  padding-left:6px!important;
  padding-right:6px!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] .card{
  min-height:126px!important;
  margin:6px 0!important;
  border:1px solid #dce6ef!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(5,42,66,.04)!important;
  transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] a.card:hover{
  transform:translateY(-2px);
  border-color:#b8e3e7!important;
  box-shadow:0 10px 26px rgba(5,42,66,.08)!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] .card-body{
  padding:15px 16px!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] .card-title,
body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] h2{
  color:#113754!important;
  font-size:14px!important;
  font-weight:800!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] .card-subtitle,
body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] .text-secondary{
  color:#74899d!important;
  font-size:10px!important;
  line-height:1.45!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] img,
body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] svg{
  max-width:66px!important;
  max-height:66px!important;
}

/* Sort control */
body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-sort-strategy]+.select2-container .select2-selection,
body.helpdesk.dc-service-catalog-page select[name="sort_strategy"]+.select2-container .select2-selection{
  min-height:38px!important;
  border:1px solid #cfdee9!important;
  border-radius:8px!important;
  background:#fff!important;
}

/* All simple/helpdesk cards */
body.helpdesk.dc-simple-helpdesk main#page .card{
  border-color:#dce6ef!important;
  border-radius:10px!important;
}

body.helpdesk.dc-simple-helpdesk main#page .btn-primary{
  background:#10b7c5!important;
  border-color:#10b7c5!important;
  color:#fff!important;
  border-radius:8px!important;
}

body.helpdesk.dc-simple-helpdesk main#page .btn-outline-primary{
  color:#087e89!important;
  border-color:#a9dde1!important;
  border-radius:8px!important;
}

/* Service form renderer inside simple interface */
body.helpdesk.dc-simple-helpdesk .form-renderer{
  max-width:1050px!important;
  margin:0 auto!important;
}

body.helpdesk.dc-simple-helpdesk .form-renderer .card{
  box-shadow:0 3px 12px rgba(5,42,66,.035)!important;
}

@media(max-width:900px){
  body.helpdesk.dc-simple-helpdesk .navbar-brand{
    width:150px!important;
    min-width:150px!important;
  }
  body.helpdesk.dc-simple-helpdesk .navbar-brand::before{
    font-size:17px;
  }
  body.helpdesk.dc-simple-helpdesk .navbar-brand::after{
    top:42px;
  }
}


/* =========================================================
   D-Connect 0.20 - customer portal consistency
========================================================= */

/* Service catalog receives the same branded visual language as Helpdesk home */
body.helpdesk.dc-service-catalog-page .page-wrapper{
  background:
    linear-gradient(180deg,#edf6f9 0,#f4f8fb 250px)!important;
}

body.helpdesk.dc-service-catalog-page main#page{
  max-width:1280px!important;
  margin:0 auto!important;
  padding:24px 18px 44px!important;
}

body.helpdesk.dc-service-catalog-page main#page::before{
  content:"Servicekatalog";
  display:block;
  margin:0 0 4px;
  color:#0a3155;
  font-size:26px;
  line-height:1.1;
  font-weight:850;
  letter-spacing:-.02em;
}

body.helpdesk.dc-service-catalog-page main#page::after{
  content:"Services und Anfragen direkt an D-Connect senden.";
  display:block;
  position:absolute;
  top:58px;
  left:18px;
  color:#72899c;
  font-size:10px;
}

body.helpdesk.dc-service-catalog-page [data-breadcrumbs-container]{
  visibility:hidden!important;
  height:22px!important;
  margin-bottom:12px!important;
}

body.helpdesk.dc-service-catalog-page [data-glpi-service-catalog-items] .card{
  min-height:118px!important;
  border-radius:11px!important;
  box-shadow:0 4px 14px rgba(5,42,66,.045)!important;
}

/* Customer header is always D-Connect, regardless of page route */
body.helpdesk.dc-simple-helpdesk header.topbar,
body.helpdesk.dc-simple-helpdesk header[data-testid="main-header"]{
  background:linear-gradient(90deg,#0a3b59,#0c4c6e)!important;
}

body.helpdesk.dc-simple-helpdesk .navbar-brand::before{
  content:"D-CONNECT"!important;
}

body.helpdesk.dc-simple-helpdesk .navbar-brand::after{
  content:"IT. EINFACH. SICHER."!important;
}

/* Keep the customer menu compact and uniform */
body.helpdesk.dc-simple-helpdesk #navbar-menu .nav-link{
  font-size:10px!important;
  font-weight:700!important;
}

body.helpdesk.dc-simple-helpdesk #navbar-menu .nav-link.active,
body.helpdesk.dc-simple-helpdesk #navbar-menu .nav-item.active > .nav-link{
  background:rgba(13,183,197,.17)!important;
  color:#fff!important;
}

/* =========================================================
   Workspace calendar + native page chrome cleanup
========================================================= */

/* Our workspace already has its own hero: hide GLPI's native breadcrumb/title. */
body.dc-shell-ready main#page:has(.dc-workspace) > .page-header,
body.dc-shell-ready main#page:has(.dc-workspace) > .page-title,
body.dc-shell-ready main#page:has(.dc-workspace) > .breadcrumb,
body.dc-shell-ready main#page:has(.dc-workspace) > nav[aria-label="breadcrumb"]{
  display:none!important;
}

.dc-day-nav{
  display:flex;
  align-items:center;
  gap:5px;
}
.dc-day-nav a{
  min-height:32px;
  min-width:32px;
  display:grid;
  place-items:center;
  padding:6px 9px!important;
  border:1px solid #d8e4ed;
  border-radius:7px;
  background:#f8fbfd;
  color:#24708f!important;
  text-decoration:none!important;
  font-size:9px;
  font-weight:750;
}

.dc-mini-calendar{
  overflow:hidden;
}
.dc-calendar-head{
  display:grid!important;
  grid-template-columns:34px 1fr 34px;
  align-items:center;
  gap:6px;
}
.dc-calendar-head h2{
  text-align:center;
  margin:0!important;
  font-size:13px!important;
}
.dc-calendar-head>a{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid #d8e4ed;
  border-radius:7px;
  background:#f8fbfd;
  color:#315d78!important;
  text-decoration:none!important;
}
.dc-calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:3px;
  padding:0 10px;
}
.dc-calendar-weekdays{
  padding-top:9px;
  padding-bottom:5px;
}
.dc-calendar-weekdays span{
  text-align:center;
  color:#71869a;
  font-size:8px;
  font-weight:800;
}
.dc-calendar-days{
  padding-bottom:9px;
}
.dc-calendar-days a,
.dc-calendar-days span.empty{
  min-height:31px;
}
.dc-calendar-days a{
  display:grid;
  place-items:center;
  border:1px solid transparent;
  border-radius:7px;
  color:#315873!important;
  text-decoration:none!important;
  font-size:9px;
  font-weight:700;
}
.dc-calendar-days a:hover{
  background:#eaf7f9;
  color:#087d88!important;
}
.dc-calendar-days a.today{
  border-color:#a9dde1;
  color:#087d88!important;
}
.dc-calendar-days a.selected{
  background:#10b7c5!important;
  border-color:#10b7c5!important;
  color:#fff!important;
}
.dc-calendar-today{
  display:block;
  margin:0 10px 10px;
  min-height:30px;
  padding:7px 8px;
  border-radius:7px;
  background:#eef8f9;
  color:#087d88!important;
  text-align:center;
  text-decoration:none!important;
  font-size:9px;
  font-weight:750;
}

/* =========================================================
   Authenticated system flyouts
========================================================= */
#dc-app-sidebar .dc-system-nav-item{
  position:relative;
}
#dc-app-sidebar .dc-system-nav-item>.dc-nav-link{
  width:100%;
}
#dc-app-sidebar .dc-system-flyout{
  display:none;
  position:absolute;
  z-index:1400;
  left:190px;
  top:0;
  width:315px;
  max-height:72vh;
  overflow:auto;
  padding:7px;
  border:1px solid #d4e1ea;
  border-radius:10px;
  background:#fff;
  box-shadow:0 18px 50px rgba(4,31,48,.22);
}
#dc-app-sidebar .dc-system-flyout.open{
  display:block;
}
#dc-app-sidebar .dc-system-flyout-head{
  padding:9px 10px;
  border-bottom:1px solid #e7eef4;
  color:#0a3155;
  font-size:10px;
  font-weight:850;
}
#dc-app-sidebar .dc-system-flyout-links{
  display:grid;
  gap:2px;
  padding-top:5px;
}
#dc-app-sidebar .dc-system-flyout-links a{
  min-height:34px;
  padding:7px 9px;
  display:flex;
  align-items:center;
  gap:8px;
  border-radius:7px;
  color:#355872!important;
  text-decoration:none!important;
  font-size:9px;
  font-weight:650;
}
#dc-app-sidebar .dc-system-flyout-links a i{
  width:17px;
  color:#0aa6b3;
  font-size:14px;
}
#dc-app-sidebar .dc-system-flyout-links a:hover{
  background:#eaf7f9;
  color:#087d88!important;
}
#dc-app-sidebar .dc-flyout-arrow{
  margin-left:auto;
  transition:transform .15s ease;
}
#dc-app-sidebar .dc-has-flyout[aria-expanded="true"] .dc-flyout-arrow{
  transform:rotate(90deg);
}

.dc-hide-workspace-native-title{display:none!important}


/* =========================================================
   D-Connect Workspace 0.20.1
========================================================= */

/* ---------- Internal SYSTEM navigation ---------- */
#dc-app-sidebar .dc-system-nav-item{
  position:relative!important;
  width:100%!important;
}
#dc-app-sidebar .dc-system-nav-item>.dc-nav-link{
  width:100%!important;
}
#dc-app-sidebar .dc-system-submenu{
  display:none;
  position:static!important;
  width:auto!important;
  max-height:none!important;
  margin:2px 8px 5px 28px!important;
  padding:3px!important;
  overflow:visible!important;
  border:0!important;
  border-left:1px solid rgba(127,211,219,.22)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#dc-app-sidebar .dc-system-submenu.open{display:block!important}
#dc-app-sidebar .dc-system-submenu .dc-system-flyout-links{
  display:grid!important;
  gap:1px!important;
  padding:0 0 0 5px!important;
}
#dc-app-sidebar .dc-system-submenu .dc-system-flyout-links a{
  min-height:30px!important;
  padding:6px 8px!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  border-radius:6px!important;
  color:rgba(230,244,249,.78)!important;
  background:transparent!important;
  font-size:8.5px!important;
  font-weight:650!important;
  text-decoration:none!important;
}
#dc-app-sidebar .dc-system-submenu .dc-system-flyout-links a i{
  width:15px!important;
  color:#5bc7d0!important;
  font-size:13px!important;
}
#dc-app-sidebar .dc-system-submenu .dc-system-flyout-links a:hover{
  background:rgba(91,199,208,.10)!important;
  color:#fff!important;
}
#dc-app-sidebar .dc-submenu-group{
  margin:8px 7px 3px;
  padding:0 2px 5px;
  border-bottom:1px solid rgba(127,211,219,.13);
  color:#72aabd;
  font-size:7px;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}
#dc-app-sidebar .dc-flyout-arrow{
  margin-left:auto!important;
  transition:transform .15s ease;
}
#dc-app-sidebar .dc-has-flyout[aria-expanded="true"] .dc-flyout-arrow{
  transform:rotate(90deg);
}

/* ---------- Customer requester restrictions ---------- */
body.helpdesk.dc-simple-helpdesk #navbar-menu a[href*="reservation"],
body.helpdesk.dc-simple-helpdesk #navbar-menu a[href*="planning"],
body.helpdesk.dc-simple-helpdesk .tiles-banner a[href*="reservation"],
body.helpdesk.dc-simple-helpdesk .tiles-banner a[href*="planning"]{
  display:none!important;
}

/* ---------- Global search ---------- */
#dc-app-header .dc-global-search{
  position:relative!important;
}
.dc-global-search-results{
  position:absolute;
  z-index:1800;
  top:calc(100% + 8px);
  left:0;
  width:min(650px,72vw);
  max-height:520px;
  overflow:auto;
  padding:6px;
  border:1px solid #d3e0e9;
  border-radius:10px;
  background:#fff;
  box-shadow:0 20px 50px rgba(4,31,48,.22);
}
.dc-global-search-results[hidden]{display:none!important}
.dc-search-result{
  min-height:50px;
  padding:7px 9px;
  display:grid;
  grid-template-columns:30px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  border-radius:7px;
  color:#173b59!important;
  text-decoration:none!important;
}
.dc-search-result:hover{
  background:#eaf7f9!important;
}
.dc-search-result>i{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:#edf7f9;
  color:#0998a4;
  font-size:16px;
}
.dc-search-result>span{
  min-width:0;
  display:flex;
  flex-direction:column;
}
.dc-search-result strong{
  overflow:hidden;
  color:#123956;
  font-size:10px;
  font-weight:800;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dc-search-result small{
  overflow:hidden;
  margin-top:2px;
  color:#758a9e;
  font-size:8px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dc-search-result em{
  color:#7390a2;
  font-size:7px;
  font-style:normal;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.dc-search-empty{
  padding:13px;
  color:#71879a;
  font-size:9px;
  text-align:center;
}

/* ---------- Profile / user menu ---------- */
#dc-app-header .dc-user-slot{
  position:relative;
  min-width:210px;
}
#dc-app-header .dc-user-native{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  width:100%!important;
  margin:0!important;
}
#dc-app-header .dc-user-native .dropdown-toggle,
#dc-app-header .dc-user-native>a,
#dc-app-header .dc-user-native>button{
  min-height:44px!important;
  padding:5px 8px!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#fff!important;
}
#dc-app-header .dc-user-native .avatar{
  width:34px!important;
  height:34px!important;
  border-radius:8px!important;
  box-shadow:0 0 0 2px rgba(255,255,255,.10)!important;
}
#dc-app-header .dc-user-native .dropdown-menu{
  right:0!important;
  left:auto!important;
  min-width:300px!important;
  margin-top:8px!important;
  padding:7px!important;
  border:1px solid #d6e2eb!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 18px 48px rgba(4,31,48,.20)!important;
}
#dc-app-header .dc-user-native .dropdown-menu .dropdown-item{
  min-height:35px!important;
  padding:7px 9px!important;
  border-radius:7px!important;
  color:#355872!important;
  font-size:9px!important;
  font-weight:650!important;
}
#dc-app-header .dc-user-native .dropdown-menu .dropdown-item:hover{
  background:#eaf7f9!important;
  color:#087d88!important;
}

/* ---------- Large planning calendar ---------- */
.dc-hide-native-planning-title{display:none!important}

body.dc-surface-planning main#page{
  padding-top:8px!important;
  background:#f4f8fb!important;
}
body.dc-surface-planning .fc{
  border:1px solid #dce6ef!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 4px 16px rgba(5,42,66,.045)!important;
  overflow:hidden!important;
}
body.dc-surface-planning .fc .fc-toolbar{
  min-height:62px!important;
  margin:0!important;
  padding:11px 14px!important;
  border-bottom:1px solid #e7eef4!important;
  background:linear-gradient(180deg,#fff,#fbfdfe)!important;
}
body.dc-surface-planning .fc .fc-toolbar-title{
  color:#0a3155!important;
  font-size:18px!important;
  font-weight:850!important;
}
body.dc-surface-planning .fc .fc-button{
  min-height:34px!important;
  padding:6px 10px!important;
  border:1px solid #d7e3ec!important;
  border-radius:7px!important;
  background:#f8fbfd!important;
  color:#355872!important;
  box-shadow:none!important;
  font-size:9px!important;
  font-weight:750!important;
}
body.dc-surface-planning .fc .fc-button:hover{
  background:#eaf7f9!important;
  color:#087d88!important;
}
body.dc-surface-planning .fc .fc-button-active,
body.dc-surface-planning .fc .fc-button-primary:not(:disabled).fc-button-active{
  background:#10b7c5!important;
  border-color:#10b7c5!important;
  color:#fff!important;
}
body.dc-surface-planning .fc .fc-col-header-cell{
  border-color:#dfe8ef!important;
  background:#edf4f8!important;
}
body.dc-surface-planning .fc .fc-col-header-cell-cushion{
  padding:9px 4px!important;
  color:#315a75!important;
  font-size:9px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
body.dc-surface-planning .fc .fc-timegrid-axis{
  width:58px!important;
  background:#f8fbfd!important;
}
body.dc-surface-planning .fc .fc-timegrid-slot,
body.dc-surface-planning .fc td,
body.dc-surface-planning .fc th{
  border-color:#e5edf3!important;
}
body.dc-surface-planning .fc .fc-timegrid-slot-label-cushion{
  color:#6d8397!important;
  font-size:8px!important;
}
body.dc-surface-planning .fc .fc-timegrid-col{
  background:#fff!important;
}
body.dc-surface-planning .fc .fc-timegrid-col.fc-day-today{
  background:#f1fbfc!important;
}
body.dc-surface-planning .fc .fc-daygrid-day{
  background:#fff!important;
}
body.dc-surface-planning .fc .fc-daygrid-day.fc-day-today{
  background:#eefafb!important;
}
body.dc-surface-planning .fc .fc-daygrid-day-number{
  padding:6px!important;
  color:#355872!important;
  font-size:9px!important;
  text-decoration:none!important;
}
body.dc-surface-planning .fc .fc-event{
  border:0!important;
  border-left:3px solid #10b7c5!important;
  border-radius:7px!important;
  background:#dff5f7!important;
  color:#123956!important;
  box-shadow:0 2px 6px rgba(5,42,66,.06)!important;
}
body.dc-surface-planning .fc .fc-event:hover{
  filter:brightness(.98);
}
body.dc-surface-planning .fc .fc-event-title,
body.dc-surface-planning .fc .fc-event-time{
  color:#123956!important;
  font-size:8px!important;
  font-weight:700!important;
}
body.dc-surface-planning .fc .fc-now-indicator-line{
  border-color:#e33b31!important;
}
body.dc-surface-planning .fc .fc-now-indicator-arrow{
  border-color:#e33b31!important;
}

/* ---------- Workspace native title cleanup ---------- */
body.dc-workspace-page .page-header,
body.dc-workspace-page main#page > .page-title,
body.dc-workspace-page main#page > .breadcrumb,
body.dc-workspace-page main#page > nav[aria-label="breadcrumb"]{
  display:none!important;
}


/* =========================================================
   0.20.2 - scrollable SYSTEM navigation
   Verwaltung / Werkzeuge / Administration / Konfiguration
========================================================= */

#dc-app-sidebar{
  overflow:hidden!important;
}

#dc-app-sidebar .dc-logo{
  flex:0 0 auto!important;
}

#dc-app-sidebar .dc-nav{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior-y:contain;
  scrollbar-gutter:stable;
  scrollbar-width:thin;
  scrollbar-color:rgba(95,199,208,.55) rgba(255,255,255,.04);
  padding-bottom:34px!important;
}

#dc-app-sidebar .dc-nav::-webkit-scrollbar{
  width:7px;
}
#dc-app-sidebar .dc-nav::-webkit-scrollbar-track{
  background:rgba(255,255,255,.035);
  border-radius:999px;
}
#dc-app-sidebar .dc-nav::-webkit-scrollbar-thumb{
  background:rgba(95,199,208,.52);
  border-radius:999px;
}
#dc-app-sidebar .dc-nav::-webkit-scrollbar-thumb:hover{
  background:rgba(95,199,208,.75);
}

/*
 * When a large system group is open, the support card must not consume
 * a third of the available sidebar height. Hide it temporarily so the
 * complete native GLPI submenu can be reached.
 */
#dc-app-sidebar.dc-system-menu-open .dc-sidebar-foot{
  display:none!important;
}

#dc-app-sidebar .dc-sidebar-foot{
  flex:0 0 auto!important;
}

/* The accordion itself may be arbitrarily long; never cap it. */
#dc-app-sidebar .dc-system-nav-item{
  min-width:0!important;
}

#dc-app-sidebar .dc-system-submenu,
#dc-app-sidebar .dc-system-submenu.open{
  max-height:none!important;
  overflow:visible!important;
}

#dc-app-sidebar .dc-system-submenu .dc-system-flyout-links{
  min-width:0!important;
}

#dc-app-sidebar .dc-system-submenu .dc-system-flyout-links a{
  width:100%!important;
  min-width:0!important;
}

#dc-app-sidebar .dc-system-submenu .dc-system-flyout-links a span{
  min-width:0!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Make it obvious that more content is available further down. */
#dc-app-sidebar.dc-system-menu-open .dc-nav::after{
  content:"";
  display:block;
  height:24px;
}

/* On short displays, keep even more room for system menus. */
@media (max-height:760px){
  #dc-app-sidebar .dc-sidebar-foot{
    padding-top:6px!important;
    padding-bottom:8px!important;
  }

  #dc-app-sidebar:not(.dc-system-menu-open) .dc-support-card{
    padding:10px 8px!important;
  }

  #dc-app-sidebar:not(.dc-system-menu-open) .dc-support-card i{
    font-size:24px!important;
  }

  #dc-app-sidebar:not(.dc-system-menu-open) .dc-sidebar-foot>small{
    display:none!important;
  }
}


/* 0.20.7 native GLPI planning: Termin vs Leistung */
body.dc-surface-planning .fc .fc-event.dc-planning-appointment{
  border-left-color:#168cda!important;
  background:#dcebfa!important;
  color:#123956!important;
}

body.dc-surface-planning .fc .fc-event.dc-planning-work{
  border-left-color:#35a96b!important;
  background:#dcf3e5!important;
  color:#164c32!important;
}

body.dc-surface-planning .fc .fc-event.dc-planning-appointment .fc-event-title,
body.dc-surface-planning .fc .fc-event.dc-planning-appointment .fc-event-time{
  color:#123956!important;
}

body.dc-surface-planning .fc .fc-event.dc-planning-work .fc-event-title,
body.dc-surface-planning .fc .fc-event.dc-planning-work .fc-event-time{
  color:#164c32!important;
}


/* =========================================================
   0.21.1 - D-Connect planning redesign
========================================================= */

body.dc-surface-planning.dc-planning-redesign main#page{
  max-width:none!important;
  padding:12px 14px 28px!important;
}

/* Remove duplicated GLPI title/chrome where possible */
body.dc-surface-planning.dc-planning-redesign .dc-route-page-heading,
body.dc-surface-planning.dc-planning-redesign .page-header,
body.dc-surface-planning.dc-planning-redesign main#page > h1:first-child{
  display:none!important;
}

/* Main planning container */
body.dc-surface-planning.dc-planning-redesign .fc{
  border:1px solid #d8e4ed!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(5,42,66,.05)!important;
}

/* Header */
body.dc-surface-planning.dc-planning-redesign .fc .fc-toolbar{
  min-height:64px!important;
  padding:10px 12px!important;
  display:flex!important;
  align-items:center!important;
  border-bottom:1px solid #e4edf3!important;
  background:#fff!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-toolbar-title{
  color:#0a3155!important;
  font-size:18px!important;
  font-weight:850!important;
  letter-spacing:-.02em!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-button{
  min-height:34px!important;
  padding:6px 10px!important;
  border:1px solid #d5e2eb!important;
  border-radius:7px!important;
  background:#f7fafc!important;
  color:#365b75!important;
  box-shadow:none!important;
  font-size:9px!important;
  font-weight:750!important;
  text-transform:none!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-button:hover{
  border-color:#acdce1!important;
  background:#edf9fa!important;
  color:#087d88!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-button-active,
body.dc-surface-planning.dc-planning-redesign .fc .fc-button-primary:not(:disabled).fc-button-active{
  border-color:#10b7c5!important;
  background:#10b7c5!important;
  color:#fff!important;
}

/* Calendar grid */
body.dc-surface-planning.dc-planning-redesign .fc .fc-scrollgrid{
  border:0!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-col-header-cell{
  background:#f5f9fb!important;
  border-color:#e3ecf2!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-col-header-cell-cushion{
  padding:10px 4px!important;
  color:#315a75!important;
  font-size:9px!important;
  font-weight:850!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-timegrid-axis{
  width:68px!important;
  background:#fafcfd!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-timegrid-slot,
body.dc-surface-planning.dc-planning-redesign .fc td,
body.dc-surface-planning.dc-planning-redesign .fc th{
  border-color:#e6edf3!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-timegrid-slot-label-cushion{
  color:#71879a!important;
  font-size:8px!important;
  font-weight:650!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-timegrid-col.fc-day-today{
  background:#f3fbfc!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-now-indicator-line{
  border-color:#e3483f!important;
  border-width:2px!important;
  z-index:20!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-now-indicator-arrow{
  border-color:#e3483f!important;
  border-top-color:transparent!important;
  border-bottom-color:transparent!important;
}

/* Planning events */
body.dc-surface-planning.dc-planning-redesign .fc .fc-event{
  min-height:34px!important;
  padding:4px 5px!important;
  border:0!important;
  border-left:3px solid #7b91a4!important;
  border-radius:7px!important;
  background:#eef3f7!important;
  box-shadow:0 2px 7px rgba(5,42,66,.05)!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-event.dc-planning-appointment{
  border-left-color:#168cda!important;
  background:#dcebfa!important;
  color:#123956!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-event.dc-planning-work{
  border-left-color:#35a96b!important;
  background:#dcf3e5!important;
  color:#164c32!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-event-title{
  color:inherit!important;
  font-size:8px!important;
  font-weight:750!important;
  line-height:1.3!important;
}

body.dc-surface-planning.dc-planning-redesign .fc .fc-event-time{
  color:inherit!important;
  font-size:7.5px!important;
  font-weight:800!important;
}

.dc-planning-type-badge{
  display:inline-flex;
  align-items:center;
  min-height:15px;
  margin-right:4px;
  padding:1px 4px;
  border-radius:999px;
  font-size:6px!important;
  font-weight:900!important;
  letter-spacing:.06em;
  vertical-align:1px;
}

.dc-planning-type-badge.appointment{
  background:rgba(22,140,218,.14);
  color:#17699e;
}

.dc-planning-type-badge.work{
  background:rgba(53,169,107,.15);
  color:#287c4f;
}

/* Left native planning panel */
body.dc-surface-planning.dc-planning-redesign .dc-planning-filter-panel{
  border:1px solid #d8e4ed!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(5,42,66,.035)!important;
}

/* visually group the native planning UI */
body.dc-surface-planning.dc-planning-redesign input[type="checkbox"]{
  accent-color:#10b7c5;
}

/* responsive */
@media(max-width:1100px){
  body.dc-surface-planning.dc-planning-redesign .fc .fc-toolbar{
    gap:7px!important;
    flex-wrap:wrap!important;
  }
}


/* =========================================================
   0.21.2 - D-Connect Assets redesign
========================================================= */

body.dc-surface-assets{
  background:#f4f8fb!important;
}

body.dc-surface-assets main#page{
  background:#f4f8fb!important;
  padding-top:10px!important;
}

/* remove duplicate generic asset page heading */
body.dc-surface-assets .dc-route-page-heading{
  display:none!important;
}

/* asset dashboard top toolbar */
body.dc-surface-assets main#page .dashboard-toolbar,
body.dc-surface-assets main#page .dashboard-header,
body.dc-surface-assets main#page .dashboard-actions,
body.dc-surface-assets main#page .card-header{
  border-color:#e3ebf1!important;
}

/* asset KPI cards */
body.dc-surface-assets .dc-asset-card,
body.dc-surface-assets .dashboard-card{
  border:1px solid #d9e4ed!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(5,42,66,.035)!important;
  transition:
    transform .14s ease,
    border-color .14s ease,
    box-shadow .14s ease!important;
}

body.dc-surface-assets .dc-asset-card:hover,
body.dc-surface-assets .dashboard-card:hover{
  transform:translateY(-2px);
  border-color:#b9dfe3!important;
  box-shadow:0 9px 24px rgba(5,42,66,.07)!important;
}

/* soften oversized dashboard numbers */
body.dc-surface-assets .dashboard-card .big-number,
body.dc-surface-assets .dashboard-card .display-1,
body.dc-surface-assets .dashboard-card .display-2,
body.dc-surface-assets .dashboard-card .display-3,
body.dc-surface-assets .dashboard-card .display-4,
body.dc-surface-assets .dashboard-card .display-5,
body.dc-surface-assets .dashboard-card [class*="fs-"]{
  color:#0d3e5e!important;
}

/* generic asset page cards/forms */
body.dc-surface-assets main#page .card{
  border:1px solid #d9e4ed!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(5,42,66,.03)!important;
}

body.dc-surface-assets main#page .card-header{
  background:#fbfdfe!important;
  color:#153e5b!important;
  font-weight:800!important;
}

/* asset list search panel */
body.dc-surface-assets .dc-asset-search,
body.dc-surface-assets .search-container,
body.dc-surface-assets .search_page{
  margin-bottom:10px!important;
  padding:10px 12px!important;
  border:1px solid #d9e4ed!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(5,42,66,.025)!important;
}

/* inputs */
body.dc-surface-assets .form-control,
body.dc-surface-assets .form-select,
body.dc-surface-assets .select2-selection{
  min-height:36px!important;
  border:1px solid #cfdee9!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#173b59!important;
  box-shadow:none!important;
}

body.dc-surface-assets .form-control:focus,
body.dc-surface-assets .form-select:focus{
  border-color:#86d2d8!important;
  box-shadow:0 0 0 3px rgba(16,183,197,.08)!important;
}

/* tables */
body.dc-surface-assets .dc-asset-table,
body.dc-surface-assets main#page table{
  border-collapse:separate!important;
  border-spacing:0!important;
  overflow:hidden;
  border:1px solid #dde7ee!important;
  border-radius:9px!important;
  background:#fff!important;
}

body.dc-surface-assets main#page table thead th{
  padding:9px 10px!important;
  border-color:#e4edf3!important;
  background:#edf4f8!important;
  color:#365a74!important;
  font-size:8.5px!important;
  font-weight:850!important;
  text-transform:uppercase;
  letter-spacing:.025em;
}

body.dc-surface-assets main#page table tbody td{
  padding:9px 10px!important;
  border-color:#e9eff4!important;
  color:#294e68!important;
  font-size:9px!important;
}

body.dc-surface-assets main#page table tbody tr:hover td{
  background:#f7fbfc!important;
}

/* standard buttons */
body.dc-surface-assets .btn-primary,
body.dc-surface-assets .btn-success{
  border-color:#10b7c5!important;
  border-radius:8px!important;
  background:#10b7c5!important;
  color:#fff!important;
  box-shadow:none!important;
}

body.dc-surface-assets .btn-primary:hover,
body.dc-surface-assets .btn-success:hover{
  border-color:#079daa!important;
  background:#079daa!important;
}

body.dc-surface-assets .btn-outline-primary{
  border-color:#b9dfe3!important;
  border-radius:8px!important;
  color:#087d88!important;
}

/* Asset detail title / tabs */
body.dc-surface-assets main#page .nav-tabs,
body.dc-surface-assets main#page .nav-pills{
  gap:4px;
  padding:5px;
  border:1px solid #dce6ef!important;
  border-radius:9px!important;
  background:#fff!important;
}

body.dc-surface-assets main#page .nav-tabs .nav-link,
body.dc-surface-assets main#page .nav-pills .nav-link{
  border-radius:7px!important;
  color:#45657b!important;
  font-size:8.5px!important;
  font-weight:750!important;
}

body.dc-surface-assets main#page .nav-tabs .nav-link.active,
body.dc-surface-assets main#page .nav-pills .nav-link.active{
  border-color:#10b7c5!important;
  background:#10b7c5!important;
  color:#fff!important;
}

/* dashboard asset grid more compact and consistent */
body.dc-surface-assets .dashboard-grid,
body.dc-surface-assets .grid-stack{
  gap:8px!important;
}

body.dc-surface-assets .grid-stack-item-content{
  border-radius:10px!important;
}

/* chart surfaces */
body.dc-surface-assets canvas,
body.dc-surface-assets svg{
  max-width:100%;
}

body.dc-surface-assets .chart-container,
body.dc-surface-assets .dashboard-chart{
  border-radius:9px!important;
  background:#fff!important;
}

/* status chips inside asset forms/lists */
body.dc-surface-assets .badge{
  border-radius:999px!important;
  font-size:7.5px!important;
  font-weight:750!important;
}

/* avoid overly tall standard cards */
body.dc-surface-assets .dashboard-card{
  min-height:130px!important;
}

/* better asset detail two-column layout */
@media(min-width:1200px){
  body.dc-surface-assets .tab-pane .row > [class*="col-"]{
    min-width:0;
  }
}

@media(max-width:900px){
  body.dc-surface-assets main#page{
    padding-left:8px!important;
    padding-right:8px!important;
  }

  body.dc-surface-assets .dashboard-card{
    min-height:110px!important;
  }
}


/* =========================================================
   0.21.3 - Robust Assets + Planning redesign
========================================================= */

/* ---------- ASSETS DASHBOARD ---------- */
body.dc-assets-redesign main#page{
  padding:12px 16px 26px!important;
  background:#f4f8fb!important;
}

body.dc-assets-redesign .dc-route-page-heading{
  display:none!important;
}

/* Native dashboard shell */
body.dc-assets-redesign .dashboard,
body.dc-assets-redesign [class*="dashboard"],
body.dc-assets-redesign .grid-stack{
  background:transparent!important;
}

/* Real KPI tiles detected by JS */
body.dc-assets-redesign .dc-asset-kpi,
body.dc-assets-redesign .dc-asset-widget{
  border:1px solid #dbe6ee!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(5,42,66,.04)!important;
}

body.dc-assets-redesign .dc-asset-kpi{
  position:relative!important;
  overflow:hidden!important;
  min-height:148px!important;
  padding:18px 16px!important;
}

/* Neutralize the legacy rainbow palette without hiding semantics */
body.dc-assets-redesign .dc-asset-kpi *{
  text-shadow:none!important;
}

body.dc-assets-redesign .dc-asset-kpi > *,
body.dc-assets-redesign .dc-asset-kpi div,
body.dc-assets-redesign .dc-asset-kpi span,
body.dc-assets-redesign .dc-asset-kpi p{
  color:#173b59!important;
}

body.dc-assets-redesign .dc-asset-kpi i,
body.dc-assets-redesign .dc-asset-kpi svg{
  color:#0aa6b3!important;
  fill:currentColor;
}

/* soften gigantic numbers */
body.dc-assets-redesign .dc-asset-kpi{
  font-family:inherit!important;
}
body.dc-assets-redesign .dc-asset-kpi > :first-child,
body.dc-assets-redesign .dc-asset-kpi [style*="font-size"]{
  line-height:1.05!important;
}

/* dashboard widget titles */
body.dc-assets-redesign .dc-asset-widget{
  overflow:hidden!important;
}
body.dc-assets-redesign .dc-asset-widget [class*="title"],
body.dc-assets-redesign .dc-asset-widget h1,
body.dc-assets-redesign .dc-asset-widget h2,
body.dc-assets-redesign .dc-asset-widget h3,
body.dc-assets-redesign .dc-asset-widget h4{
  color:#0a3155!important;
  font-weight:800!important;
}

/* lists / forms within asset pages */
body.dc-assets-redesign .dc-asset-table,
body.dc-assets-redesign main#page table{
  border:1px solid #dce6ee!important;
  border-radius:9px!important;
  background:#fff!important;
}

body.dc-assets-redesign main#page table thead th{
  background:#edf4f8!important;
  color:#365a74!important;
  border-color:#e2ebf1!important;
  font-size:8.5px!important;
  font-weight:850!important;
}

body.dc-assets-redesign main#page table tbody td{
  border-color:#e8eef3!important;
  color:#294e68!important;
  font-size:9px!important;
}

body.dc-assets-redesign main#page table tbody tr:hover td{
  background:#f6fbfc!important;
}

/* ---------- BIG PLANNING CALENDAR ---------- */
body.dc-planning-redesign-v2 main#page{
  padding:10px 14px 26px!important;
  background:#f4f8fb!important;
}

body.dc-planning-redesign-v2 .dc-route-page-heading{
  display:none!important;
}

/* outer native GLPI planning wrapper */
body.dc-planning-redesign-v2 .dc-fullcalendar{
  overflow:hidden!important;
  border:1px solid #d9e5ed!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(5,42,66,.045)!important;
}

body.dc-planning-redesign-v2 .dc-fullcalendar .fc-toolbar{
  min-height:64px!important;
  margin:0!important;
  padding:10px 12px!important;
  background:#fff!important;
  border-bottom:1px solid #e4edf3!important;
}

body.dc-planning-redesign-v2 .dc-fullcalendar .fc-toolbar-title{
  color:#0a3155!important;
  font-size:18px!important;
  font-weight:850!important;
  letter-spacing:-.02em!important;
}

body.dc-planning-redesign-v2 .dc-fullcalendar .fc-button{
  min-height:34px!important;
  padding:6px 10px!important;
  border:1px solid #d5e2eb!important;
  border-radius:7px!important;
  background:#f8fbfd!important;
  color:#365a74!important;
  box-shadow:none!important;
  font-size:9px!important;
  font-weight:750!important;
  text-transform:none!important;
}

body.dc-planning-redesign-v2 .dc-fullcalendar .fc-button:hover{
  border-color:#a9dce1!important;
  background:#edf9fa!important;
  color:#087d88!important;
}

body.dc-planning-redesign-v2 .dc-fullcalendar .fc-button-active{
  border-color:#10b7c5!important;
  background:#10b7c5!important;
  color:#fff!important;
}

/* day headers */
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-col-header-cell{
  background:#f4f8fb!important;
  border-color:#e3ebf1!important;
}
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-col-header-cell-cushion{
  padding:10px 5px!important;
  color:#2c5671!important;
  font-size:9px!important;
  font-weight:850!important;
  text-decoration:none!important;
}

/* time grid */
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-timegrid-axis{
  width:66px!important;
  background:#fafcfd!important;
}
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-timegrid-slot,
body.dc-planning-redesign-v2 .dc-fullcalendar td,
body.dc-planning-redesign-v2 .dc-fullcalendar th{
  border-color:#e6edf3!important;
}
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-timegrid-slot-label-cushion{
  color:#71879a!important;
  font-size:8px!important;
  font-weight:700!important;
}
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-day-today{
  background:#f2fbfc!important;
}

/* current-time indicator */
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-now-indicator-line{
  border-color:#e3483f!important;
  border-width:2px!important;
  z-index:25!important;
}
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-now-indicator-arrow{
  border-right-color:#e3483f!important;
}

/* events */
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-event{
  min-height:34px!important;
  padding:4px 5px!important;
  overflow:hidden!important;
  border:0!important;
  border-left:3px solid #7590a5!important;
  border-radius:7px!important;
  background:#edf3f7!important;
  color:#173b59!important;
  box-shadow:0 2px 7px rgba(5,42,66,.05)!important;
}

body.dc-planning-redesign-v2 .dc-fullcalendar .fc-event.dc-planning-appointment{
  border-left-color:#168cda!important;
  background:#dcecfb!important;
  color:#123956!important;
}
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-event.dc-planning-work{
  border-left-color:#35a96b!important;
  background:#ddf3e6!important;
  color:#164c32!important;
}

body.dc-planning-redesign-v2 .dc-fullcalendar .fc-event-title{
  color:inherit!important;
  font-size:8px!important;
  font-weight:750!important;
}
body.dc-planning-redesign-v2 .dc-fullcalendar .fc-event-time{
  color:inherit!important;
  font-size:7.5px!important;
  font-weight:850!important;
}

/* left-side native filter/calendar list */
body.dc-planning-redesign-v2 .dc-planning-sidebar-v2{
  overflow:hidden!important;
  border:1px solid #d9e5ed!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(5,42,66,.035)!important;
}

body.dc-planning-redesign-v2 input[type="checkbox"]{
  accent-color:#10b7c5!important;
}

/* make native planning buttons visually coherent even outside FullCalendar */
body.dc-planning-redesign-v2 main#page .btn{
  border-radius:7px!important;
  box-shadow:none!important;
}

@media(max-width:1100px){
  body.dc-planning-redesign-v2 .dc-fullcalendar .fc-toolbar{
    flex-wrap:wrap!important;
    gap:7px!important;
  }
}


/* 0.21.4 runtime surface markers */
body.dc-assets-runtime main#page,
body.dc-planning-runtime main#page{
  background:#f4f8fb!important;
}

body.dc-assets-runtime .dc-route-page-heading,
body.dc-planning-runtime .dc-route-page-heading{
  display:none!important;
}


/* =========================================================
   0.21.6 - Planning left panel + view tabs
========================================================= */

body.dc-planning-fixed-0216 .dc-planning-left-panel-0216{
  color:#294e68!important;
}

body.dc-planning-fixed-0216 .dc-planning-left-panel-0216 input[type="checkbox"]{
  accent-color:#10b7c5!important;
}

body.dc-planning-fixed-0216 .dc-planning-left-panel-0216 .card,
body.dc-planning-fixed-0216 .dc-planning-left-panel-0216 [class*="card"]{
  border-color:#e1eaf0!important;
  box-shadow:none!important;
}

body.dc-planning-fixed-0216 .dc-planning-left-panel-0216 h1,
body.dc-planning-fixed-0216 .dc-planning-left-panel-0216 h2,
body.dc-planning-fixed-0216 .dc-planning-left-panel-0216 h3,
body.dc-planning-fixed-0216 .dc-planning-left-panel-0216 h4{
  color:#123956!important;
  font-weight:850!important;
}

body.dc-planning-fixed-0216 .dc-planning-layout-0216{
  box-sizing:border-box!important;
}

body.dc-planning-fixed-0216 .dc-planning-calendar-side-0216{
  overflow:hidden!important;
}

body.dc-planning-fixed-0216 .fc .fc-button-group{
  box-shadow:none!important;
}

body.dc-planning-fixed-0216 .fc .fc-button-group>.fc-button{
  margin:0!important;
  border-radius:7px!important;
}

body.dc-planning-fixed-0216 .fc .fc-button-group>.fc-button:not(:first-child){
  margin-left:0!important;
}

@media(max-width:1250px){
  body.dc-planning-fixed-0216 .dc-planning-layout-0216{
    grid-template-columns:250px minmax(0,1fr)!important;
  }

  body.dc-planning-fixed-0216 .dc-planning-left-panel-0216{
    width:250px!important;
    min-width:250px!important;
    max-width:250px!important;
  }

  body.dc-planning-fixed-0216 .fc .fc-toolbar{
    grid-template-columns:1fr!important;
  }

  body.dc-planning-fixed-0216 .fc .fc-toolbar>*{
    justify-self:center!important;
  }
}


/* =========================================================
   0.21.7 - Planning shell with native GLPI filters
========================================================= */

body.dc-planning-mounted-0217 #dcPlanningShell0217{
  position:relative;
  width:100%;
  display:grid!important;
  grid-template-columns:292px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
}

body.dc-planning-mounted-0217 #dcPlanningShell0217.filters-collapsed{
  grid-template-columns:0 minmax(0,1fr)!important;
}

body.dc-planning-mounted-0217 .dc-native-planning-filters-0217{
  box-sizing:border-box!important;
  padding:0!important;
  border:1px solid #d8e4ed!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(5,42,66,.035)!important;
  color:#294e68!important;
  transition:
    width .16s ease,
    min-width .16s ease,
    opacity .16s ease!important;
}

body.dc-planning-mounted-0217 #dcPlanningShell0217.filters-collapsed .dc-native-planning-filters-0217{
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  opacity:0!important;
  overflow:hidden!important;
  border:0!important;
  pointer-events:none!important;
}

body.dc-planning-mounted-0217 .dc-native-planning-filters-0217 input[type="checkbox"]{
  accent-color:#10b7c5!important;
}

body.dc-planning-mounted-0217 .dc-planning-calendar-side-0217{
  min-width:0!important;
  width:100%!important;
  max-width:none!important;
}

body.dc-planning-mounted-0217 .dc-planning-filter-toggle-0217{
  position:absolute;
  z-index:5;
  left:6px;
  top:-42px;
  min-height:32px;
  padding:6px 9px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid #d5e2eb;
  border-radius:7px;
  background:#fff;
  color:#355a74;
  font-size:8.5px;
  font-weight:800;
  cursor:pointer;
}

body.dc-planning-mounted-0217 .dc-planning-filter-toggle-0217:hover,
body.dc-planning-mounted-0217 .dc-planning-filter-toggle-0217.active{
  border-color:#a7dce1;
  background:#edf9fa;
  color:#087d88;
}

body.dc-planning-mounted-0217 .dc-fc-toolbar-0217{
  display:grid!important;
  grid-template-columns:minmax(170px,1fr) auto minmax(410px,1fr)!important;
  align-items:center!important;
  gap:10px!important;
}

body.dc-planning-mounted-0217 .dc-fc-toolbar-0217>div:first-child{
  justify-self:start!important;
}

body.dc-planning-mounted-0217 .dc-fc-toolbar-0217>div:nth-child(2){
  justify-self:center!important;
}

body.dc-planning-mounted-0217 .dc-fc-toolbar-0217>div:last-child{
  justify-self:end!important;
}

body.dc-planning-mounted-0217 .fc .fc-button-group{
  display:inline-flex!important;
  gap:5px!important;
}

body.dc-planning-mounted-0217 .fc .fc-button-group>.fc-button{
  margin:0!important;
  border-radius:7px!important;
}

.dc-planning-panel-notice{
  margin:0 0 8px;
  padding:9px 11px;
  display:flex;
  align-items:center;
  gap:9px;
  border:1px solid #f1d69a;
  border-radius:8px;
  background:#fff9e8;
  color:#795c1d;
}

.dc-planning-panel-notice>i{
  font-size:18px;
}

.dc-planning-panel-notice>span{
  display:flex;
  flex-direction:column;
  gap:2px;
}

.dc-planning-panel-notice strong{
  font-size:9px;
}

.dc-planning-panel-notice small{
  font-size:8px;
  color:#92773e;
}

@media(max-width:1250px){
  body.dc-planning-mounted-0217 #dcPlanningShell0217{
    grid-template-columns:250px minmax(0,1fr)!important;
  }

  body.dc-planning-mounted-0217 .dc-native-planning-filters-0217{
    width:250px!important;
    min-width:250px!important;
    max-width:250px!important;
  }

  body.dc-planning-mounted-0217 .dc-fc-toolbar-0217{
    grid-template-columns:1fr!important;
  }

  body.dc-planning-mounted-0217 .dc-fc-toolbar-0217>div{
    justify-self:center!important;
  }
}

@media(max-width:900px){
  body.dc-planning-mounted-0217 #dcPlanningShell0217{
    grid-template-columns:1fr!important;
  }

  body.dc-planning-mounted-0217 .dc-native-planning-filters-0217{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}


/* =========================================================
   0.21.8 - Planning visual reset
   Keep native GLPI structure/functionality, only restyle it.
========================================================= */

/* Neutral page surface */
body.dc-planning-clean-0218 main#page{
  background:#f4f8fb!important;
}

body.dc-planning-clean-0218 .fc{
  overflow:hidden!important;
  border:1px solid #d8e4ed!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(5,42,66,.045)!important;
}

/* ---------- Native left filter / calendars ---------- */
body.dc-planning-clean-0218 .dc-native-planning-panel-0218{
  background:#fff!important;
  border:1px solid #d8e4ed!important;
  border-radius:10px!important;
  box-shadow:0 4px 14px rgba(5,42,66,.035)!important;
  color:#294e68!important;
}

/* Remove browser/list bullets that appeared after the previous patch. */
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 ul,
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 ol{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

body.dc-planning-clean-0218 .dc-native-planning-panel-0218 li{
  list-style:none!important;
}

/* Red GLPI checks -> D-Connect teal without changing checked state. */
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  margin:0 7px 0 0!important;
  accent-color:#10b7c5!important;
}

/* Bootstrap custom checks */
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 .form-check-input:checked{
  background-color:#10b7c5!important;
  border-color:#10b7c5!important;
}

body.dc-planning-clean-0218 .dc-native-planning-panel-0218 .form-check-input{
  border-color:#bdd0dc!important;
  box-shadow:none!important;
}

body.dc-planning-clean-0218 .dc-native-planning-panel-0218 .form-check{
  min-height:34px!important;
  margin:0!important;
  padding:6px 8px 6px 30px!important;
  display:flex!important;
  align-items:center!important;
  border-bottom:1px solid #edf2f5!important;
}

body.dc-planning-clean-0218 .dc-native-planning-panel-0218 .form-check-label{
  color:#355a74!important;
  font-size:9px!important;
  font-weight:650!important;
}

/* Native section headings */
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 h1,
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 h2,
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 h3,
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 h4,
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 .card-header{
  padding:8px 10px!important;
  margin:0!important;
  border:0!important;
  border-bottom:1px solid #e2ebf1!important;
  background:#edf4f8!important;
  color:#123956!important;
  font-size:10px!important;
  font-weight:850!important;
}

/* Keep calendar source colors as small semantic chips, not huge boxes. */
body.dc-planning-clean-0218 .dc-native-planning-panel-0218 input[type="color"]{
  width:28px!important;
  height:18px!important;
  padding:1px!important;
  border:1px solid #cbd9e2!important;
  border-radius:4px!important;
  background:#fff!important;
}

/* ---------- FullCalendar toolbar ---------- */
body.dc-planning-clean-0218 .fc .fc-toolbar{
  min-height:62px!important;
  margin:0!important;
  padding:10px 12px!important;
  border-bottom:1px solid #e3edf3!important;
  background:#fff!important;
}

body.dc-planning-clean-0218 .fc .fc-toolbar-title{
  color:#0a3155!important;
  font-size:18px!important;
  font-weight:850!important;
}

/* ALL view/navigation buttons: white/teal, no slate/red */
body.dc-planning-clean-0218 .fc .fc-button,
body.dc-planning-clean-0218 .fc .fc-button-primary{
  min-height:34px!important;
  height:34px!important;
  padding:0 10px!important;
  border:1px solid #cfe0e9!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#365b75!important;
  box-shadow:none!important;
  font-size:8.5px!important;
  font-weight:750!important;
  text-transform:none!important;
}

body.dc-planning-clean-0218 .fc .fc-button:hover,
body.dc-planning-clean-0218 .fc .fc-button-primary:hover{
  border-color:#9ed8de!important;
  background:#edf9fa!important;
  color:#087d88!important;
}

/* Active view: ALWAYS teal */
body.dc-planning-clean-0218 .fc .fc-button-active,
body.dc-planning-clean-0218 .fc .fc-button-primary:not(:disabled).fc-button-active,
body.dc-planning-clean-0218 .fc .fc-button-primary:not(:disabled):active{
  border-color:#10b7c5!important;
  background:#10b7c5!important;
  color:#fff!important;
}

body.dc-planning-clean-0218 .fc .fc-button-group{
  display:inline-flex!important;
  gap:5px!important;
}

body.dc-planning-clean-0218 .fc .fc-button-group>.fc-button{
  margin:0!important;
  border-radius:7px!important;
}

/* ---------- Calendar grid ---------- */
body.dc-planning-clean-0218 .fc .fc-col-header-cell{
  background:#f4f8fb!important;
  border-color:#e2ebf1!important;
}

body.dc-planning-clean-0218 .fc .fc-col-header-cell-cushion{
  padding:8px 4px!important;
  color:#315a75!important;
  font-size:9px!important;
  font-weight:850!important;
  text-decoration:none!important;
}

body.dc-planning-clean-0218 .fc .fc-timegrid-axis{
  background:#fafcfd!important;
}

body.dc-planning-clean-0218 .fc .fc-timegrid-slot,
body.dc-planning-clean-0218 .fc td,
body.dc-planning-clean-0218 .fc th{
  border-color:#e6edf3!important;
}

body.dc-planning-clean-0218 .fc .fc-timegrid-slot-label-cushion{
  color:#71879a!important;
  font-size:8px!important;
  font-weight:700!important;
}

body.dc-planning-clean-0218 .fc .fc-day-today{
  background:#f1fbfc!important;
}

body.dc-planning-clean-0218 .fc .fc-now-indicator-line{
  border-color:#e3483f!important;
  border-width:2px!important;
}

/* Events get softer D-Connect cards. Keep source color only as slim border. */
body.dc-planning-clean-0218 .fc .fc-event{
  padding:4px 5px!important;
  border-top:1px solid #d5e2ea!important;
  border-right:1px solid #d5e2ea!important;
  border-bottom:1px solid #d5e2ea!important;
  border-radius:7px!important;
  background:#f7fafc!important;
  color:#173b59!important;
  box-shadow:0 2px 6px rgba(5,42,66,.04)!important;
}

body.dc-planning-clean-0218 .fc .fc-event-title,
body.dc-planning-clean-0218 .fc .fc-event-time{
  color:#173b59!important;
}

@media(max-width:1100px){
  body.dc-planning-clean-0218 .fc .fc-toolbar{
    flex-wrap:wrap!important;
    gap:7px!important;
  }
}


/* ===== SOURCE: public/css/url-router.css ===== */
/* =========================================================
   D-Connect URL Router 0.19
   Applies the D-Connect surface system to every standard
   GLPI /front/*.php route discovered in the supplied install.
========================================================= */

body.dc-url-routed main#page{
  background:#f4f8fb!important;
}

.dc-route-page-heading{
  margin:0 0 12px;
  padding:14px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#fff;
  border:1px solid #dce6ef;
  border-radius:11px;
  box-shadow:0 4px 14px rgba(5,42,66,.04);
}
.dc-route-page-heading span{
  color:#0ba8b5;
  font-size:8px;
  font-weight:850;
  letter-spacing:.13em;
}
.dc-route-page-heading h1{
  margin:3px 0 0!important;
  color:#0a3155!important;
  font-size:24px!important;
  font-weight:850!important;
}

body.dc-url-routed .dc-route-card{
  border:1px solid #dce6ef!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(5,42,66,.035)!important;
}
body.dc-url-routed .dc-route-card>.card-header{
  background:#fbfdfe!important;
  border-bottom:1px solid #e8eff4!important;
}

body.dc-url-routed .dc-route-table{
  font-size:10px!important;
  border-color:#e4edf3!important;
}
body.dc-url-routed .dc-route-table thead th{
  background:#edf4f8!important;
  color:#355a75!important;
  font-size:9px!important;
  font-weight:800!important;
}
body.dc-url-routed .dc-route-table tbody td{
  border-color:#e8eff4!important;
}

body.dc-url-routed .dc-route-tabs{
  gap:5px;
  padding:5px 7px;
  border:1px solid #dce6ef!important;
  border-radius:9px!important;
  background:#fff!important;
}
body.dc-url-routed .dc-route-tabs .nav-link{
  border-radius:7px!important;
  color:#45647b!important;
  font-size:9px!important;
  font-weight:750!important;
}
body.dc-url-routed .dc-route-tabs .nav-link.active{
  background:#10b7c5!important;
  color:#fff!important;
  border-color:#10b7c5!important;
}

body.dc-url-routed .dc-route-search{
  padding:12px!important;
  border:1px solid #dce6ef!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(5,42,66,.03)!important;
}

body.dc-url-routed .form-control,
body.dc-url-routed .form-select,
body.dc-url-routed .select2-selection{
  min-height:38px!important;
  border:1px solid #cfdee9!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#173b59!important;
  box-shadow:none!important;
}

body.dc-url-routed .btn-primary{
  background:#10b7c5!important;
  border-color:#10b7c5!important;
  color:#fff!important;
  border-radius:8px!important;
}

/* family specific small accents */
body.dc-url-family-config .dc-route-page-heading span{color:#526b80}
body.dc-url-family-user .dc-route-page-heading span{color:#2e83c5}
body.dc-url-family-entity .dc-route-page-heading span{color:#0098a6}
body.dc-url-family-rule .dc-route-page-heading span{color:#7d62c4}
body.dc-url-family-asset .dc-route-page-heading span{color:#0b9da9}
body.dc-url-family-project .dc-route-page-heading span{color:#5179b7}
body.dc-url-family-knowledge .dc-route-page-heading span{color:#168b7b}


/* ===== SOURCE: public/css/auth-helpdesk-02410.css ===== */
/* =========================================================
   D-Connect Login + Native Simple Helpdesk 0.24.10
   IMPORTANT: loaded after surface-system.css so this file owns
   the final anonymous/login presentation.
========================================================= */

/* =========================================================
   LOGIN
========================================================= */
body.welcome-anonymous.dc-login-02410{
  --dcl-navy:#0b334b;
  --dcl-navy-deep:#07283d;
  --dcl-teal:#36b8c6;
  --dcl-text:#173b59;
  --dcl-muted:#6f8798;
  min-height:100vh!important;
  background:
    radial-gradient(circle at 17% 16%,rgba(54,184,198,.18),transparent 30rem),
    linear-gradient(133deg,#082f48 0%,#124e6f 46%,#eef5f8 46%,#f7fafc 100%)!important;
}

body.welcome-anonymous.dc-login-02410 main#page,
body.welcome-anonymous.dc-login-02410 main#page.page-anonymous{
  min-height:100vh!important;
  background:transparent!important;
}

body.welcome-anonymous.dc-login-02410 main#page>.flex-fill,
body.welcome-anonymous.dc-login-02410 main#page.page-anonymous>.flex-fill{
  min-height:100vh!important;
  margin:0!important;
  padding:34px 22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

body.welcome-anonymous.dc-login-02410 .container-tight{
  position:relative!important;
  width:min(1080px,94vw)!important;
  max-width:1080px!important;
  margin:0 auto!important;
  padding:0!important;
}

body.welcome-anonymous.dc-login-02410 .container-tight::before,
body.welcome-anonymous.dc-login-02410 .container-tight::after,
body.welcome-anonymous.dc-login-02410 .container-tight>.text-center:first-child{
  content:none!important;
  display:none!important;
}

body.welcome-anonymous.dc-login-02410 .main-content-card{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  overflow:hidden!important;
  border:1px solid rgba(205,221,231,.95)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 32px 90px rgba(3,31,47,.24)!important;
}

body.welcome-anonymous.dc-login-02410 .main-content-card>.card-header{
  display:none!important;
}

body.welcome-anonymous.dc-login-02410 .main-content-card>.card-body{
  width:100%!important;
  min-height:0!important;
  padding:0!important;
  display:block!important;
  background:#fff!important;
}

/* GLPI already has a form with a rich text area + login row. We use that
   structure instead of nesting a second grid around it. */
body.welcome-anonymous.dc-login-02410 .dc-login-02410-form{
  width:100%!important;
  min-height:620px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr)!important;
  align-items:stretch!important;
  background:#fff!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand,
body.welcome-anonymous.dc-login-02410 .rich_text_container.dc-login-02410-brand{
  grid-column:1!important;
  grid-row:1!important;
  width:auto!important;
  min-width:0!important;
  min-height:620px!important;
  margin:0!important;
  padding:50px 52px 42px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  overflow:hidden!important;
  text-align:left!important;
  color:#fff!important;
  background:
    radial-gradient(circle at 76% 12%,rgba(71,205,217,.20),transparent 22rem),
    linear-gradient(155deg,var(--dcl-navy),var(--dcl-navy-deep))!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand *{
  box-sizing:border-box!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-logo{
  flex:0 0 auto!important;
  width:245px!important;
  height:82px!important;
  margin:0 0 44px!important;
  background:url("../img/dconnect-10-years-dark.png") no-repeat left center/contain!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-kicker{
  margin:0 0 10px!important;
  color:#55cbd6!important;
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:900!important;
  letter-spacing:.14em!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand h1{
  margin:0 0 16px!important;
  color:#fff!important;
  font-size:38px!important;
  line-height:1.07!important;
  font-weight:900!important;
  letter-spacing:-.035em!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-lead{
  max-width:440px!important;
  margin:0 0 25px!important;
  color:#c8dde6!important;
  font-size:14px!important;
  line-height:1.65!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-features{
  display:grid!important;
  gap:11px!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-features span{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  color:#eaf5f8!important;
  font-size:13px!important;
  line-height:1.3!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-features i{
  flex:0 0 29px!important;
  width:29px!important;
  height:29px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(88,205,216,.34)!important;
  border-radius:8px!important;
  background:rgba(54,184,198,.10)!important;
  color:#5bd0d9!important;
  font-size:15px!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-contact{
  width:100%!important;
  margin-top:auto!important;
  padding-top:24px!important;
  display:grid!important;
  gap:2px!important;
  border-top:1px solid rgba(255,255,255,.11)!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-contact small{
  color:#88aebd!important;
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.09em!important;
}
body.welcome-anonymous.dc-login-02410 .dc-login-02410-contact strong{
  color:#fff!important;
  font-size:17px!important;
}
body.welcome-anonymous.dc-login-02410 .dc-login-02410-contact span{
  color:#bdd4de!important;
  font-size:12px!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-loginrow,
body.welcome-anonymous.dc-login-02410 .dc-login-02410-form>.row{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  min-height:620px!important;
  margin:0!important;
  padding:54px 58px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fff!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-logincol,
body.welcome-anonymous.dc-login-02410 .dc-login-02410-loginrow>[class*="col-"],
body.welcome-anonymous.dc-login-02410 .dc-login-02410-form>.row>[class*="col-"]{
  width:100%!important;
  max-width:390px!important;
  flex:0 0 100%!important;
  margin:0 auto!important;
  padding:0!important;
}

body.welcome-anonymous.dc-login-02410 .card-header{
  display:block!important;
  margin:0 0 28px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-heading,
body.welcome-anonymous.dc-login-02410 .card-header h2{
  margin:0!important;
  color:var(--dcl-text)!important;
  font-size:31px!important;
  line-height:1.12!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
  text-align:left!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-heading::before,
body.welcome-anonymous.dc-login-02410 .card-header h2::before{
  content:"SICHERER ZUGANG"!important;
  display:block!important;
  margin-bottom:9px!important;
  color:#159ba7!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.13em!important;
}

body.welcome-anonymous.dc-login-02410 .form-label,
body.welcome-anonymous.dc-login-02410 label{
  color:#355a74!important;
  font-size:12px!important;
  font-weight:800!important;
}

body.welcome-anonymous.dc-login-02410 .form-control,
body.welcome-anonymous.dc-login-02410 .form-select,
body.welcome-anonymous.dc-login-02410 .select2-selection,
body.welcome-anonymous.dc-login-02410 input[type="text"],
body.welcome-anonymous.dc-login-02410 input[type="email"],
body.welcome-anonymous.dc-login-02410 input[type="password"]{
  width:100%!important;
  min-height:48px!important;
  border:1px solid #cfdee8!important;
  border-radius:10px!important;
  background:#fbfdfe!important;
  color:#173b59!important;
  font-size:14px!important;
  box-shadow:none!important;
}

body.welcome-anonymous.dc-login-02410 .form-control:focus,
body.welcome-anonymous.dc-login-02410 input:focus{
  border-color:#45bdc8!important;
  box-shadow:0 0 0 4px rgba(54,184,198,.12)!important;
}

body.welcome-anonymous.dc-login-02410 .btn-primary,
body.welcome-anonymous.dc-login-02410 button[type="submit"],
body.welcome-anonymous.dc-login-02410 input[type="submit"]{
  min-height:48px!important;
  border:0!important;
  border-radius:10px!important;
  background:#36b8c6!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:900!important;
  box-shadow:0 8px 20px rgba(35,159,171,.18)!important;
}

body.welcome-anonymous.dc-login-02410 .btn-primary:hover,
body.welcome-anonymous.dc-login-02410 button[type="submit"]:hover{
  background:#169ba8!important;
}

body.welcome-anonymous.dc-login-02410 .forgot_password a,
body.welcome-anonymous.dc-login-02410 a{
  color:#168c98!important;
}

body.welcome-anonymous.dc-login-02410 .container-tight>.text-muted{
  margin-top:13px!important;
  color:#718998!important;
  font-size:10px!important;
  text-align:center!important;
}

/* =========================================================
   NATIVE SIMPLE/HELPDESK INTERFACE
========================================================= */
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell){
  --dch-navy:#103f5c;
  --dch-navy-deep:#0b3148;
  --dch-teal:#36b8c6;
  --dch-bg:#f2f7fa;
  --dch-text:#143a56;
  --dch-muted:#71899a;
  background:var(--dch-bg)!important;
}

body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) header.navbar,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) header .navbar,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .navbar.navbar-expand-md{
  min-height:72px!important;
  border:0!important;
  background:linear-gradient(90deg,#103f5c,#174f70)!important;
  box-shadow:0 5px 18px rgba(5,36,53,.12)!important;
}

body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .dc-helpdesk-02410-brand,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) header .navbar-brand{
  width:205px!important;
  min-width:205px!important;
  height:55px!important;
  min-height:55px!important;
  background-image:url("../img/dconnect-10-years-dark.png")!important;
  background-repeat:no-repeat!important;
  background-position:left center!important;
  background-size:contain!important;
}

body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) header .navbar-brand>*{opacity:0!important;}

body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) header .nav-link{
  min-height:40px!important;
  padding:0 12px!important;
  display:inline-flex!important;
  align-items:center!important;
  border-radius:8px!important;
  color:#d2e5ed!important;
  font-size:12px!important;
  font-weight:750!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) header .nav-link:hover{
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
}

body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) main#page,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container{
  background:var(--dch-bg)!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container{padding-bottom:44px!important;}

body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .search-banner{
  width:min(1460px,calc(100% - 34px))!important;
  min-height:260px!important;
  margin:24px auto 16px!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 83% 10%,rgba(65,204,216,.22),transparent 28rem),
    linear-gradient(135deg,#0b3148,#174f70)!important;
  box-shadow:0 18px 46px rgba(5,40,60,.11)!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .scene{
  opacity:.08!important;
  filter:saturate(.4)!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .search-banner-content{
  z-index:2!important;
  max-width:920px!important;
  margin:0 auto!important;
  padding:45px 28px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  text-align:center!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container [data-testid="home-title"],
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .search-banner h1,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .search-banner h2{
  margin:0!important;
  color:#fff!important;
  font-size:32px!important;
  line-height:1.12!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .dc-helpdesk-02410-subtitle{
  max-width:760px!important;
  margin:12px auto 0!important;
  color:#c5dce6!important;
  font-size:14px!important;
  line-height:1.55!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .search-bar-container{
  width:min(720px,100%)!important;
  max-width:720px!important;
  margin:24px auto 0!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .home-search,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container #search-input{
  min-height:52px!important;
  padding-left:48px!important;
  border:1px solid rgba(255,255,255,.35)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#173b59!important;
  font-size:13px!important;
  box-shadow:0 12px 30px rgba(0,20,35,.18)!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tiles-banner,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tickets-banner{
  width:min(1460px,calc(100% - 34px))!important;
  margin:0 auto!important;
  padding:12px 0!important;
  background:transparent!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tiles-banner .card,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tickets-banner .card,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tickets-banner .tab-content{
  border:1px solid #d7e4ec!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(5,42,66,.045)!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tiles-banner .card{
  min-height:118px!important;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tiles-banner .card:hover{
  transform:translateY(-2px)!important;
  border-color:#b8e3e7!important;
  box-shadow:0 10px 28px rgba(5,42,66,.08)!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tiles-banner .card-title{
  color:#123956!important;
  font-size:16px!important;
  line-height:1.2!important;
  font-weight:900!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tiles-banner .card p,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tiles-banner .card small{
  color:#728a9b!important;
  font-size:12px!important;
  line-height:1.45!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .dc-helpdesk-02410-primary-tile{
  border-color:#a9dfe4!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .nav-tabs .nav-link{
  min-height:38px!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
  color:#698397!important;
  font-size:12px!important;
  font-weight:800!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .nav-tabs .nav-link.active{
  border-bottom-color:#36b8c6!important;
  background:transparent!important;
  color:#138d99!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container table{
  color:#284f68!important;
  font-size:12px!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container table thead th{
  color:#607e91!important;
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.03em!important;
  background:#f7fafc!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .btn-primary{
  border-color:#36b8c6!important;
  background:#36b8c6!important;
  color:#fff!important;
}
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .btn-primary:hover{
  border-color:#169ba8!important;
  background:#169ba8!important;
}

@media(max-width:900px){
  body.welcome-anonymous.dc-login-02410 main#page>.flex-fill,
  body.welcome-anonymous.dc-login-02410 main#page.page-anonymous>.flex-fill{
    padding:18px 12px!important;
  }
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form{
    grid-template-columns:1fr!important;
  }
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand{
    grid-column:1!important;
    grid-row:1!important;
    min-height:auto!important;
    padding:30px 30px!important;
  }
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-logo{
    width:185px!important;
    height:60px!important;
    margin-bottom:22px!important;
  }
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand h1{font-size:30px!important;}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-contact{display:none!important;}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-loginrow,
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form>.row{
    grid-column:1!important;
    grid-row:2!important;
    min-height:auto!important;
    padding:36px 30px!important;
  }
}

@media(max-width:620px){
  body.welcome-anonymous.dc-login-02410 .container-tight{width:calc(100vw - 20px)!important;}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-features{display:none!important;}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand{padding:24px 22px!important;}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-loginrow,
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form>.row{padding:30px 22px!important;}
  body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .search-banner{
    width:calc(100% - 20px)!important;
    margin-top:10px!important;
    border-radius:13px!important;
  }
  body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container [data-testid="home-title"],
  body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .search-banner h1,
  body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .search-banner h2{
    font-size:25px!important;
  }
  body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tiles-banner,
  body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) .helpdesk-home-container .tickets-banner{
    width:calc(100% - 20px)!important;
  }
}


/* ===== SOURCE: public/css/readability-02411.css ===== */
/* =========================================================
   D-Connect Workspace 0.24.11
   Global readability / contrast layer
   Loaded last on purpose: this normalizes the very small
   typography used by older D-Connect surfaces without
   changing GLPI permissions or application logic.
========================================================= */

:root{
  --dc-r-text:#153a56;
  --dc-r-text-strong:#0a3155;
  --dc-r-muted:#5f788a;
  --dc-r-muted-soft:#6f8798;
  --dc-r-line:#cfdee8;
  --dc-r-input:#173b59;
  --dc-r-teal:#149eaa;
}

/* ---------------------------------------------------------
   Base typography on D-Connect controlled surfaces
--------------------------------------------------------- */
body.dc-shell-ready,
body.dc-customer-portal-shell,
body.dc-simple-helpdesk-02410,
body.dc-login-02410{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

body.dc-shell-ready main#page,
body.dc-customer-portal-shell main#page,
.dc-customer-app,
.dc-customer-onboard-page,
.dc-prepaid-page,
.dc-planning-page-v1,
.dc-workspace-page,
.dc-custom-page{
  color:var(--dc-r-text);
}

/* Shared secondary copy. We intentionally do not target every span globally,
   because many spans are icons, badges or layout helpers. */
.dc-custom-page p,
.dc-workspace-page p,
.dc-customer-page p,
.dc-assets-page p,
.dc-prepaid-page p,
.dc-customer-onboard-page p,
.dc-ticket-custom-page p,
.dc-ticket-list-page p,
.dc-planning-page-v1 p{
  color:var(--dc-r-muted)!important;
  font-size:12px!important;
  line-height:1.5!important;
}

.dc-custom-page small,
.dc-workspace-page small,
.dc-customer-page small,
.dc-assets-page small,
.dc-prepaid-page small,
.dc-customer-onboard-page small,
.dc-ticket-custom-page small,
.dc-ticket-list-page small,
.dc-planning-page-v1 small{
  color:var(--dc-r-muted)!important;
  font-size:10.5px!important;
  line-height:1.42!important;
}

/* ---------------------------------------------------------
   D-Connect shell / navigation
--------------------------------------------------------- */
body.dc-shell-ready .dc-logo-copy small{
  font-size:10.5px!important;
  color:#d3eef2!important;
}
body.dc-shell-ready .dc-nav-section,
body.dc-shell-ready .dc-nav-section-title{
  font-size:10px!important;
  letter-spacing:.11em!important;
  color:#9bd2da!important;
}
body.dc-shell-ready .dc-nav-link,
body.dc-shell-ready .dc-system-nav-item,
body.dc-shell-ready .dc-system-flyout-links a{
  font-size:12px!important;
  line-height:1.3!important;
}
body.dc-shell-ready .dc-support-card strong{font-size:13px!important}
body.dc-shell-ready .dc-support-card small,
body.dc-shell-ready .dc-sidebar-foot>small{
  font-size:10.5px!important;
  line-height:1.45!important;
  color:#c2dce3!important;
}
body.dc-shell-ready .dc-global-search input{
  font-size:13px!important;
}

/* ---------------------------------------------------------
   Shared custom page headers, cards, buttons and tables
--------------------------------------------------------- */
.dc-custom-page-head>div>span,
.dc-create-kicker,
.dc-ticket-kicker,
.dc-assets-page-head>div>span,
.dc-planning-head-v1>div:first-child>span,
.dc-asset-create-head>div>span,
.dc-prepaid-hero>div>span{
  font-size:10px!important;
  letter-spacing:.10em!important;
  color:#0a98a5!important;
  font-weight:900!important;
}

.dc-custom-page-head p,
.dc-assets-page-head p,
.dc-planning-head-v1 p,
.dc-asset-create-head p{
  font-size:12px!important;
  color:var(--dc-r-muted)!important;
}

.dc-primary-btn,
.dc-secondary-btn,
.dc-danger-btn,
.dc-ghost-btn,
.dc-light-action,
.dc-secondary-inline,
.dc-card-actions a,
.dc-card-actions button,
.dc-custom-card-head a{
  font-size:11.5px!important;
  line-height:1.25!important;
}

.dc-custom-card-head strong,
.dc-card-head strong,
.dc-mini-card-head strong,
.dc-section-title,
.dc-section-heading strong{
  font-size:13px!important;
  color:var(--dc-r-text-strong)!important;
}

.dc-standard-table,
.dc-any-table,
.dc-route-table,
.dc-ticket-table,
.dc-prepaid-table,
.dc-asset-table{
  font-size:12px!important;
}
.dc-standard-table th,
.dc-any-table th,
.dc-route-table th,
.dc-ticket-table th,
.dc-prepaid-table th,
.dc-asset-table th{
  color:#3d5f76!important;
  font-size:10.5px!important;
  font-weight:850!important;
  letter-spacing:.035em!important;
}
.dc-standard-table td,
.dc-any-table td,
.dc-route-table td,
.dc-ticket-table td,
.dc-prepaid-table td,
.dc-asset-table td{
  color:#244961!important;
  font-size:12px!important;
  line-height:1.45!important;
}

/* ---------------------------------------------------------
   Forms, modals, searchable pickers
--------------------------------------------------------- */
body.dc-shell-ready .dc-native-form label,
body.dc-shell-ready .dc-native-form .form-label,
body.dc-shell-ready .dc-standard-modal label,
body.dc-shell-ready .dc-route-modal label,
.dc-plan-modal-v1 label>span,
.dc-edit-modal label,
.dc-quickplan-modal label,
.dc-asset-create-grid label>span,
.dc-prepaid-form-grid label,
.dc-onboard-grid label{
  color:#294f68!important;
  font-size:11.5px!important;
  font-weight:800!important;
}

body.dc-shell-ready .dc-native-form .form-control,
body.dc-shell-ready .dc-native-form .form-select,
body.dc-shell-ready .dc-standard-modal .form-control,
body.dc-shell-ready .dc-standard-modal .form-select,
body.dc-shell-ready .dc-select2-selection,
.dc-plan-modal-v1 input,
.dc-plan-modal-v1 select,
.dc-plan-modal-v1 textarea,
.dc-edit-modal input,
.dc-edit-modal select,
.dc-edit-modal textarea,
.dc-quickplan-modal input,
.dc-quickplan-modal select,
.dc-quickplan-modal textarea,
.dc-asset-create-grid input,
.dc-asset-create-grid select,
.dc-asset-create-grid textarea,
.dc-prepaid-form-grid input,
.dc-prepaid-form-grid select,
.dc-prepaid-form-grid textarea,
.dc-onboard-grid input,
.dc-onboard-grid select,
.dc-onboard-grid textarea{
  color:var(--dc-r-input)!important;
  font-size:13px!important;
}

body.dc-shell-ready .form-text,
body.dc-shell-ready .text-secondary,
body.dc-shell-ready .text-muted,
.dc-edit-info,
.dc-new-ticket-note,
.dc-asset-create-note,
.dc-prepaid-task-hint,
.dc-onboard-grid small,
.dc-onboard-section-title small{
  color:var(--dc-r-muted)!important;
  font-size:10.5px!important;
  line-height:1.45!important;
}

.dc-plan-modal-head-v1 span,
.dc-quickplan-head>div>span,
.dc-edit-modal-head>div>span{
  font-size:10px!important;
  letter-spacing:.10em!important;
}
.dc-plan-modal-head-v1 p,
.dc-quickplan-head p,
.dc-edit-modal-head p{
  font-size:11.5px!important;
  color:var(--dc-r-muted)!important;
}

.dc-plan-ticket-results-v1>button>span,
.dc-plan-ticket-number{
  font-size:10px!important;
}
.dc-plan-ticket-results-v1>button>strong,
.dc-plan-ticket-result-main strong{
  font-size:11.5px!important;
}
.dc-plan-ticket-results-v1>button>small,
.dc-plan-ticket-result-main small,
.dc-customer-picker-0242>small,
.dc-customer-result-main-0242 small{
  font-size:9.5px!important;
  color:var(--dc-r-muted)!important;
}
.dc-customer-picker-0242>label>span{
  font-size:11.5px!important;
}
.dc-customer-search-wrap-0242 input{
  font-size:13px!important;
}
.dc-customer-result-main-0242 strong{
  font-size:11.5px!important;
}
.dc-customer-empty-0242{
  font-size:11px!important;
  color:var(--dc-r-muted)!important;
}

/* Billing / internal toggle / time account */
.dc-billing-mode legend{font-size:11px!important}
.dc-billing-mode strong{font-size:11.5px!important}
.dc-billing-mode small{font-size:10px!important;line-height:1.35!important}
.dc-time-account-grid span{font-size:10px!important}
.dc-time-account-grid strong{font-size:14px!important}
.dc-time-account-grid small{font-size:9.5px!important}
.dc-internal-copy-0242 strong{font-size:11.5px!important}
.dc-internal-copy-0242 small{font-size:9.5px!important}

/* ---------------------------------------------------------
   Ticket workspace
--------------------------------------------------------- */
.dc-ticket-custom-meta{
  color:#587286!important;
  font-size:11.5px!important;
}
.dc-ticket-custom-title .wf,
.dc-workflow-chip small,
.dc-status,
.dc-priority,
.dc-workflow-badge{
  font-size:10px!important;
}
.dc-ticket-custom-assignment small{
  color:#6a8293!important;
  font-size:10px!important;
}
.dc-ticket-custom-assignment strong{
  color:#153b59!important;
  font-size:12px!important;
}
body.dc-page-ticket .dc-ticket-native-details label{
  color:#31536d!important;
  font-size:11.5px!important;
}
body.dc-page-ticket .dc-ticket-native-details .select2-selection,
body.dc-page-ticket .dc-ticket-native-details input,
body.dc-page-ticket .dc-ticket-native-details select{
  font-size:12.5px!important;
}
.dc-person-row{font-size:11.5px!important}
.dc-ticket-section,
.dc-ticket-tabs a,
.dc-ticket-tabs button{
  font-size:11.5px!important;
}
.dc-description-text,
.dc-event-detail,
.dc-reply-card,
.dc-ticket-native-timeline{
  font-size:12.5px!important;
  line-height:1.55!important;
}

/* ---------------------------------------------------------
   Customers / customer browser
--------------------------------------------------------- */
.dc-customer-head p{font-size:12px!important;color:var(--dc-r-muted)!important}
.dc-customer-group-label strong,
.dc-customer-items strong,
.dc-customer-group-children>a strong{
  font-size:11.5px!important;
}
.dc-customer-group-label small,
.dc-customer-items small{
  font-size:10px!important;
  color:#6c8496!important;
}
.dc-customer-search input,
.dc-customer-ticket-toolbar input,
.dc-customer-ticket-toolbar select{
  font-size:12.5px!important;
}
.dc-customer-ticket-row .dc-customer-ticket-head,
.dc-customer-ticket-row .dc-customer-ticket-status,
.dc-customer-ticket-row .dc-customer-ticket-priority{
  font-size:10.5px!important;
}
.dc-customer-new-ticket,
.dc-customer-prepaid-link,
.dc-customer-add-btn,
.dc-customer-delete-btn{
  font-size:11.5px!important;
}

/* Customer onboarding */
.dc-customer-onboard-head>div>span{font-size:10px!important}
.dc-customer-onboard-head h1{font-size:28px!important}
.dc-customer-onboard-head p{font-size:12px!important}
.dc-customer-onboard-head>a{font-size:11.5px!important}
.dc-onboard-section-title strong{font-size:13px!important}
.dc-onboard-section-title small{font-size:10.5px!important}
.dc-onboard-type-grid strong{font-size:13px!important}
.dc-onboard-type-grid small{font-size:10.5px!important;color:#5f788a!important}
.dc-onboard-grid label{font-size:11.5px!important}
.dc-onboard-grid input{font-size:13px!important}
.dc-onboard-grid small{font-size:10px!important}
.dc-onboard-auto-grid strong{font-size:11.5px!important}
.dc-onboard-auto-grid small{font-size:10px!important;color:#5f788a!important}
.dc-onboard-warning{font-size:10.5px!important}
.dc-customer-onboard-card>footer a,
.dc-customer-onboard-card>footer button{font-size:11.5px!important}

/* ---------------------------------------------------------
   Assets
--------------------------------------------------------- */
.dc-assets-page-head p,
.dc-assets-selected-head p,
.dc-assets-empty-state p{
  font-size:11.5px!important;
  color:var(--dc-r-muted)!important;
}
.dc-assets-customer-group-toggle strong,
.dc-assets-customer-group-items>a strong,
.dc-asset-list-main strong{
  font-size:11.5px!important;
}
.dc-assets-customer-group-toggle small,
.dc-asset-list-main small,
.dc-asset-list-meta span,
.dc-assets-type-summary button small,
.dc-assets-no-assets span,
.dc-assets-filter-empty{
  font-size:9.8px!important;
  color:#667f91!important;
}
.dc-asset-create-customer strong{font-size:12px!important}
.dc-asset-create-customer small{font-size:10px!important}
.dc-asset-create-note{font-size:10.5px!important}
.dc-asset-create-actions button,
.dc-asset-create-actions a{font-size:11.5px!important}

/* Native asset detail surface retained by safe 0.23.5 architecture */
body.dc-asset-detail-safe-0235 .dc-asset-safe-summary,
body.dc-asset-detail-safe-0235 .dc-asset-tabs-safe-0235,
body.dc-asset-detail-safe-0235 .dc-asset-native-card{
  font-size:12px!important;
}
body.dc-asset-detail-safe-0235 .dc-asset-safe-summary small,
body.dc-asset-detail-safe-0235 .dc-asset-tab-link small{
  font-size:10px!important;
  color:var(--dc-r-muted)!important;
}

/* ---------------------------------------------------------
   Planning / workday / performance timeline
--------------------------------------------------------- */
.dc-planning-head-v1 p{font-size:11.5px!important}
.dc-planning-sidebar-title-v1 small,
.dc-planning-user-list-v1 small,
.dc-planning-panel-notice,
.dc-planning-legend-v1{
  font-size:10px!important;
  color:var(--dc-r-muted)!important;
}
.dc-planning-user-list-v1 strong,
.dc-planning-user-list-v1 label,
.dc-planning-filter-toggle-0217,
.dc-planning-type-filter-v1{
  font-size:11px!important;
}
.dc-planning-day-head-v1 strong{font-size:10.5px!important}
.dc-planning-day-head-v1 span,
.dc-planning-time-v1{font-size:9.5px!important}

/* Calendar blocks stay compact, but no longer use 6–7px copy. */
.dc-planning-event-v1 small{font-size:8px!important}
.dc-planning-event-v1 strong{font-size:9.5px!important;line-height:1.2!important}
.dc-planning-event-v1 em{font-size:8.5px!important;line-height:1.2!important}
.dc-planning-event-kind-v1{font-size:8px!important}

/* Workday timeline: preserve compact cards while making metadata legible. */
.dc-event-label small,
.dc-event-label-compact small,
.dc-event-label-tiny small,
.dc-event-kind{
  font-size:8px!important;
  line-height:1.2!important;
}
.dc-event-label strong,
.dc-event-label-compact strong{
  font-size:10px!important;
  line-height:1.2!important;
}
.dc-event-label em,
.dc-event-label-compact em{
  font-size:8.5px!important;
  line-height:1.2!important;
}
.dc-day-window-caption,
.dc-day-scale,
.dc-day-nav button{
  font-size:10px!important;
}

/* ---------------------------------------------------------
   Prepaid / time accounts
--------------------------------------------------------- */
.dc-prepaid-hero p,
.dc-prepaid-validity,
.dc-prepaid-task-hint{
  font-size:11px!important;
  color:var(--dc-r-muted)!important;
}
.dc-prepaid-card-title,
.dc-prepaid-card-head strong,
.dc-prepaid-task-title{
  font-size:12px!important;
}
.dc-prepaid-type,
.dc-prepaid-numbers span,
.dc-prepaid-month-total span{
  font-size:10px!important;
}
.dc-prepaid-numbers strong,
.dc-prepaid-month-total strong{
  font-size:14px!important;
}
.dc-prepaid-filters label,
.dc-prepaid-form-grid label{
  font-size:11.5px!important;
}
.dc-prepaid-filters input,
.dc-prepaid-filters select,
.dc-prepaid-form-grid input,
.dc-prepaid-form-grid select,
.dc-prepaid-form-grid textarea{
  font-size:12.5px!important;
}

/* =========================================================
   CUSTOMER SERVICE PORTAL – main readability pass
========================================================= */
body.dc-customer-portal-shell{
  --dcp-text:#123956;
  --dcp-muted:#5f788a;
}
body.dc-customer-portal-shell header .nav-link{
  color:#e0f0f4!important;
  font-size:12px!important;
  font-weight:750!important;
}
body.dc-customer-portal-shell header .nav-link:hover,
body.dc-customer-portal-shell header .nav-link.active{
  color:#fff!important;
}
body.dc-customer-portal-shell header .dropdown-toggle,
body.dc-customer-portal-shell header .dropdown-menu{
  font-size:12px!important;
}

.dc-customer-welcome-main>span,
.dc-customer-box header>div>span,
.dc-customer-section-heading>div>span,
.dc-customer-faq>div>span,
.dc-customer-contact span{
  color:#62d2dc!important;
  font-size:10px!important;
  letter-spacing:.11em!important;
}
.dc-customer-welcome h1{
  color:#fff!important;
  font-size:31px!important;
  line-height:1.14!important;
  text-shadow:0 1px 1px rgba(0,0,0,.08);
}
.dc-customer-welcome-main>p{
  color:#e0edf2!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.dc-customer-welcome-actions strong{
  color:#fff!important;
  font-size:12.5px!important;
}
.dc-customer-welcome-actions small{
  color:#e3eff3!important;
  font-size:10.5px!important;
  line-height:1.35!important;
}
.dc-customer-welcome-stats span{
  color:#e8f2f5!important;
  font-size:11px!important;
}
.dc-customer-welcome-stats small{
  color:#bdd2db!important;
  font-size:10px!important;
}
.dc-customer-welcome-stats strong{font-size:29px!important}

.dc-customer-box h2,
.dc-customer-section-heading h2,
.dc-customer-faq h2{
  font-size:19px!important;
  line-height:1.2!important;
}
.dc-customer-box header p,
.dc-customer-section-heading p{
  color:#60798b!important;
  font-size:11.5px!important;
  line-height:1.45!important;
}
.dc-customer-ticket-search input{
  min-height:40px!important;
  color:#173b59!important;
  font-size:12px!important;
}
.dc-customer-ticket-tabs button{
  min-height:34px!important;
  color:#3f6279!important;
  font-size:10.5px!important;
}
.dc-customer-ticket-tabs button b{font-size:9.5px!important}
.dc-customer-ticket-tabs button.active{color:#fff!important}

.dc-customer-ticket-row{
  min-height:68px!important;
}
.dc-customer-ticket-row .number{
  color:#0d8e9a!important;
  font-size:10.5px!important;
}
.dc-customer-ticket-row .main strong{
  color:#173b59!important;
  font-size:12px!important;
}
.dc-customer-ticket-row .main small{
  color:#677f90!important;
  font-size:10px!important;
}
.dc-customer-ticket-row .status{
  font-size:9.5px!important;
  line-height:1.25!important;
}
.dc-customer-ticket-row .updated small{
  color:#718799!important;
  font-size:9px!important;
}
.dc-customer-ticket-row .updated strong{
  color:#3f6279!important;
  font-size:10px!important;
}
.dc-customer-loading,
.dc-customer-empty{
  color:#667f90!important;
  font-size:11px!important;
  line-height:1.45!important;
}
.dc-customer-empty strong{
  color:#385f77!important;
  font-size:12px!important;
}

.dc-customer-appointment-row>div{
  font-size:10px!important;
}
.dc-customer-appointment-row strong{
  font-size:11.5px!important;
}
.dc-customer-appointment-row small{
  color:#667f91!important;
  font-size:10px!important;
}

.dc-customer-contact h3{
  font-size:14px!important;
}
.dc-customer-contact p{
  color:#d1e1e7!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}
.dc-customer-contact a{
  font-size:11px!important;
}

.dc-customer-service-hint{
  color:#3d6578!important;
  font-size:10.5px!important;
  line-height:1.4!important;
}
.dc-customer-service-card strong{
  color:#123956!important;
  font-size:12.5px!important;
}
.dc-customer-service-card span{
  color:#607a8d!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}
.dc-customer-service-card>b{
  color:#0d8d99!important;
  font-size:10px!important;
}

.dc-customer-faq article strong{
  color:#173b59!important;
  font-size:11.5px!important;
}
.dc-customer-faq article p{
  color:#60798b!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}

.dc-customer-form>header span{font-size:10px!important}
.dc-customer-form>header p{
  color:#60798b!important;
  font-size:11px!important;
}
.dc-customer-form label>span{
  color:#294f68!important;
  font-size:11.5px!important;
}
.dc-customer-form input,
.dc-customer-form select,
.dc-customer-form textarea{
  color:#173b59!important;
  font-size:13px!important;
}
.dc-customer-form-note{
  color:#587386!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}
.dc-customer-form>footer button{
  font-size:11.5px!important;
}
.dc-customer-entity-lock small{
  color:#60798b!important;
  font-size:10px!important;
}
.dc-customer-entity-lock strong{font-size:12px!important}

/* ---------------------------------------------------------
   Native/simple Helpdesk restyle
--------------------------------------------------------- */
body.dc-simple-helpdesk-02410 .dc-helpdesk-02410-subtitle,
body.dc-simple-helpdesk-02410 main#page p,
body.dc-simple-helpdesk-02410 main#page small{
  color:#5d7688!important;
  font-size:11.5px!important;
  line-height:1.5!important;
}
body.dc-simple-helpdesk-02410 main#page .card-title,
body.dc-simple-helpdesk-02410 .dc-helpdesk-02410-primary-tile strong{
  color:#123956!important;
  font-size:14px!important;
}
body.dc-simple-helpdesk-02410 main#page .btn,
body.dc-simple-helpdesk-02410 main#page .nav-link,
body.dc-simple-helpdesk-02410 main#page label{
  font-size:11.5px!important;
}
body.dc-simple-helpdesk-02410 main#page input,
body.dc-simple-helpdesk-02410 main#page select,
body.dc-simple-helpdesk-02410 main#page textarea{
  font-size:13px!important;
}
body.dc-simple-helpdesk-02410 main#page th{font-size:10.5px!important}
body.dc-simple-helpdesk-02410 main#page td{font-size:12px!important}

/* ---------------------------------------------------------
   Anonymous login readability
--------------------------------------------------------- */
body.dc-login-02410 .dc-login-02410-kicker{
  font-size:10px!important;
}
body.dc-login-02410 .dc-login-02410-lead,
body.dc-login-02410 .dc-login-02410-features,
body.dc-login-02410 .dc-login-02410-contact{
  font-size:11.5px!important;
  line-height:1.5!important;
}
body.dc-login-02410 .dc-login-02410-form label{
  color:#294f68!important;
  font-size:11.5px!important;
  font-weight:800!important;
}
body.dc-login-02410 .dc-login-02410-form input{
  color:#173b59!important;
  font-size:13px!important;
}
body.dc-login-02410 .dc-login-02410-form .btn{
  font-size:12px!important;
}

/* ---------------------------------------------------------
   Small screens – keep the readable baseline
--------------------------------------------------------- */
@media(max-width:760px){
  .dc-customer-welcome h1{font-size:25px!important}
  .dc-customer-welcome-main>p{font-size:12px!important}
  .dc-customer-service-card span,
  .dc-customer-faq article p,
  .dc-customer-box header p,
  .dc-customer-section-heading p{font-size:10.5px!important}
  .dc-customer-ticket-row .main strong{font-size:11.5px!important}
  .dc-customer-ticket-row .main small{font-size:9.5px!important}
}


/* ===== SOURCE: public/css/auth-login-02417.css ===== */
/* 0.24.17 - D-Connect image login + mobile/tablet browser layout */
body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:
    linear-gradient(180deg,rgba(3,33,57,.03),rgba(3,33,57,.16)),
    url("../img/dc-wiki-login.webp") center center/cover no-repeat!important;
}
body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand::before{
  content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;
  background:linear-gradient(90deg,rgba(255,255,255,.03),transparent 48%,rgba(0,67,112,.07))!important;
}
body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand::after{
  content:"D-CONNECT SERVICE DESK  ·  IT. EINFACH. SICHER."!important;
  position:absolute!important;left:24px!important;right:24px!important;bottom:20px!important;
  z-index:2!important;padding:9px 12px!important;border-radius:9px!important;
  background:rgba(4,47,78,.78)!important;color:#fff!important;
  font-size:10px!important;font-weight:850!important;letter-spacing:.08em!important;text-align:center!important;
  backdrop-filter:blur(6px)!important;
}
body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand>*{display:none!important}
body.welcome-anonymous.dc-login-02410 .main-content-card{overflow:hidden!important}

@media(max-width:1100px){
  body.welcome-anonymous.dc-login-02410 .main-content-card{width:min(94vw,880px)!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form{grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr)!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-loginrow,
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form>.row{padding:44px 38px!important}
}

@media(max-width:820px){
  body.welcome-anonymous.dc-login-02410{padding:22px 12px!important;align-items:flex-start!important}
  body.welcome-anonymous.dc-login-02410 .main-content-card{width:min(96vw,650px)!important;max-width:650px!important;margin:0 auto!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:260px auto!important;min-height:0!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand{grid-column:1!important;grid-row:1!important;min-height:260px!important;border-radius:0!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-loginrow,
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form>.row{grid-column:1!important;grid-row:2!important;min-height:0!important;padding:38px 42px 42px!important}
}

@media(max-width:520px){
  body.welcome-anonymous.dc-login-02410{padding:0!important;background:#fff!important}
  body.welcome-anonymous.dc-login-02410 .main-content-card{width:100%!important;max-width:none!important;min-height:100dvh!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form{grid-template-rows:190px auto!important;min-height:100dvh!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand{min-height:190px!important;background-position:center 56%!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand::after{left:14px!important;right:14px!important;bottom:12px!important;font-size:8px!important;padding:7px 8px!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-loginrow,
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form>.row{padding:28px 20px 36px!important;align-items:flex-start!important}
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-heading,
  body.welcome-anonymous.dc-login-02410 .card-header h2{font-size:27px!important}
  body.welcome-anonymous.dc-login-02410 .form-control,
  body.welcome-anonymous.dc-login-02410 input[type="text"],
  body.welcome-anonymous.dc-login-02410 input[type="email"],
  body.welcome-anonymous.dc-login-02410 input[type="password"]{font-size:16px!important;min-height:50px!important}
}


/* ===== SOURCE: public/css/auth-login-02419.css ===== */
/* 0.24.19 - selected D-Connect Service-Desk login artwork (Bild 1) */
body.welcome-anonymous.dc-login-02410{
  background:
    radial-gradient(circle at 82% 18%,rgba(255,255,255,.64),transparent 25rem),
    radial-gradient(circle at 16% 70%,rgba(33,169,229,.24),transparent 34rem),
    linear-gradient(135deg,#8fd4fa 0%,#dff3ff 47%,#a8ddf7 100%)!important;
}

body.welcome-anonymous.dc-login-02410 .main-content-card{
  border-color:rgba(255,255,255,.86)!important;
  box-shadow:0 30px 90px rgba(2,55,99,.22)!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand,
body.welcome-anonymous.dc-login-02410 .rich_text_container.dc-login-02410-brand{
  padding:0!important;
  background:
    url("../img/dc-service-desk-login-02419.webp") center center/cover no-repeat!important;
}

/* Artwork already contains all left-panel copy and icons. */
body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand>*{
  display:none!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand::before,
body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand::after{
  content:none!important;
  display:none!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-loginrow,
body.welcome-anonymous.dc-login-02410 .dc-login-02410-form>.row{
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-heading,
body.welcome-anonymous.dc-login-02410 .card-header h2{
  color:#092f6c!important;
}

body.welcome-anonymous.dc-login-02410 .dc-login-02410-heading::before,
body.welcome-anonymous.dc-login-02410 .card-header h2::before{
  color:#0aa3c3!important;
}

body.welcome-anonymous.dc-login-02410 .btn-primary,
body.welcome-anonymous.dc-login-02410 button[type="submit"],
body.welcome-anonymous.dc-login-02410 input[type="submit"]{
  background:linear-gradient(90deg,#32b6c5,#3ab9c9)!important;
  box-shadow:0 10px 24px rgba(33,157,179,.2)!important;
}

body.welcome-anonymous.dc-login-02410 .container-tight>.text-muted{
  color:#195178!important;
}

@media(max-width:900px){
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form{
    grid-template-rows:minmax(320px,46vw) auto!important;
  }
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand,
  body.welcome-anonymous.dc-login-02410 .rich_text_container.dc-login-02410-brand{
    min-height:320px!important;
    background-size:cover!important;
    background-position:center 45%!important;
  }
}

@media(max-width:620px){
  body.welcome-anonymous.dc-login-02410{
    background:#e7f6ff!important;
  }
  body.welcome-anonymous.dc-login-02410 main#page>.flex-fill,
  body.welcome-anonymous.dc-login-02410 main#page.page-anonymous>.flex-fill{
    padding:10px!important;
  }
  body.welcome-anonymous.dc-login-02410 .main-content-card{
    border-radius:20px!important;
  }
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form{
    grid-template-rows:minmax(340px,88vw) auto!important;
  }
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-brand,
  body.welcome-anonymous.dc-login-02410 .rich_text_container.dc-login-02410-brand{
    min-height:340px!important;
    background-size:cover!important;
    background-position:center 44%!important;
  }
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-loginrow,
  body.welcome-anonymous.dc-login-02410 .dc-login-02410-form>.row{
    padding:30px 22px 34px!important;
  }
}


/* ===== SOURCE: public/css/admin-02420.css ===== */
.dcw-admin-page{max-width:1480px;margin:0 auto;padding:22px}.dcw-admin-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px 32px;border-radius:22px;background:linear-gradient(135deg,#08385e,#0a78a4);color:#fff;box-shadow:0 14px 42px rgba(10,72,110,.16);margin-bottom:22px}.dcw-admin-hero span{font-size:.76rem;font-weight:800;letter-spacing:.14em;color:#8eeaff}.dcw-admin-hero h1{margin:.4rem 0 .3rem;font-size:2rem}.dcw-admin-hero p{margin:0;opacity:.88}.dcw-admin-back{display:inline-flex;gap:8px;align-items:center;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.12);color:#fff;text-decoration:none}.dcw-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dcw-admin-card{background:var(--tblr-bg-surface,#fff);border:1px solid rgba(18,72,108,.12);border-radius:18px;padding:22px;box-shadow:0 8px 28px rgba(21,64,92,.07)}.dcw-admin-card-wide{grid-column:1/-1}.dcw-admin-card-head{display:flex;gap:12px;align-items:center;margin-bottom:18px}.dcw-admin-card-head>i{font-size:1.5rem;color:#0aa7c2}.dcw-admin-card-head strong,.dcw-admin-card-head small{display:block}.dcw-admin-card-head small{color:#71869a;margin-top:2px}.dcw-setting-toggle,.dcw-setting-static{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px;border:1px solid #dce9f0;border-radius:14px;margin-bottom:14px}.dcw-setting-toggle span strong,.dcw-setting-toggle span small,.dcw-setting-static span strong,.dcw-setting-static span small{display:block}.dcw-setting-toggle small,.dcw-setting-static small{color:#6d8495;margin-top:4px}.dcw-setting-toggle input{width:22px;height:22px;accent-color:#12a7c4}.dcw-setting-static b{color:#16895a;background:#eaf8f1;padding:7px 11px;border-radius:999px}.dcw-admin-primary{border:0;border-radius:12px;background:linear-gradient(135deg,#11abc4,#1d8fb8);color:#fff;padding:11px 16px;font-weight:700;display:inline-flex;gap:8px;align-items:center}.dcw-admin-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dcw-admin-kpis>div{padding:15px;border-radius:14px;background:#f4f9fc;border:1px solid #e0edf3}.dcw-admin-kpis span,.dcw-admin-kpis strong{display:block}.dcw-admin-kpis span{font-size:.78rem;color:#70869a}.dcw-admin-kpis strong{font-size:1.45rem;color:#123e5d;margin-top:5px}.dcw-admin-kpis-workflow{grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0}.dcw-admin-staff-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.dcw-admin-staff-list span{padding:8px 11px;border-radius:12px;background:#edf7fb}.dcw-admin-staff-list b,.dcw-admin-staff-list small{display:block}.dcw-admin-staff-list small{color:#678093}.dcw-workflow-status{display:flex;gap:14px;align-items:center;border-radius:14px;padding:15px}.dcw-workflow-status.is-ok{background:#ebf9f2;color:#176c4b}.dcw-workflow-status.has-issues{background:#fff5e6;color:#8a5a14}.dcw-workflow-status i{font-size:1.7rem}.dcw-workflow-status strong,.dcw-workflow-status small{display:block}.dcw-workflow-action{padding-top:4px}.dcw-workflow-action p{color:#5f7588;max-width:1000px}@media(max-width:900px){.dcw-admin-grid{grid-template-columns:1fr}.dcw-admin-card-wide{grid-column:auto}.dcw-admin-kpis-workflow{grid-template-columns:repeat(2,minmax(0,1fr))}.dcw-admin-hero{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.dcw-admin-page{padding:12px}.dcw-admin-kpis,.dcw-admin-kpis-workflow{grid-template-columns:1fr}}


/* ===== SOURCE: public/css/regiezettel-02420.css ===== */
.dc-regie-page{max-width:1500px;margin:0 auto;padding:22px}.dc-regie-hero{display:flex;justify-content:space-between;gap:22px;align-items:center;padding:25px 28px;border-radius:20px;background:linear-gradient(135deg,#073b66,#0a91b5);color:#fff;margin-bottom:20px;box-shadow:0 12px 34px rgba(9,74,113,.15)}.dc-regie-kicker{font-size:.72rem;font-weight:800;letter-spacing:.14em;color:#96ecfa}.dc-regie-hero h1{margin:.3rem 0;font-size:1.9rem}.dc-regie-hero p{margin:0;opacity:.88}.dc-regie-hero-actions{display:flex;gap:9px;flex-wrap:wrap}.dc-regie-hero-actions a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:10px;background:rgba(255,255,255,.12);color:#fff;text-decoration:none}.dc-regie-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px}.dc-regie-card{background:var(--tblr-bg-surface,#fff);border:1px solid rgba(16,67,101,.12);border-radius:18px;padding:22px;box-shadow:0 7px 24px rgba(28,70,96,.07)}.dc-regie-card-head{display:flex;gap:11px;align-items:center;margin-bottom:18px}.dc-regie-card-head>i{font-size:1.45rem;color:#10a4c1}.dc-regie-card-head strong,.dc-regie-card-head small{display:block}.dc-regie-card-head small{color:#72889a;margin-top:2px}.dc-regie-section-title{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#0a88a9;border-bottom:1px solid #dfeaf0;padding-bottom:7px;margin:20px 0 12px}.dc-regie-grid{display:grid;gap:12px}.dc-regie-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-regie-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.dc-regie-grid .span-2{grid-column:1/-1}.dc-regie-form label{display:block;font-size:.82rem;font-weight:700;color:#25475f}.dc-regie-form input,.dc-regie-form select,.dc-regie-form textarea{display:block;width:100%;margin-top:6px;border:1px solid #cfdfe8;border-radius:10px;padding:10px 11px;background:#fff;color:#173a52}.dc-regie-form textarea{resize:vertical}.dc-regie-confirmation{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}.dc-regie-check{display:flex!important;align-items:center;gap:9px;padding:12px;border-radius:10px;background:#f2f9fb}.dc-regie-check input{width:20px!important;margin:0!important}.dc-regie-form-actions{display:flex;justify-content:flex-end;margin-top:18px}.dc-regie-form-actions button{border:0;border-radius:11px;padding:11px 16px;background:linear-gradient(135deg,#10aac5,#1a91b5);color:#fff;font-weight:800}.dc-regie-history{align-self:start;position:sticky;top:80px}.dc-regie-history-item{display:block;text-decoration:none;padding:12px;border:1px solid #deebf1;border-radius:12px;margin-bottom:9px;color:#20455d}.dc-regie-history-item.active{border-color:#1aa6c1;background:#f0fbfd}.dc-regie-history-item strong,.dc-regie-history-item span,.dc-regie-history-item small{display:block}.dc-regie-history-item span{margin:4px 0}.dc-regie-history-item small{color:#6e8597}.dc-regie-new{display:flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;padding:10px;border-radius:10px;background:#edf8fb;color:#0a7998;font-weight:700}.dc-regie-empty,.dc-regie-notice{padding:13px;border-radius:11px;background:#f4f8fa;color:#617a8d}.dc-regie-notice{margin-bottom:16px}@media(max-width:1000px){.dc-regie-layout{grid-template-columns:1fr}.dc-regie-history{position:static}.dc-regie-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.dc-regie-page{padding:12px}.dc-regie-hero{align-items:flex-start;flex-direction:column}.dc-regie-grid.two,.dc-regie-grid.four,.dc-regie-confirmation{grid-template-columns:1fr}}
.dc-regie-ticket-list{display:grid;gap:9px}.dc-regie-ticket-list>a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #dbe8ef;border-radius:12px;text-decoration:none;color:#24475e;background:#fff}.dc-regie-ticket-list>a:hover{border-color:#19a6c2;background:#f5fbfd}.dc-regie-ticket-list strong,.dc-regie-ticket-list span{display:block}.dc-regie-ticket-list span{font-size:.8rem;color:#718697;margin-top:3px}.dc-regie-ticket-list small{white-space:nowrap;color:#0a86a6;font-weight:700}

/* 0.24.36 – central Regiezettel archive / mail / ticket linking */
.dc-regie-ticket-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dc-regie-ticket-picker input,.dc-regie-ticket-picker select{margin-top:6px}.dc-regie-delivery{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:16px}.dc-regie-pdf-state{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #dce9ef;border-radius:13px;background:#f7fbfc}.dc-regie-pdf-state>i{font-size:2rem;color:#e34f4f}.dc-regie-pdf-state>div{flex:1}.dc-regie-pdf-state strong,.dc-regie-pdf-state small{display:block}.dc-regie-pdf-state small{color:#6f8595;margin-top:3px}.dc-regie-pdf-state>a,.dc-regie-mail-form button,.dc-regie-list-search button,.dc-regie-open{border:0;border-radius:9px;padding:9px 12px;background:#16a6c0;color:#fff;font-weight:800;text-decoration:none}.dc-regie-mail-form{padding:15px;border:1px solid #dce9ef;border-radius:13px;background:#fff}.dc-regie-mail-form label{display:block;margin-bottom:10px}.dc-regie-mail-form input,.dc-regie-mail-form textarea{width:100%;margin-top:5px;border:1px solid #cfdee7;border-radius:9px;padding:9px}.dc-regie-mail-last{display:block;color:#6f8595;margin-top:9px}.dc-regie-list-search{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;margin-bottom:16px}.dc-regie-list-search input{border:1px solid #cfdee7;border-radius:10px;padding:10px 12px}.dc-regie-table-wrap{overflow:auto}.dc-regie-table{width:100%;border-collapse:collapse;min-width:980px}.dc-regie-table th,.dc-regie-table td{padding:11px 10px;border-bottom:1px solid #e3edf2;text-align:left;vertical-align:middle}.dc-regie-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#6d8494}.dc-regie-table td small{display:block;color:#718697;margin-top:3px}.dc-regie-status{display:inline-block;padding:3px 7px;border-radius:999px;background:#eef3f6;color:#697f8e;font-size:.72rem;font-weight:800;margin-right:4px}.dc-regie-status.ok{background:#e6f7ef;color:#20805a}.dc-regie-open{display:inline-block;padding:7px 10px}@media(max-width:850px){.dc-regie-delivery,.dc-regie-ticket-picker{grid-template-columns:1fr}.dc-regie-list-page .dc-regie-hero{align-items:flex-start}.dc-regie-table{min-width:760px}}

/* 0.24.72 billing/archive workflow */
.dc-regie-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.dc-regie-tabs a{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:10px;border:1px solid #d7e5ec;background:#f7fafc;color:#36586f;text-decoration:none;font-weight:800}.dc-regie-tabs a.active{background:#173b59;color:#fff;border-color:#173b59}.dc-regie-tabs a span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:rgba(255,255,255,.18);font-size:.72rem}.dc-regie-status.billed{background:#fff2d8;color:#8a5a00}.dc-regie-status.archived{background:#e9edf2;color:#4c5d6b}.dc-regie-row-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.dc-regie-row-actions form{margin:0}.dc-regie-state-btn{border:0;border-radius:9px;padding:7px 10px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.dc-regie-state-btn.billed{background:#f3a712;color:#2b2416}.dc-regie-state-btn.archive{background:#5e7180;color:#fff}.dc-regie-state-btn.restore{background:#dfeaf1;color:#244c67}.dc-regie-table td:nth-child(7){min-width:190px}.dc-regie-table td:nth-child(8){min-width:250px}


/* ===== SOURCE: public/css/regiezettel-02437.css ===== */
/* 0.24.37 – structured Regiezettel material, ticket-time import and text blocks */
.dc-regie-time-source{margin:0 0 14px;padding:12px;border:1px solid #d9e8ef;border-radius:12px;background:#f7fbfc}.dc-regie-time-source>label+label{margin-top:10px}.dc-regie-time-source small{display:block;color:#6f8493;margin-top:5px;font-weight:600}.dc-regie-time-source .dc-regie-check strong,.dc-regie-time-source .dc-regie-check small{display:block}.dc-regie-material-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 8px}.dc-regie-material-head strong,.dc-regie-material-head small{display:block}.dc-regie-material-head small{font-size:.75rem;color:#728798;margin-top:2px}.dc-regie-material-head button{border:1px solid #b9dce4;border-radius:9px;background:#eef9fb;color:#0a7d99;font-weight:800;padding:8px 11px}.dc-regie-materials{display:grid;gap:8px;margin-bottom:14px}.dc-regie-material-row{display:grid;grid-template-columns:minmax(0,1fr) 130px 42px;gap:8px;align-items:center}.dc-regie-material-row input{margin:0!important}.dc-material-remove{height:42px;border:1px solid #efc9c9;border-radius:9px;background:#fff5f5;color:#b64444}.dc-textblock-insert{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:8px;align-items:center;margin:0 0 10px;padding:10px;border:1px solid #d8e8ef;border-radius:11px;background:#f7fbfc}.dc-textblock-insert select{margin:0!important;min-height:40px}.dc-textblock-insert button,.dc-textblock-insert a{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;border:0;border-radius:9px;padding:8px 11px;font-weight:800;text-decoration:none}.dc-textblock-insert button{background:#18a7c0;color:#fff}.dc-textblock-insert a{background:#edf5f8;color:#37627a}.dc-textblock-page{max-width:1500px;margin:0 auto;padding:22px}.dc-textblock-layout{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:18px}.dc-textblock-list{display:grid;gap:8px}.dc-textblock-list>a{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 12px;border:1px solid #dfeaf0;border-radius:10px;text-decoration:none;color:#21475f;background:#fff}.dc-textblock-list strong,.dc-textblock-list small{display:block}.dc-textblock-list small{color:#708596;margin-top:3px}.dc-textblock-list em{font-style:normal;font-size:.72rem;font-weight:850;padding:4px 7px;border-radius:999px;background:#edf1f4;color:#697b88}.dc-textblock-list em.ok{background:#e5f6ee;color:#257a56}@media(max-width:950px){.dc-textblock-layout{grid-template-columns:1fr}}@media(max-width:700px){.dc-regie-material-row{grid-template-columns:minmax(0,1fr) 90px 42px}.dc-textblock-insert{grid-template-columns:1fr}.dc-textblock-insert button,.dc-textblock-insert a{width:100%}}

/* 0.24.38 branding + digital signature */
.dc-regie-hero{position:relative!important;padding-right:250px!important;}
.dc-regie-brand-logo{position:absolute;right:24px;top:18px;width:210px;height:84px;object-fit:contain;object-position:right center;background:#fff;border-radius:8px;padding:4px;}
.dc-regie-signature-box{margin-top:12px;border:1px solid #cfdee7;border-radius:12px;background:#f7fbfd;padding:12px;}
.dc-regie-signature-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;}
.dc-regie-signature-head small{display:block;color:#728999;margin-top:2px;}
.dc-regie-signature-canvas{display:block;width:100%;height:180px;border:1px dashed #9eb8c8;border-radius:10px;background:#fff;touch-action:none;cursor:crosshair;}
.dc-regie-signature-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:8px;}
.dc-regie-signature-actions button{border:1px solid #c8d9e3;border-radius:8px;background:#fff;color:#284e67;padding:8px 12px;font-weight:700;}
.dc-regie-signature-status{font-size:12px;color:#5c7789;}
@media(max-width:900px){.dc-regie-hero{padding-right:18px!important}.dc-regie-brand-logo{position:static;width:190px;height:72px;margin-top:12px}.dc-regie-signature-canvas{height:150px}}


/* ===== SOURCE: public/css/regiezettel-02439.css ===== */
/* 0.24.39: one-time digital signature processing / immutable archive state */
.dc-regie-sealed-notice{display:flex;align-items:flex-start;gap:11px;background:#eef8f5;color:#285c50;border:1px solid #c9e5dc}
.dc-regie-sealed-notice>i{font-size:1.35rem;color:#21866f;margin-top:1px}.dc-regie-sealed-notice strong,.dc-regie-sealed-notice span{display:block}.dc-regie-sealed-notice span{margin-top:3px;font-size:.82rem;line-height:1.45}
.dc-regie-signature-box.is-sealed{background:#f2f9f7;border-color:#c9e5dc}.dc-regie-signature-sealed{display:flex;align-items:flex-start;gap:13px;padding:5px 2px}.dc-regie-signature-sealed>i{font-size:2rem;color:#21866f}.dc-regie-signature-sealed strong,.dc-regie-signature-sealed small{display:block}.dc-regie-signature-sealed small{margin-top:4px;color:#5c786f;line-height:1.45}
.dc-regie-signature-privacy{display:flex;align-items:flex-start;gap:8px;margin-top:10px;padding:9px 10px;border-radius:9px;background:#edf7fa;color:#4f7183;font-size:12px;line-height:1.45}.dc-regie-signature-privacy>i{font-size:1.05rem;color:#168ba8;margin-top:1px}


/* ===== SOURCE: public/css/regiezettel-02443.css ===== */
/* 0.24.43: mobile-first Regiezettel quick flow. Desktop keeps all details available. */
.dc-regie-mobile-guide{display:none}
.dc-regie-fold,.dc-regie-subfold{border:1px solid #dce9ef;border-radius:13px;background:#fbfdfe;margin:0 0 16px;overflow:hidden}
.dc-regie-fold>summary,.dc-regie-subfold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;color:#244b64;font-weight:800;background:#f5fafc}
.dc-regie-fold>summary::-webkit-details-marker,.dc-regie-subfold>summary::-webkit-details-marker{display:none}
.dc-regie-fold>summary:after,.dc-regie-subfold>summary:after{content:'›';font-size:1.35rem;line-height:1;transition:transform .15s ease;color:#6c8798}
.dc-regie-fold[open]>summary:after,.dc-regie-subfold[open]>summary:after{transform:rotate(90deg)}
.dc-regie-fold>summary>span{display:flex;align-items:center;gap:8px;min-width:0}
.dc-regie-fold>summary>span>i{font-size:1.1rem;color:#139ab5}
.dc-regie-fold>summary>small,.dc-regie-subfold>summary>small{margin-left:auto;color:#748b9a;font-weight:650;font-size:.75rem;white-space:normal;text-align:right}
.dc-regie-fold-body,.dc-regie-subfold>*:not(summary){margin-left:14px;margin-right:14px}
.dc-regie-fold-body{padding:14px 0}
.dc-regie-subfold{margin-top:12px;background:#fff}
.dc-regie-subfold>summary{padding:10px 12px;background:#f8fbfc;font-size:.82rem}
.dc-regie-subfold[open]{padding-bottom:12px}
.dc-regie-order-core{margin-top:12px}
.dc-regie-quick-section{scroll-margin-top:76px;border:1px solid #dce9ef;border-radius:15px;background:#fff;padding:16px;margin:16px 0}
.dc-regie-quick-head{display:flex;align-items:center;gap:11px;margin-bottom:14px}
.dc-regie-quick-head>div{min-width:0}
.dc-regie-quick-head strong,.dc-regie-quick-head small{display:block}
.dc-regie-quick-head strong{color:#173f59;font-size:1rem}
.dc-regie-quick-head small{color:#708798;margin-top:2px;line-height:1.4}
.dc-regie-step-no{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#e8f8fb;color:#087f9a;font-weight:900;font-size:1rem}
.dc-regie-time-quick-grid{grid-template-columns:repeat(5,minmax(0,1fr));align-items:end}
.dc-regie-time-quick-grid label small{display:block;margin-top:4px;color:#78909e;font-size:.7rem;font-weight:600}
.dc-regie-work-label textarea{min-height:138px}
.dc-regie-save-mobile{display:none}

@media(max-width:760px){
  .dc-regie-page{padding:0!important}
  .dc-regie-hero{margin:0 0 10px!important;border-radius:13px!important;padding:13px 14px!important;gap:8px!important;box-shadow:none!important}
  .dc-regie-kicker{display:none!important}
  .dc-regie-hero h1{font-size:20px!important;margin:0 0 3px!important}
  .dc-regie-hero p{font-size:12px!important;line-height:1.35!important;max-width:100%!important}
  .dc-regie-brand-logo{width:118px!important;height:42px!important;margin:4px 0 0!important;padding:2px!important}
  .dc-regie-hero-actions{display:flex!important;gap:6px!important;width:100%!important}
  .dc-regie-hero-actions a{font-size:12px!important;padding:8px 10px!important;min-height:38px!important}
  .dc-regie-action-textblocks,.dc-regie-action-pdf,.dc-regie-action-print{display:none!important}
  .dc-regie-layout{display:block!important}
  .dc-regie-card{border-radius:13px!important;padding:12px!important;box-shadow:none!important}
  .dc-regie-card-head{margin-bottom:10px!important}
  .dc-regie-card-head>i{display:none!important}
  .dc-regie-card-head strong{font-size:16px!important}
  .dc-regie-card-head small{font-size:12px!important;line-height:1.35!important}
  .dc-regie-history{display:none!important}

  .dc-regie-mobile-guide{display:block;margin:0 0 12px;padding:12px;border-radius:13px;background:#eef9fb;border:1px solid #cce9ef}
  .dc-regie-mobile-guide-copy{display:flex;gap:9px;align-items:flex-start}
  .dc-regie-mobile-guide-copy>i{font-size:22px;color:#0d94af;margin-top:1px}
  .dc-regie-mobile-guide-copy strong,.dc-regie-mobile-guide-copy small{display:block}
  .dc-regie-mobile-guide-copy strong{color:#15455d;font-size:14px}
  .dc-regie-mobile-guide-copy small{color:#617f90;font-size:11px;line-height:1.35;margin-top:2px}
  .dc-regie-mobile-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}
  .dc-regie-mobile-steps a{display:flex;align-items:center;justify-content:center;gap:5px;min-height:38px;border-radius:9px;background:#fff;border:1px solid #d7e8ee;text-decoration:none;color:#244e66;font-size:12px;font-weight:800}
  .dc-regie-mobile-steps b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#15a0ba;color:#fff;font-size:11px}

  .dc-regie-fold,.dc-regie-subfold{margin-bottom:10px;border-radius:11px}
  .dc-regie-fold>summary,.dc-regie-subfold>summary{padding:11px 12px;min-height:46px;position:relative}
  .dc-regie-fold>summary{align-items:flex-start;flex-wrap:wrap}
  .dc-regie-fold>summary>small{order:3;width:100%;text-align:left;margin:-4px 26px 0 0;font-size:11px}
  .dc-regie-fold>summary:after{position:absolute;right:24px}
  .dc-regie-fold-body{padding:10px 0}
  .dc-regie-fold-body,.dc-regie-subfold>*:not(summary){margin-left:10px;margin-right:10px}
  .dc-regie-ticket-picker{grid-template-columns:1fr!important}
  .dc-regie-form label{font-size:13px!important}
  .dc-regie-form input,.dc-regie-form select,.dc-regie-form textarea{font-size:16px!important;min-height:46px!important;border-radius:10px!important;padding:11px!important}
  .dc-regie-form textarea{min-height:110px!important}

  .dc-regie-quick-section{scroll-margin-top:66px;margin:10px 0;padding:12px;border-radius:12px}
  .dc-regie-quick-head{margin-bottom:10px;gap:9px}
  .dc-regie-step-no{width:30px;height:30px;flex-basis:30px;font-size:14px}
  .dc-regie-quick-head strong{font-size:15px}
  .dc-regie-quick-head small{font-size:11px}
  .dc-regie-time-source{padding:9px!important;margin-bottom:10px!important}
  .dc-regie-time-source .dc-regie-check{padding:9px!important}
  .dc-regie-time-source .dc-regie-check small{font-size:10px!important}
  .dc-regie-time-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}
  .dc-regie-date-field,.dc-regie-worked-field{grid-column:1/-1}
  .dc-regie-worked-field input{font-weight:900;background:#f3fafc!important;color:#17657b!important}
  .dc-regie-time-quick-grid label small{margin-top:2px}
  .dc-regie-work-label textarea{min-height:140px!important}

  .dc-textblock-insert{grid-template-columns:1fr!important;padding:8px!important;margin:8px 0!important}
  .dc-textblock-insert a{display:none!important}
  .dc-textblock-insert button{min-height:44px!important}
  .dc-regie-material-head{align-items:flex-start!important;margin-top:8px!important}
  .dc-regie-material-head small{font-size:10px!important}
  .dc-regie-material-head button{white-space:nowrap;min-height:40px!important}
  .dc-regie-material-row{grid-template-columns:minmax(0,1fr) 78px 42px!important;gap:6px!important}
  .dc-regie-material-row input{min-width:0!important}
  .dc-material-remove{height:46px!important}

  .dc-regie-confirmation{display:block!important}
  .dc-regie-confirmation>label+label{margin-top:9px}
  .dc-regie-confirm-check{padding:10px!important}
  .dc-regie-confirm-check input{min-height:0!important;width:22px!important;height:22px!important;padding:0!important}
  .dc-regie-signature-box{padding:10px!important;margin-top:10px!important}
  .dc-regie-signature-head small{font-size:11px!important}
  .dc-regie-signature-canvas{height:190px!important;border-width:2px!important;border-style:solid!important;background:#fff!important}
  .dc-regie-signature-actions{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
  .dc-regie-signature-actions button{width:100%;min-height:44px;font-size:13px}
  .dc-regie-signature-status{font-size:11px!important;text-align:center}
  .dc-regie-signature-privacy{font-size:10px!important;padding:8px!important}

  .dc-regie-form-actions{position:sticky!important;bottom:8px!important;z-index:25!important;margin:12px -4px 0!important;padding:6px!important;border-radius:13px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 8px 28px rgba(17,65,91,.18)!important;backdrop-filter:blur(10px)}
  .dc-regie-form-actions button{width:100%!important;min-height:54px!important;border-radius:11px!important;font-size:16px!important;justify-content:center!important}
  .dc-regie-save-desktop{display:none!important}
  .dc-regie-save-mobile{display:inline!important}

  .dc-regie-delivery{grid-template-columns:1fr!important}
  .dc-regie-pdf-state{padding:11px!important;flex-wrap:wrap}
  .dc-regie-mail-form{padding:11px!important}
}

@media(max-width:420px){
  .dc-regie-hero-actions a{flex:1 1 auto;justify-content:center}
  .dc-regie-brand-logo{display:none!important}
  .dc-regie-mobile-steps a span{font-size:11px}
  .dc-regie-material-row{grid-template-columns:minmax(0,1fr) 72px 40px!important}
}


/* ===== SOURCE: public/css/planning-ui-02421.css ===== */
/* =========================================================
   D-Connect Workspace 0.24.21
   Planning readability + multi-staff UX
========================================================= */

/* Give the planner room to breathe. 07:00-18:00 is still a fixed 15 minute
   raster, but every slot is wide enough that short entries stay readable. */
.dc-planning-page-v1{
  padding:18px 20px 32px!important;
}
.dc-planning-layout-v1{
  grid-template-columns:280px minmax(0,1fr)!important;
  gap:14px!important;
}
.dc-planning-sidebar-v1{
  max-height:calc(100vh - 150px)!important;
  border-radius:14px!important;
}
.dc-planning-sidebar-title-v1{
  padding:14px 15px!important;
}
.dc-planning-sidebar-title-v1 h2{
  font-size:16px!important;
}
.dc-planning-sidebar-title-v1 small{
  font-size:10px!important;
}
.dc-planning-user-list-v1{
  padding:8px!important;
}
.dc-planning-user-list-v1 label{
  min-height:52px!important;
  padding:8px 9px!important;
  grid-template-columns:20px 11px minmax(0,1fr)!important;
  gap:8px!important;
}
.dc-planning-user-list-v1 strong{
  font-size:11px!important;
}
.dc-planning-user-list-v1 small{
  font-size:9px!important;
  line-height:1.25!important;
}
.dc-planning-type-filter-v1{
  padding:12px 15px!important;
}
.dc-planning-type-filter-v1 h3{
  font-size:11px!important;
}
.dc-planning-type-filter-v1 label{
  min-height:36px!important;
  font-size:10px!important;
}
.dc-planning-show-all-v1{
  min-height:40px!important;
  font-size:10px!important;
}

.dc-planning-calendar-v1{
  border-radius:14px!important;
}
.dc-planning-toolbar-v1{
  min-height:68px!important;
  padding:11px 14px!important;
}
.dc-planning-toolbar-v1 h2{
  font-size:18px!important;
}
.dc-planning-nav-v1 a,
.dc-planning-view-v1 a,
.dc-planning-view-v1 button{
  min-height:38px!important;
  padding:0 11px!important;
  font-size:9.5px!important;
}
.dc-planning-day-tabs-v18{
  padding:10px!important;
  gap:8px!important;
}
.dc-planning-day-tabs-v18 a{
  min-height:50px!important;
  border-radius:9px!important;
}
.dc-planning-day-tabs-v18 strong{
  font-size:10px!important;
}
.dc-planning-day-tabs-v18 span{
  font-size:9px!important;
}

.dc-planning-grid-wrap-horizontal-v18{
  max-height:calc(100vh - 285px)!important;
  padding:10px!important;
  scroll-padding-left:220px;
}
.dc-planning-grid-horizontal-v18{
  min-width:2332px!important; /* 220 + 44 * 48 */
  border-radius:12px!important;
}
.dc-planning-corner-horizontal-v18{
  padding:9px 12px!important;
}
.dc-planning-corner-horizontal-v18 strong{
  font-size:11px!important;
}
.dc-planning-corner-horizontal-v18 span{
  font-size:8px!important;
}
.dc-planning-time-head-v18{
  padding:0 9px!important;
  font-size:9px!important;
  letter-spacing:.01em;
}
.dc-planning-employee-v18{
  min-width:220px!important;
  padding:10px 12px!important;
  grid-template-columns:12px minmax(0,1fr)!important;
  gap:9px!important;
  background:linear-gradient(180deg,#f8fbfd,#f1f7fa)!important;
}
.dc-planning-employee-v18 strong{
  font-size:10.5px!important;
  line-height:1.25!important;
}
.dc-planning-employee-v18 small{
  font-size:8.5px!important;
  line-height:1.2!important;
}
.dc-planning-employee-v18 .dc-planning-user-dot-v1{
  width:9px!important;
  height:9px!important;
}
.dc-planning-slot-horizontal-v18{
  min-width:48px!important;
  min-height:76px!important;
}

/* Events use the full row height instead of looking like thin labels. */
.dc-planning-event-horizontal-v18{
  min-height:64px!important;
  margin:5px 3px!important;
  padding:7px 9px!important;
  border-radius:8px!important;
  justify-content:flex-start!important;
  box-shadow:0 2px 8px rgba(5,42,66,.10)!important;
}
.dc-planning-event-horizontal-v18 small.dc-planning-event-kind-v1{
  margin:0 0 2px!important;
  font-size:7.5px!important;
  line-height:1.15!important;
  letter-spacing:.045em!important;
}
.dc-planning-event-horizontal-v18 strong{
  font-size:10px!important;
  line-height:1.2!important;
}
.dc-planning-event-horizontal-v18>span:not(.dc-planning-pause-block-v1),
.dc-planning-event-horizontal-v18>em{
  margin-top:2px!important;
  font-size:8px!important;
  line-height:1.15!important;
}
.dc-planning-event-horizontal-v18[data-planning-users*=',']{
  outline:1px solid rgba(13,125,136,.18);
  outline-offset:-1px;
}
.dc-planning-event-horizontal-v18[data-planning-users*=','] small.dc-planning-event-kind-v1::before{
  content:'TEAM · ';
  color:#087d88;
  font-weight:900;
}

/* Multi-person control should be obvious and finger friendly. */
.dc-plan-tech-multi-v21{
  grid-column:1 / -1;
}
.dc-plan-tech-multi-v21>span{
  display:flex;
  align-items:baseline;
  gap:6px;
}
.dc-plan-tech-multi-v21>span small{
  color:#7890a1;
  font-weight:650;
}
.dc-plan-tech-multi-v21 select[multiple]{
  min-height:142px!important;
  padding:5px!important;
  background:#f9fcfd!important;
}
.dc-plan-tech-multi-v21 select[multiple] option{
  padding:8px 9px;
  margin:2px 0;
  border-radius:6px;
}
.dc-plan-tech-multi-v21 select[multiple] option:checked{
  background:linear-gradient(90deg,#d9f4f6,#eaf9fa);
  color:#075c68;
  font-weight:800;
}
.dc-plan-tech-multi-v21>small{
  color:#718899!important;
  font-size:9px!important;
  line-height:1.35!important;
}

@media(max-width:1200px){
  .dc-planning-layout-v1{
    grid-template-columns:245px minmax(0,1fr)!important;
  }
}

@media(max-width:1050px){
  .dc-planning-layout-v1{
    grid-template-columns:1fr!important;
  }
  .dc-planning-sidebar-v1{
    max-height:none!important;
  }
  .dc-planning-user-list-v1{
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:3px;
  }
  .dc-planning-type-filter-v1{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px 20px;
  }
  .dc-planning-type-filter-v1 h3{
    width:100%;
    margin-bottom:0!important;
  }
}

@media(max-width:760px){
  .dc-planning-page-v1{
    padding:10px 8px 22px!important;
  }
  .dc-planning-head-v1{
    align-items:stretch!important;
    flex-direction:column!important;
  }
  .dc-planning-head-v1 h1{
    font-size:21px!important;
  }
  .dc-planning-head-v1 p{
    font-size:11px!important;
    line-height:1.4!important;
  }
  .dc-planning-head-actions-v1,
  .dc-planning-head-actions-v1 button{
    width:100%!important;
  }
  .dc-planning-head-actions-v1 button{
    min-height:46px!important;
    justify-content:center!important;
    font-size:12px!important;
  }
  .dc-planning-sidebar-title-v1{
    padding:11px 12px!important;
  }
  .dc-planning-user-list-v1{
    display:flex!important;
    gap:6px!important;
    overflow-x:auto!important;
    scroll-snap-type:x proximity;
    padding:8px!important;
  }
  .dc-planning-user-list-v1 label{
    flex:0 0 188px;
    min-height:48px!important;
    scroll-snap-align:start;
    border:1px solid #e0eaf0;
    background:#fbfdfe;
  }
  .dc-planning-type-filter-v1{
    padding:8px 10px!important;
  }
  .dc-planning-show-all-v1{
    margin-bottom:8px!important;
  }
  .dc-planning-toolbar-v1{
    min-height:0!important;
    padding:9px!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .dc-planning-toolbar-v1 h2{
    order:-1;
    font-size:16px!important;
  }
  .dc-planning-nav-v1,
  .dc-planning-view-v1{
    justify-content:center!important;
  }
  .dc-planning-nav-v1 a,
  .dc-planning-view-v1 a,
  .dc-planning-view-v1 button{
    min-height:42px!important;
    font-size:11px!important;
  }
  .dc-planning-day-tabs-v18{
    display:flex!important;
    overflow-x:auto!important;
    gap:6px!important;
    padding:8px!important;
    scroll-snap-type:x proximity;
  }
  .dc-planning-day-tabs-v18 a{
    flex:0 0 96px;
    min-height:46px!important;
    scroll-snap-align:start;
  }
  .dc-planning-grid-wrap-horizontal-v18{
    max-height:68vh!important;
    padding:6px!important;
    scroll-padding-left:156px;
  }
  /* Keep the desktop grid scale so entries remain readable. Only the frozen
     employee column becomes narrower on phones. The inline grid declaration
     is intentionally overridden here. */
  .dc-planning-grid-horizontal-v18{
    min-width:2268px!important;
    grid-template-columns:156px repeat(44,48px)!important;
  }
  .dc-planning-corner-horizontal-v18,
  .dc-planning-employee-v18{
    min-width:156px!important;
    width:156px!important;
  }
  .dc-planning-employee-v18{
    padding:9px 8px!important;
    gap:6px!important;
  }
  .dc-planning-employee-v18 strong{
    font-size:9.5px!important;
  }
  .dc-planning-employee-v18 small{
    font-size:7.5px!important;
    white-space:normal!important;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }
  .dc-planning-legend-v1{
    overflow-x:auto;
    white-space:nowrap;
  }
  .dc-plan-modal-backdrop-v1{
    padding:0!important;
    align-items:end!important;
  }
  .dc-plan-modal-v1{
    width:100vw!important;
    max-width:none!important;
    max-height:94dvh!important;
    margin:0!important;
    padding:15px 13px calc(16px + env(safe-area-inset-bottom))!important;
    border-radius:18px 18px 0 0!important;
  }
  .dc-plan-modal-grid-v1{
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  .dc-plan-modal-v1 select,
  .dc-plan-modal-v1 input,
  .dc-plan-modal-v1 textarea{
    min-height:46px!important;
    font-size:16px!important; /* prevents iOS input zoom */
  }
  .dc-plan-tech-multi-v21 select[multiple]{
    min-height:180px!important;
  }
  .dc-plan-modal-actions-v1{
    position:sticky;
    bottom:-15px;
    z-index:3;
    margin:10px -13px -15px!important;
    padding:10px 13px calc(10px + env(safe-area-inset-bottom));
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    background:rgba(255,255,255,.97);
    border-top:1px solid #e1eaf0;
    backdrop-filter:blur(8px);
  }
  .dc-plan-modal-actions-v1 span{
    display:none!important;
  }
  .dc-plan-modal-actions-v1 a,
  .dc-plan-modal-actions-v1 button{
    min-height:46px!important;
    justify-content:center!important;
    font-size:11px!important;
  }
  .dc-plan-modal-actions-v1 .primary{
    grid-column:1 / -1;
  }
}


/* ===== SOURCE: public/css/mobile-02421.css ===== */
/* =========================================================
   D-Connect Workspace 0.24.21
   Mobile-first shell / ticket workflow for field staff
========================================================= */

@media(max-width:900px){
  html,body{max-width:100%;overflow-x:hidden!important}
  body.dc-theme-v5{background:#f3f7fb!important}
  body.dc-theme-v5 .page-wrapper{
    margin-left:0!important;
    padding-top:60px!important;
    width:100%!important;
    min-width:0!important;
  }
  body.dc-theme-v5 .page-body{
    padding:12px!important;
    min-width:0!important;
  }
  body.dc-theme-v5 main#page{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }

  #dc-app-header{
    left:0!important;
    height:60px!important;
    padding:0 10px!important;
    gap:8px!important;
  }
  .dc-mobile-menu{
    display:grid!important;
    flex:0 0 42px;
    width:42px!important;
    height:42px!important;
    place-items:center;
  }
  .dc-global-search{
    flex:1 1 auto!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    height:42px!important;
    padding:0 9px!important;
  }
  .dc-global-search input{
    min-width:0!important;
    font-size:14px!important;
  }
  .dc-global-search kbd{display:none!important}
  .dc-header-actions{
    flex:0 0 auto!important;
    gap:1px!important;
  }
  .dc-icon-btn{
    width:38px!important;
    height:38px!important;
  }
  .dc-header-actions .dc-icon-btn:nth-of-type(2){display:none!important}
  #dc-app-header .dc-user-slot{
    max-width:46px!important;
    overflow:visible!important;
  }
  #dc-app-header .dc-user-native .dropdown-toggle,
  #dc-app-header .dc-user-native>a,
  #dc-app-header .dc-user-native>button{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    padding:0!important;
    justify-content:center!important;
  }
  #dc-app-header .dc-user-native .dropdown-toggle>span,
  #dc-app-header .dc-user-native .user-info{display:none!important}

  #dc-app-sidebar{
    z-index:1100!important;
    width:min(86vw,330px)!important;
    max-width:330px!important;
    transform:translateX(-105%)!important;
    transition:transform .22s ease,box-shadow .22s ease!important;
    box-shadow:none!important;
    padding-bottom:env(safe-area-inset-bottom);
  }
  body.dc-sidebar-open #dc-app-sidebar{
    transform:translateX(0)!important;
    box-shadow:18px 0 50px rgba(2,31,49,.28)!important;
  }
  body.dc-sidebar-open::before{
    content:"";
    position:fixed;
    z-index:1090;
    inset:0;
    background:rgba(3,31,48,.42);
    backdrop-filter:blur(1px);
  }
  #dc-app-sidebar .dc-logo{min-height:72px!important}
  #dc-app-sidebar .dc-nav-link{
    min-height:48px!important;
    font-size:14px!important;
  }

  /* Universal finger-size controls and iOS zoom protection. */
  body.dc-theme-v5 main#page input:not([type="checkbox"]):not([type="radio"]),
  body.dc-theme-v5 main#page select,
  body.dc-theme-v5 main#page textarea{
    min-height:44px!important;
    font-size:16px!important;
  }
  body.dc-theme-v5 main#page input[type="checkbox"],
  body.dc-theme-v5 main#page input[type="radio"]{
    min-width:20px!important;
    min-height:20px!important;
  }
  body.dc-theme-v5 main#page .btn,
  body.dc-theme-v5 main#page button,
  body.dc-theme-v5 main#page a.dc-primary-btn,
  body.dc-theme-v5 main#page a.dc-secondary-btn{
    min-height:42px;
  }

  /* Do not allow custom two/three-column desktop forms to crush on phones. */
  .dc-new-ticket-grid,
  .dc-customer-layout,
  .dc-onboard-grid,
  .dc-onboard-auto-grid,
  .dc-customer-form-grid,
  .dc-ticket-custom-grid,
  .dc-ticket-content-grid,
  .dc-ticket-custom-assignment,
  .dc-time-account-grid,
  .dc-action-grid,
  .dc-edit-two-col,
  .dc-regie-layout,
  .dc-regie-grid,
  .dc-prepaid-grid,
  .dc-prepaid-kpis,
  .dc-assets-customer-layout{
    grid-template-columns:1fr!important;
  }

  /* Ticket details: main content first, side rails below. */
  .dc-ticket-custom-main,
  .dc-ticket-custom-side,
  .dc-ticket-main-column,
  .dc-ticket-details-column,
  .dc-ticket-nav-column,
  .dc-create-ticket-main,
  .dc-create-ticket-side,
  .dc-customer-right{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    position:static!important;
    inset:auto!important;
  }
  .dc-ticket-custom-hero,
  .dc-customer-head,
  .dc-create-ticket-head,
  .dc-regie-hero{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:10px!important;
  }
  .dc-ticket-hero-actions,
  .dc-customer-ticket-actions,
  .dc-regie-hero-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .dc-ticket-hero-actions>* ,
  .dc-customer-ticket-actions>* ,
  .dc-regie-hero-actions>*{
    width:100%!important;
    justify-content:center!important;
  }

  /* Long tab bars and toolbars become swipeable instead of wrapping into noise. */
  .dc-ticket-custom-tabs,
  .dc-list-tabs,
  .dc-ticket-tabs,
  .dc-edit-modal-tabs,
  .dc-customer-ticket-tabs{
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    flex-wrap:nowrap!important;
    white-space:nowrap!important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }
  .dc-ticket-custom-tabs>* ,
  .dc-list-tabs>* ,
  .dc-ticket-tabs>* ,
  .dc-edit-modal-tabs>* ,
  .dc-customer-ticket-tabs>*{
    flex:0 0 auto!important;
  }

  /* D-Connect ticket lists become cards. This is intentionally limited to
     custom tables so native GLPI admin tables keep their own horizontal scroll. */
  .dc-ticket-table-wrap{
    overflow:visible!important;
    width:100%!important;
  }
  .dc-ticket-table{
    min-width:0!important;
    width:100%!important;
    display:block!important;
  }
  .dc-ticket-table thead{display:none!important}
  .dc-ticket-table tbody{
    display:grid!important;
    gap:9px!important;
  }
  .dc-ticket-table tbody tr{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    gap:5px 10px!important;
    padding:11px!important;
    border:1px solid #dce7ed!important;
    border-radius:11px!important;
    background:#fff!important;
    box-shadow:0 3px 12px rgba(5,42,66,.045);
  }
  .dc-ticket-table tbody td{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  .dc-ticket-table tbody td:first-child{
    grid-column:1 / -1;
  }
  .dc-ticket-table tbody td:last-child{
    justify-self:end;
  }
  .dc-ticket-table .dc-ticket-name{
    font-size:14px!important;
    line-height:1.35!important;
  }

  /* Customer navigation: list above details. */
  .dc-customer-layout{
    gap:10px!important;
  }
  .dc-customer-list,
  .dc-customer-tree{
    width:100%!important;
    max-width:none!important;
  }
  .dc-customer-group-toggle,
  .dc-customer-items a,
  .dc-customer-tree-line{
    min-height:46px!important;
  }
  .dc-customer-ticket-toolbar,
  .dc-list-toolbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .dc-customer-ticket-filters{
    max-width:100%!important;
    overflow-x:auto!important;
    display:flex!important;
    flex-wrap:nowrap!important;
  }

  /* Modal workflows become bottom sheets / nearly full screen. */
  .dc-edit-modal-backdrop,
  .dc-mail-modal-backdrop,
  .dc-confirm-backdrop{
    padding:0!important;
    align-items:end!important;
  }
  .dc-edit-modal,
  .dc-mail-modal,
  .dc-confirm-modal{
    width:100vw!important;
    max-width:none!important;
    max-height:94dvh!important;
    margin:0!important;
    border-radius:18px 18px 0 0!important;
  }
  .dc-edit-modal-body,
  .dc-mail-modal-body,
  .dc-confirm-content{
    overflow:auto!important;
    -webkit-overflow-scrolling:touch;
  }

  /* Native GLPI content still needs to be usable for administration pages. */
  body.dc-theme-v5 main#page .table-responsive{
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
  }
  body.dc-theme-v5 main#page table.table{
    max-width:none;
  }
  body.dc-theme-v5 main#page .card{
    max-width:100%!important;
  }

  .dc-regie-page,
  .dc-customer-onboard-page,
  .dc-custom-page,
  .dc-prepaid-page{
    padding-left:0!important;
    padding-right:0!important;
  }
}

@media(max-width:560px){
  body.dc-theme-v5 .page-body{padding:8px!important}
  #dc-app-header{padding:0 7px!important;gap:5px!important}
  .dc-mobile-menu{width:40px!important;height:40px!important;flex-basis:40px!important}
  .dc-global-search{height:40px!important;padding:0 8px!important}
  .dc-global-search i{font-size:18px!important}
  .dc-global-search input::placeholder{font-size:0}
  .dc-global-search input::placeholder{color:transparent!important}
  .dc-global-search input{font-size:13px!important}
  .dc-header-actions .dc-icon-btn:not(:last-child){display:none!important}
  .dc-ticket-hero-actions,
  .dc-customer-ticket-actions,
  .dc-regie-hero-actions{
    grid-template-columns:1fr!important;
  }
  .dc-ticket-custom-title,
  .dc-custom-page-head h1,
  .dc-customer-head h1,
  .dc-regie-hero h1{
    font-size:21px!important;
    line-height:1.2!important;
  }
}


/* ===== SOURCE: public/css/upgrade-02422.css ===== */
/* =========================================================
   D-Connect Workspace 0.24.22
   Private customers, device wording, planner readability
   ========================================================= */

/* Ticket list: a shared GLPI entity must not hide the actual private contact. */
.dc-ticket-table .dc-ticket-private-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin:0 7px 3px 0;
  padding:2px 7px;
  border-radius:999px;
  background:#e5f7f8;
  color:#087884;
  font-size:8px;
  font-weight:900;
  letter-spacing:.045em;
  text-transform:uppercase;
  vertical-align:middle;
}
.dc-ticket-table .dc-ticket-customer-label{
  display:inline;
  font-size:11px;
  color:#173c56;
}
.dc-private-customer-note{
  display:flex!important;
  align-items:center;
  gap:5px;
  margin-top:5px;
  color:#23828b!important;
  font-weight:700;
}

/* Customer/device navigation labels are intentionally non-technical. */
.dc-assets-page-head h1{letter-spacing:-.025em}
.dc-assets-page-head p{max-width:760px}
.dc-assets-customer-group-items a>span:not(.dc-assets-tree-line){
  min-width:0;
  display:flex;
  flex-direction:column;
}
.dc-assets-customer-group-items a>span:not(.dc-assets-tree-line) small{
  margin-top:2px;
  color:#7d93a3;
  font-size:9px;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* -------------------- Planning -------------------- */
.dc-planning-layout-v1{
  grid-template-columns:245px minmax(0,1fr)!important;
  gap:12px!important;
}
.dc-planning-grid-wrap-horizontal-v18{
  padding:8px!important;
  max-height:calc(100vh - 276px)!important;
  background:#f6fafc;
}
.dc-planning-grid-horizontal-v18{
  min-width:1412px!important; /* 190 + 44 * 28 */
  border:1px solid #dce9ef!important;
  box-shadow:0 3px 14px rgba(10,54,80,.06);
}
.dc-planning-corner-horizontal-v18,
.dc-planning-employee-v18{
  min-width:190px!important;
  width:190px!important;
}
.dc-planning-employee-v18{
  padding:8px 10px!important;
  min-height:72px!important;
  background:#f9fcfd!important;
  border-right:1px solid #d7e5ec!important;
}
.dc-planning-employee-v18 strong{
  font-size:11px!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.dc-planning-employee-v18 small{
  margin-top:2px;
  font-size:8.5px!important;
  font-weight:700;
  color:#718b9e!important;
}
.dc-planning-slot-horizontal-v18{
  min-width:28px!important;
  min-height:72px!important;
  border-radius:0!important;
  border-top:0!important;
  border-bottom:1px solid #e1ebf0!important;
  border-right:1px solid #edf3f6!important;
  background:#fff!important;
}
.dc-planning-slot-horizontal-v18:nth-of-type(4n){
  border-right-color:#cfdee6!important;
}
.dc-planning-time-head-v18{
  padding:0 6px!important;
  justify-content:flex-start!important;
  font-size:9px!important;
  font-weight:900!important;
  color:#244c67!important;
  background:#edf5f8!important;
  border-right:1px solid #ccdde5!important;
}
.dc-planning-event-horizontal-v18{
  min-height:58px!important;
  margin:6px 2px!important;
  padding:6px 7px!important;
  border-radius:7px!important;
  overflow:hidden!important;
}
.dc-planning-event-horizontal-v18 strong,
.dc-planning-event-horizontal-v18>span:not(.dc-planning-pause-block-v1),
.dc-planning-event-horizontal-v18>em{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dc-planning-event-horizontal-v18 strong{font-size:9.5px!important}
.dc-planning-event-horizontal-v18>span:not(.dc-planning-pause-block-v1){font-size:7.8px!important}
.dc-planning-event-horizontal-v18>em{font-size:7.6px!important;font-weight:800!important}
.dc-planning-event-short-v22 small,
.dc-planning-event-short-v22 strong,
.dc-planning-event-short-v22>span:not(.dc-planning-pause-block-v1){display:none!important}
.dc-planning-event-short-v22>em{font-size:7px!important}
.dc-planning-event-medium-v22>span:not(.dc-planning-pause-block-v1){display:none!important}

/* Friendly multi-person chooser instead of Ctrl/Cmd native selection. */
.dc-plan-tech-picker-v22{
  grid-column:1/-1;
  display:block!important;
  padding:0!important;
}
.dc-plan-tech-picker-head-v22{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:7px;
}
.dc-plan-tech-picker-head-v22>span:first-child{
  display:flex;
  align-items:baseline;
  gap:7px;
  color:#173c56;
}
.dc-plan-tech-picker-head-v22 strong{font-size:11px}
.dc-plan-tech-picker-head-v22 small{font-size:9px;color:#758d9d;font-weight:650}
.dc-plan-tech-count-v22{
  flex:0 0 auto;
  padding:4px 8px;
  border-radius:999px;
  background:#e7f6f7;
  color:#087985;
  font-size:9px!important;
  font-weight:900;
}
.dc-plan-tech-native-v22{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  margin:0!important;
  padding:0!important;
}
.dc-plan-tech-cards-v22{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  max-height:190px;
  overflow:auto;
  padding:2px;
}
.dc-plan-tech-card-v22{
  display:grid;
  grid-template-columns:30px minmax(0,1fr) 20px;
  align-items:center;
  gap:8px;
  min-height:48px;
  padding:7px 8px;
  border:1px solid #dce8ee;
  border-radius:10px;
  background:#fbfdfe;
  color:#173c56;
  text-align:left;
  transition:.14s ease;
}
.dc-plan-tech-card-v22:hover{border-color:#9ecfd4;background:#f6fbfc}
.dc-plan-tech-card-v22.selected{
  border-color:#45b7c1;
  background:linear-gradient(135deg,#e7f9fa,#f7fdfd);
  box-shadow:inset 0 0 0 1px rgba(44,170,182,.12);
}
.dc-plan-tech-avatar-v22{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#e6f0f5;
  color:#2c6684;
  font-size:11px;
  font-weight:900;
}
.dc-plan-tech-card-v22.selected .dc-plan-tech-avatar-v22{background:#36aebb;color:#fff}
.dc-plan-tech-copy-v22{display:flex;min-width:0;flex-direction:column}
.dc-plan-tech-copy-v22 strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dc-plan-tech-copy-v22 small{font-size:8px;color:#758d9d;font-weight:700}
.dc-plan-tech-card-v22>i{opacity:0;color:#15909b;font-size:16px}
.dc-plan-tech-card-v22.selected>i{opacity:1}
.dc-plan-tech-help-v22{
  display:block;
  margin-top:6px;
  color:#70899a!important;
  font-size:9px!important;
  line-height:1.35;
}

@media(max-width:1200px){
  .dc-planning-layout-v1{grid-template-columns:220px minmax(0,1fr)!important}
  .dc-plan-tech-cards-v22{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:1050px){
  .dc-planning-layout-v1{grid-template-columns:1fr!important}
  .dc-planning-grid-wrap-horizontal-v18{max-height:62vh!important}
}

@media(max-width:760px){
  .dc-planning-grid-horizontal-v18{
    --dc-employee-col:142px!important;
    --dc-slot-width:27px!important;
    --dc-row-height:68px!important;
    min-width:1330px!important;
  }
  .dc-planning-corner-horizontal-v18,
  .dc-planning-employee-v18{min-width:142px!important;width:142px!important}
  .dc-planning-slot-horizontal-v18{min-width:27px!important;min-height:68px!important}
  .dc-planning-event-horizontal-v18{min-height:54px!important}
  .dc-plan-tech-cards-v22{grid-template-columns:1fr;max-height:230px}
  .dc-plan-tech-card-v22{min-height:52px;padding:8px 10px}
  .dc-plan-tech-picker-head-v22{position:sticky;top:0;z-index:2;background:#fff;padding:4px 0}
}


/* ===== SOURCE: public/css/auth-stability-02426.css ===== */
/* D-Connect Workspace 0.24.26 - authentication stability hotfix.
   Never make an anonymous GLPI form invisible while JavaScript is waiting. */
body.welcome-anonymous .main-content-card{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

/* 0.24.25 used observer-driven route classes. They are no longer used. */
body:not(.dc-login-v25) .dc-login-shell-v25,
body:not(.dc-mfa-v25) .dc-mfa-shell-v25{
  pointer-events:auto!important;
}


/* ===== SOURCE: public/css/auth-mfa-native-02426.css ===== */
/* D-Connect Workspace 0.24.26 - safe native GLPI MFA.
   No DOM reparenting, no hidden controls, no observer. */
body.welcome-anonymous.dc-mfa-native-v26{
  min-height:100vh!important;
  background:
    radial-gradient(circle at 82% 18%,rgba(255,255,255,.72),transparent 27rem),
    radial-gradient(circle at 15% 72%,rgba(34,172,226,.18),transparent 34rem),
    linear-gradient(135deg,#9bdcff 0%,#e9f7ff 52%,#b8e5fb 100%)!important;
}
body.welcome-anonymous.dc-mfa-native-v26 main#page,
body.welcome-anonymous.dc-mfa-native-v26 main#page.page-anonymous{
  min-height:100vh!important;
  background:transparent!important;
}
body.welcome-anonymous.dc-mfa-native-v26 main#page>.flex-fill,
body.welcome-anonymous.dc-mfa-native-v26 main#page.page-anonymous>.flex-fill{
  min-height:100vh!important;
  margin:0!important;
  padding:32px 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .container-tight{
  width:min(560px,94vw)!important;
  max-width:560px!important;
  margin:0 auto!important;
  padding:0!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .container-tight::before,
body.welcome-anonymous.dc-mfa-native-v26 .container-tight::after{
  content:none!important;
  display:none!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card,
body.welcome-anonymous.dc-mfa-native-v26 .card{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border:1px solid rgba(201,220,232,.95)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 28px 80px rgba(7,63,96,.20)!important;
  overflow:visible!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{
  padding:34px 36px!important;
  background:#fff!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form,
body.welcome-anonymous.dc-mfa-native-v26 form *{
  visibility:visible;
}
body.welcome-anonymous.dc-mfa-native-v26 form{
  opacity:1!important;
  display:block!important;
  pointer-events:auto!important;
  position:relative!important;
  z-index:2!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form input:not([type="hidden"]),
body.welcome-anonymous.dc-mfa-native-v26 form button,
body.welcome-anonymous.dc-mfa-native-v26 form select,
body.welcome-anonymous.dc-mfa-native-v26 form textarea{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form input:not([type="hidden"]){
  min-height:48px!important;
  border:1px solid #cbdde8!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#173b59!important;
  font-size:16px!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form .btn-primary,
body.welcome-anonymous.dc-mfa-native-v26 form button[type="submit"],
body.welcome-anonymous.dc-mfa-native-v26 form input[type="submit"]{
  min-height:48px!important;
  border-color:#36b8c6!important;
  background:#36b8c6!important;
  color:#fff!important;
  font-weight:800!important;
}
@media(max-width:600px){
  body.welcome-anonymous.dc-mfa-native-v26 main#page>.flex-fill,
  body.welcome-anonymous.dc-mfa-native-v26 main#page.page-anonymous>.flex-fill{
    padding:14px!important;
    align-items:flex-start!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{
    padding:26px 22px!important;
  }
}


/* ===== SOURCE: public/css/auth-mfa-02428.css ===== */
/* D-Connect Workspace 0.24.28
   Professional MFA surface while GLPI keeps complete ownership of the native
   form, OTP inputs, CSRF token and submit actions. No DOM reparenting. */
body.welcome-anonymous.dc-mfa-native-v26 main#page>.flex-fill,
body.welcome-anonymous.dc-mfa-native-v26 main#page.page-anonymous>.flex-fill{
  padding:28px 18px!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .container-tight{
  width:min(1080px,94vw)!important;
  max-width:1080px!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card{
  position:relative!important;
  min-height:560px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.9)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  box-shadow:0 30px 90px rgba(8,63,94,.24)!important;
}
/* The left visual is paint-only. The native GLPI MFA DOM never moves. */
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:48%;
  display:block;
  background:
    linear-gradient(180deg,rgba(4,42,83,.03),rgba(1,42,82,.10)),
    url("../img/dc-service-desk-login-02419.webp") center center/cover no-repeat;
  border-right:1px solid rgba(165,204,224,.55);
  pointer-events:none;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>*{
  position:relative!important;
  z-index:1!important;
  width:52%!important;
  margin-left:48%!important;
  box-sizing:border-box!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-header{
  padding:34px 34px 0!important;
  border:0!important;
  background:transparent!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{
  padding:54px 42px 30px!important;
  background:transparent!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body::before{
  content:"SICHERER ZUGANG\A Zwei-Faktor-Anmeldung";
  white-space:pre;
  display:block;
  margin-bottom:28px;
  color:#0a356a;
  font-size:30px;
  line-height:1.25;
  font-weight:850;
  letter-spacing:-.025em;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body::after{
  content:"Code aus der Authenticator-App eingeben";
  display:block;
  margin-top:18px;
  color:#6d8293;
  font-size:12px;
  line-height:1.5;
  text-align:center;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-footer{
  padding:18px 34px 30px!important;
  border-top:1px solid #e5edf2!important;
  background:transparent!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form{
  margin:0!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form .form-control,
body.welcome-anonymous.dc-mfa-native-v26 form input:not([type="hidden"]){
  border-color:#cbdde8!important;
  background:#fff!important;
  color:#123957!important;
  box-shadow:none!important;
}
/* GLPI 11 renders TOTP as six individual inputs. Keep them compact and clear. */
body.welcome-anonymous.dc-mfa-native-v26 form input[inputmode="numeric"],
body.welcome-anonymous.dc-mfa-native-v26 form input[autocomplete="one-time-code"]{
  min-width:46px!important;
  min-height:54px!important;
  border-radius:11px!important;
  font-size:20px!important;
  font-weight:800!important;
  text-align:center!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form input:focus{
  border-color:#34b6c6!important;
  box-shadow:0 0 0 3px rgba(52,182,198,.14)!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card .btn-primary,
body.welcome-anonymous.dc-mfa-native-v26 form .btn-primary,
body.welcome-anonymous.dc-mfa-native-v26 form button[type="submit"],
body.welcome-anonymous.dc-mfa-native-v26 form input[type="submit"]{
  min-height:46px!important;
  border-radius:10px!important;
  border-color:#35b6c6!important;
  background:linear-gradient(90deg,#35b6c6,#3bb9c9)!important;
  color:#fff!important;
  font-weight:800!important;
  box-shadow:0 10px 24px rgba(48,166,184,.18)!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card .btn-link,
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card a{
  font-weight:650;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card .text-danger,
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card a.text-danger{
  color:#c23535!important;
}
@media(max-width:820px){
  body.welcome-anonymous.dc-mfa-native-v26 .container-tight{
    width:min(620px,94vw)!important;
    max-width:620px!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card{
    min-height:0!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card::before{
    display:none!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>*{
    width:100%!important;
    margin-left:0!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{
    padding:34px 30px 24px!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body::before{
    font-size:27px;
    margin-bottom:24px;
  }
}
@media(max-width:600px){
  body.welcome-anonymous.dc-mfa-native-v26 main#page>.flex-fill,
  body.welcome-anonymous.dc-mfa-native-v26 main#page.page-anonymous>.flex-fill{
    padding:14px!important;
    align-items:center!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{
    padding:26px 20px 22px!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-footer{
    padding:16px 20px 22px!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body::before{
    font-size:23px;
  }
}


/* ===== SOURCE: public/css/auth-mfa-02431.css ===== */
/* D-Connect Workspace 0.24.31 - responsive native GLPI MFA.
   Native form stays untouched; this file only provides layout/paint. */
body.welcome-anonymous.dc-mfa-native-v26{
  min-height:100vh!important;
  background:radial-gradient(circle at 78% 16%,rgba(255,255,255,.82),transparent 31rem),linear-gradient(135deg,#a7ddf9 0%,#edf8ff 52%,#c1e8fb 100%)!important;
}
body.welcome-anonymous.dc-mfa-native-v26 main#page>.flex-fill,
body.welcome-anonymous.dc-mfa-native-v26 main#page.page-anonymous>.flex-fill{
  min-height:100vh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:28px!important;background:transparent!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .container-tight{width:min(980px,94vw)!important;max-width:980px!important;margin:auto!important;padding:0!important}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card{
  position:relative!important;width:100%!important;min-height:520px!important;margin:0!important;overflow:hidden!important;
  border:1px solid rgba(255,255,255,.95)!important;border-radius:24px!important;background:#fff!important;box-shadow:0 28px 80px rgba(8,55,86,.20)!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card::before{
  content:"";position:absolute!important;inset:0 auto 0 0!important;width:44%!important;
  background:url("../img/dc-service-desk-login-02419.webp") center/cover no-repeat!important;border-right:1px solid #d8e7ef!important;pointer-events:none!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-header,
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body,
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-footer{
  position:relative!important;z-index:1!important;width:56%!important;margin-left:44%!important;box-sizing:border-box!important;background:#fff!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-header{padding:42px 42px 0!important;border:0!important}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{padding:54px 42px 28px!important}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-footer{padding:18px 42px 34px!important;border-top:1px solid #e6eef3!important}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body::before{
  content:"SICHERER ZUGANG\A Zwei-Faktor-Anmeldung";white-space:pre;display:block;margin:0 0 28px;color:#0a356a;font-size:30px;line-height:1.18;font-weight:850;letter-spacing:-.025em;
}
body.welcome-anonymous.dc-mfa-native-v26 form{display:block!important;max-width:100%!important;margin:0!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
body.welcome-anonymous.dc-mfa-native-v26 form>div,
body.welcome-anonymous.dc-mfa-native-v26 form .row{max-width:100%!important}
body.welcome-anonymous.dc-mfa-native-v26 form input:not([type=hidden]){opacity:1!important;visibility:visible!important;pointer-events:auto!important}
body.welcome-anonymous.dc-mfa-native-v26 form input[inputmode="numeric"],
body.welcome-anonymous.dc-mfa-native-v26 form input[autocomplete="one-time-code"]{
  width:48px!important;min-width:48px!important;max-width:48px!important;height:56px!important;min-height:56px!important;padding:0!important;border:1px solid #cbdde8!important;border-radius:11px!important;background:#fff!important;color:#123957!important;font-size:21px!important;font-weight:850!important;text-align:center!important;box-shadow:none!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form input:focus{border-color:#35b7c7!important;box-shadow:0 0 0 3px rgba(53,183,199,.14)!important;outline:0!important}
body.welcome-anonymous.dc-mfa-native-v26 form .btn-primary,
body.welcome-anonymous.dc-mfa-native-v26 form button[type=submit],
body.welcome-anonymous.dc-mfa-native-v26 form input[type=submit]{min-height:46px!important;border-radius:10px!important;border-color:#35b7c7!important;background:#35b7c7!important;color:#fff!important;font-weight:800!important}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card a{font-weight:700}
@media(max-width:760px){
  body.welcome-anonymous.dc-mfa-native-v26 main#page>.flex-fill,body.welcome-anonymous.dc-mfa-native-v26 main#page.page-anonymous>.flex-fill{padding:14px!important;align-items:flex-start!important}
  body.welcome-anonymous.dc-mfa-native-v26 .container-tight{width:min(520px,96vw)!important;max-width:520px!important;margin:24px auto!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card{min-height:0!important;border-radius:20px!important;padding-top:150px!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card::before{inset:0 0 auto 0!important;width:100%!important;height:150px!important;border-right:0!important;border-bottom:1px solid #d8e7ef!important;background-position:center 42%!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-header,body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body,body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-footer{width:100%!important;margin-left:0!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-header{padding:24px 22px 0!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{padding:28px 22px 22px!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-footer{padding:16px 22px 24px!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body::before{font-size:24px;margin-bottom:22px}
  body.welcome-anonymous.dc-mfa-native-v26 form input[inputmode="numeric"],body.welcome-anonymous.dc-mfa-native-v26 form input[autocomplete="one-time-code"]{width:42px!important;min-width:42px!important;max-width:42px!important;height:50px!important;min-height:50px!important;font-size:19px!important}
}
@media(max-width:410px){
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card{padding-top:120px!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card::before{height:120px!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{padding:24px 16px 18px!important}
  body.welcome-anonymous.dc-mfa-native-v26 form input[inputmode="numeric"],body.welcome-anonymous.dc-mfa-native-v26 form input[autocomplete="one-time-code"]{width:38px!important;min-width:38px!important;max-width:38px!important;height:48px!important;min-height:48px!important}
}


/* ===== SOURCE: public/css/upgrade-02429.css ===== */
/* =========================================================
   D-Connect Workspace 0.24.29
   Requester workflow, readable planning, MFA desktop/mobile
   ========================================================= */

/* -------------------- MFA: keep GLPI native, only style -------------------- */
body.welcome-anonymous.dc-mfa-native-v26 .container-tight{
  width:min(980px,94vw)!important;
  max-width:980px!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card{
  width:min(980px,94vw)!important;
  max-width:980px!important;
  min-height:560px!important;
  flex:0 0 auto!important;
  overflow:hidden!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card::before{
  width:46%!important;
  background-position:center center!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>*{
  width:54%!important;
  margin-left:46%!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{
  padding:54px 44px 34px!important;
  overflow:visible!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body::before{
  content:"SICHERER ZUGANG\A Zwei-Faktor-Anmeldung"!important;
  white-space:pre-line!important;
  max-width:100%!important;
  font-size:28px!important;
  line-height:1.12!important;
  overflow-wrap:anywhere!important;
  margin-bottom:26px!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form{
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form .d-flex,
body.welcome-anonymous.dc-mfa-native-v26 form .input-group,
body.welcome-anonymous.dc-mfa-native-v26 form [class*="gap-"]{
  max-width:100%!important;
  flex-wrap:nowrap!important;
}
body.welcome-anonymous.dc-mfa-native-v26 form input[inputmode="numeric"],
body.welcome-anonymous.dc-mfa-native-v26 form input[autocomplete="one-time-code"]{
  width:clamp(42px,4.4vw,52px)!important;
  min-width:0!important;
  max-width:52px!important;
  height:56px!important;
  min-height:56px!important;
  flex:1 1 0!important;
  padding:6px!important;
  font-size:22px!important;
}
body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-footer,
body.welcome-anonymous.dc-mfa-native-v26 form .card-footer{
  gap:10px!important;
}

@media(max-width:760px){
  body.welcome-anonymous.dc-mfa-native-v26 main#page>.flex-fill,
  body.welcome-anonymous.dc-mfa-native-v26 main#page.page-anonymous>.flex-fill{
    padding:14px!important;
    align-items:center!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .container-tight{
    width:min(440px,96vw)!important;
    max-width:440px!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card{
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    padding-top:148px!important;
    border-radius:20px!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card::before{
    display:block!important;
    inset:0 0 auto 0!important;
    width:100%!important;
    height:148px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(165,204,224,.55)!important;
    background-position:center 43%!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>*{
    width:100%!important;
    margin-left:0!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{
    padding:26px 22px 22px!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body::before{
    font-size:23px!important;
    margin-bottom:20px!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 form input[inputmode="numeric"],
  body.welcome-anonymous.dc-mfa-native-v26 form input[autocomplete="one-time-code"]{
    width:clamp(38px,12vw,48px)!important;
    max-width:48px!important;
    height:52px!important;
    min-height:52px!important;
    font-size:20px!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-footer,
  body.welcome-anonymous.dc-mfa-native-v26 form .card-footer{
    padding:14px 20px 20px!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:stretch!important;
  }
  body.welcome-anonymous.dc-mfa-native-v26 form .btn,
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-footer .btn{
    flex:1 1 140px!important;
    min-height:46px!important;
  }
}
@media(max-width:390px){
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card{padding-top:120px!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card::before{height:120px!important}
  body.welcome-anonymous.dc-mfa-native-v26 .main-content-card>.card-body{padding:22px 16px 18px!important}
  body.welcome-anonymous.dc-mfa-native-v26 form input[inputmode="numeric"],
  body.welcome-anonymous.dc-mfa-native-v26 form input[autocomplete="one-time-code"]{
    width:36px!important;max-width:36px!important;height:48px!important;min-height:48px!important
  }
}

/* -------------------- Ticket requester / editor -------------------- */
.dc-ticket-requester-strip{
  max-width:920px!important;
  padding:14px 16px!important;
  border-color:#bfe3e8!important;
  background:linear-gradient(135deg,#f3fcfd,#fff)!important;
  box-shadow:0 5px 18px rgba(23,82,105,.05)!important;
}
.dc-ticket-requester-strip strong{font-size:15px!important}
.dc-ticket-requester-strip span{font-size:12px!important;line-height:1.5!important}
.dc-ticket-requester-strip .dc-contact-reachability{
  display:inline!important;
  color:#486d82!important;
}
.dc-edit-modal{
  width:min(1120px,95vw)!important;
  max-width:1120px!important;
}
.dc-edit-modal-body{padding:18px 20px 24px!important}
.dc-edit-panel>label,
.dc-private-contact-fields label{font-size:11px!important;font-weight:800!important;color:#244a64!important}
.dc-edit-panel input,
.dc-edit-panel select,
.dc-edit-panel textarea{font-size:13px!important;min-height:42px!important}
.dc-edit-panel textarea{line-height:1.55!important}
.dc-private-contact-editor{
  padding:16px!important;
  border-color:#bee3e8!important;
  background:linear-gradient(135deg,#f2fbfc,#fbfefe)!important;
}
.dc-private-contact-toggle span strong{font-size:12px!important}
.dc-private-contact-toggle span small{font-size:10px!important;line-height:1.45!important}
.dc-private-contact-info-v29{
  display:flex;align-items:flex-start;gap:9px;margin-top:12px;padding:11px 12px;
  border:1px solid #cfe6ea;border-radius:10px;background:#fff;color:#42697d;
  font-size:10px;line-height:1.5
}
.dc-private-contact-info-v29 i{font-size:18px;color:#31afbd;flex:0 0 auto}
.dc-edit-modal.dc-external-mode-v29 .dc-edit-entity-field-v29,
.dc-edit-modal.dc-external-mode-v29 .dc-edit-requester-field-v29{
  display:none!important;
}
.dc-edit-modal.dc-external-mode-v29 .dc-private-contact-editor{
  border-width:2px!important;
}

/* -------------------- New ticket: clearer two-path workflow -------------------- */
.dc-new-ticket-custom{max-width:1680px!important;margin:0 auto!important}
.dc-new-ticket-grid{
  grid-template-columns:minmax(0,1fr) minmax(390px,460px)!important;
  gap:18px!important;
}
.dc-new-ticket-grid>.dc-custom-card{border-radius:14px!important;overflow:visible!important}
.dc-new-ticket-grid label{
  gap:7px!important;
  margin-bottom:12px!important;
  padding:0 16px!important;
  font-size:11px!important;
  color:#294e67!important;
}
.dc-new-ticket-grid input,
.dc-new-ticket-grid select,
.dc-new-ticket-grid textarea{
  min-height:43px!important;
  padding:10px 11px!important;
  font-size:12px!important;
  border-radius:9px!important;
}
.dc-new-ticket-grid textarea{min-height:330px!important;font-size:13px!important}
.dc-requester-mode{padding:0 16px!important;margin-top:4px!important}
.dc-requester-mode-grid{gap:10px!important}
.dc-requester-mode-grid label{padding:0!important}
.dc-requester-mode-grid label>span{min-height:88px!important;padding:13px!important}
.dc-requester-mode-grid label>span strong{font-size:11px!important;line-height:1.3!important}
.dc-requester-mode-grid label>span small{font-size:9.5px!important;line-height:1.35!important}
.dc-private-requester-panel{margin:0 16px 14px!important;padding:14px!important}
.dc-private-requester-panel label{padding:0!important}
.dc-private-contact-grid-v29{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dc-new-ticket-note{font-size:10px!important;line-height:1.5!important}
.dc-submit-wide{min-height:45px!important;font-size:12px!important}

/* -------------------- Customers / external intake -------------------- */
.dc-customer-layout{grid-template-columns:330px minmax(0,1fr)!important;gap:14px!important}
.dc-customer-list{position:sticky;top:72px;align-self:start;max-height:calc(100vh - 90px);overflow:auto}
.dc-customer-group-toggle{min-height:54px!important}
.dc-customer-group-label strong{font-size:11px!important}
.dc-customer-group-label small{font-size:9px!important}
.dc-customer-group-children a{min-height:42px!important;padding-top:7px!important;padding-bottom:7px!important}
.dc-customer-ticket-head{gap:14px!important;align-items:flex-start!important}
.dc-customer-ticket-toolbar{gap:12px!important;flex-wrap:wrap!important}
.dc-customer-ticket-toolbar .dc-customer-ticket-search{min-width:260px;flex:1 1 320px}
.dc-customer-layout .dc-ticket-table th{font-size:9px!important;letter-spacing:.04em!important}
.dc-customer-layout .dc-ticket-table td{font-size:10.5px!important;line-height:1.4!important}

/* -------------------- Planning: prioritize readability over squeezing -------------------- */
.dc-planning-page-v1{max-width:1720px!important;margin:0 auto!important}
.dc-planning-layout-v1{grid-template-columns:250px minmax(0,1fr)!important;gap:14px!important}
.dc-planning-calendar-v1{min-width:0!important}
.dc-planning-grid-wrap-horizontal-v18{
  padding:0!important;
  max-height:calc(100vh - 250px)!important;
  overflow:auto!important;
  border:1px solid #d7e5ec!important;
  border-radius:11px!important;
  background:#fff!important;
}
.dc-planning-grid-horizontal-v18{
  --dc-employee-col:200px!important;
  --dc-slot-width:32px!important;
  --dc-row-height:78px!important;
  min-width:1608px!important;
  border:0!important;
  box-shadow:none!important;
}
.dc-planning-corner-horizontal-v18,
.dc-planning-employee-v18{
  min-width:200px!important;
  width:200px!important;
  position:sticky!important;
  left:0!important;
  z-index:8!important;
  box-shadow:2px 0 0 #d5e4eb!important;
}
.dc-planning-corner-horizontal-v18{z-index:12!important;background:#eaf3f7!important}
.dc-planning-time-head-v18{
  position:sticky!important;
  top:0!important;
  z-index:7!important;
  height:52px!important;
  padding:0 8px!important;
  align-items:center!important;
  font-size:10px!important;
  background:#eaf3f7!important;
}
.dc-planning-employee-v18{
  min-height:78px!important;
  padding:10px 12px!important;
  background:#f8fbfd!important;
}
.dc-planning-employee-v18 strong{font-size:11px!important}
.dc-planning-employee-v18 small{font-size:9px!important}
.dc-planning-slot-horizontal-v18{
  min-width:32px!important;
  min-height:78px!important;
  background:#fff!important;
}
.dc-planning-slot-horizontal-v18:hover{background:#eefafb!important;box-shadow:inset 0 0 0 1px #75c9d1!important}
.dc-planning-event-horizontal-v18{
  min-height:64px!important;
  margin:7px 3px!important;
  padding:7px 8px!important;
  border-radius:8px!important;
  z-index:5!important;
}
.dc-planning-event-horizontal-v18 strong{display:block!important;font-size:10px!important;line-height:1.25!important}
.dc-planning-event-horizontal-v18>span:not(.dc-planning-pause-block-v1){font-size:8.5px!important;line-height:1.3!important}
.dc-planning-event-horizontal-v18>em{font-size:8px!important;line-height:1.3!important}
.dc-planning-event-short-v22 strong{display:block!important}
.dc-planning-event-short-v22>em{display:block!important;font-size:8px!important}
.dc-planning-event-short-v22>span:not(.dc-planning-pause-block-v1){display:none!important}
.dc-planning-event-medium-v22 strong,
.dc-planning-event-medium-v22>em{display:block!important}
.dc-planning-event-medium-v22>span:not(.dc-planning-pause-block-v1){display:none!important}
.dc-plan-tech-cards-v22{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:240px!important;gap:8px!important}
.dc-plan-tech-card-v22{min-height:56px!important;padding:9px 10px!important}
.dc-plan-tech-card-v22[data-tech-locked="1"]{border-color:#2eaeba!important;background:#e7f8fa!important;cursor:default!important}
.dc-plan-tech-card-v22[data-tech-locked="1"]::after{content:"automatisch";font-size:8px;font-weight:900;color:#17818b}

@media(max-width:1100px){
  .dc-new-ticket-grid{grid-template-columns:1fr!important}
  .dc-new-ticket-grid textarea{min-height:240px!important}
  .dc-customer-layout{grid-template-columns:1fr!important}
  .dc-customer-list{position:relative;top:auto;max-height:none}
  .dc-planning-layout-v1{grid-template-columns:1fr!important}
  .dc-planning-sidebar-v1{position:relative!important;top:auto!important}
}
@media(max-width:760px){
  .dc-edit-modal{width:100vw!important;max-width:100vw!important;height:94vh!important;border-radius:18px 18px 0 0!important}
  .dc-edit-modal-body{padding:14px!important}
  .dc-private-contact-grid-v29{grid-template-columns:1fr}
  .dc-new-ticket-grid label{padding:0 12px!important}
  .dc-requester-mode{padding:0 12px!important}
  .dc-private-requester-panel{margin:0 12px 12px!important}
  .dc-new-ticket-grid textarea{min-height:200px!important}
  .dc-planning-grid-horizontal-v18{
    --dc-employee-col:150px!important;
    --dc-slot-width:30px!important;
    --dc-row-height:72px!important;
    min-width:1470px!important;
  }
  .dc-planning-corner-horizontal-v18,.dc-planning-employee-v18{min-width:150px!important;width:150px!important}
  .dc-planning-employee-v18{min-height:72px!important;padding:8px!important}
  .dc-planning-slot-horizontal-v18{min-width:30px!important;min-height:72px!important}
  .dc-plan-tech-cards-v22{grid-template-columns:1fr!important;max-height:280px!important}
}


/* ===== SOURCE: public/css/stability-02431.css ===== */
/* D-Connect Workspace 0.24.31
   Stability layer: custom UI may decorate GLPI, but must never cover native
   interactive controls or keep invisible backdrops clickable. */
[hidden]{display:none!important;pointer-events:none!important}
.modal-backdrop:not(.show),.offcanvas-backdrop:not(.show){pointer-events:none!important}
.modal.show,.offcanvas.show,.dropdown-menu.show,.select2-container--open{pointer-events:auto!important}
.modal.show{z-index:1060!important}.modal-backdrop.show{z-index:1050!important}
.dropdown-menu.show{z-index:1080!important}.select2-container--open{z-index:1090!important}
.tooltip,.popover{z-index:1100!important}
/* Paint-only decorative layers must never consume clicks. */
.dc-auth-hero::before,.dc-auth-hero::after,.dc-login-visual::before,.dc-login-visual::after,
.dc-ticket-custom-hero::before,.dc-custom-page-head::before,.dc-custom-page-head::after,
.dc-planning-event-v1::before,.dc-event::before{pointer-events:none!important}
/* Prevent old runtime classes from re-enabling broad fixed overlays if stale
   browser cache still contains their CSS. */
.dc-runtime-overlay,.dc-surface-overlay,.dc-form-overlay{pointer-events:none!important}
/* Custom page cards stay below GLPI dropdowns/modals. */
.dc-custom-page,.dc-workspace,.dc-ticket-list-custom,.dc-page-planning{position:relative;z-index:1}
.dc-check-actions form,.dc-check-actions a,.dc-check-actions button{position:relative;z-index:2;pointer-events:auto}


/* ===== SOURCE: public/css/restore-02432.css ===== */
/* 0.24.32 restore/stability tail.
   The full 0.24.30 design stack is active again. This file only resolves
   interaction/layer conflicts and never replaces the established design. */
.modal.show,.offcanvas.show{z-index:1065!important}
.modal-backdrop.show,.offcanvas-backdrop.show{z-index:1055!important}
.dropdown-menu.show{z-index:1080!important}
.select2-container--open{z-index:1090!important}
.tooltip,.popover{z-index:1100!important}
.modal-backdrop:not(.show),.offcanvas-backdrop:not(.show),[hidden]{pointer-events:none!important}
/* Decorative/pseudo layers must never intercept UI controls. */
#dc-app-sidebar::before,#dc-app-sidebar::after,
.dc-card::before,.dc-card::after,.dc-custom-page-head::before,.dc-custom-page-head::after,
.dc-ticket-custom-hero::before,.dc-ticket-custom-hero::after,.dc-event::before,.dc-event::after{
  pointer-events:none!important;
}
/* The workspace itself must not create a z-index ceiling above native GLPI
   dropdowns/modals. */
.dc-custom-page,.dc-workspace,.dc-ticket-list-custom,.dc-page-planning{isolation:auto!important}


/* ===== SOURCE: public/css/branding-02438.css ===== */
:root{
  --dc-brand-logo:url("../img/dconnect-10-years-dark.png");
}
#dc-app-sidebar .dc-anniversary-logo img{object-fit:contain!important;max-width:100%!important;max-height:100%!important;}
body.welcome-anonymous.dc-login-02410 .dc-login-02410-logo,
body.dc-simple-helpdesk-02410:not(.dc-customer-portal-shell) header .navbar-brand,
body.dc-customer-portal-shell .dc-customer-brand-fixed,
body.helpdesk .navbar-brand,
body.welcome-anonymous .navbar-brand{
  background-image:var(--dc-brand-logo)!important;
  background-repeat:no-repeat!important;
  background-position:left center!important;
  background-size:contain!important;
}
.dcw-brand-preview{display:flex;align-items:center;gap:16px;padding:14px;border:1px solid #d8e4eb;border-radius:10px;background:#f7fafc;margin:10px 0 14px}
.dcw-brand-preview img{width:210px;height:90px;object-fit:contain;background:#fff;border:1px solid #e1e9ee;border-radius:8px;padding:8px}
.dcw-brand-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dcw-brand-fields label,.dcw-signature-settings label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#173b59}
.dcw-brand-fields input[type=file],.dcw-signature-settings textarea{width:100%;border:1px solid #cddde7;border-radius:8px;background:#fff;padding:10px}
.dcw-brand-remove{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;font-weight:600!important}
@media(max-width:800px){.dcw-brand-fields{grid-template-columns:1fr}.dcw-brand-preview{align-items:flex-start;flex-direction:column}.dcw-brand-preview img{width:100%;max-width:260px}}


/* ===== SOURCE: public/css/pwa-02440.css ===== */
.dc-pwa-install{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(16,183,197,.34);border-radius:11px;background:rgba(16,183,197,.13);color:#eafcff;padding:9px 11px;font-size:12px;font-weight:800;line-height:1.1;cursor:pointer;transition:.18s ease}.dc-pwa-install:hover{background:#10b7c5;border-color:#10b7c5;color:#fff;transform:translateY(-1px)}.dc-pwa-install i{font-size:18px}#dc-app-sidebar .dc-sidebar-foot>.dc-pwa-install{width:100%;margin:0 0 12px}.dc-pwa-install:not(#dc-app-sidebar *){position:fixed;right:18px;bottom:18px;z-index:1080;background:#07344f;color:#fff;box-shadow:0 12px 35px rgba(4,42,67,.24);border-color:#10b7c5}.dc-pwa-modal{position:fixed;inset:0;z-index:20050;display:grid;place-items:center;padding:20px;background:rgba(3,30,48,.62);backdrop-filter:blur(5px)}.dc-pwa-modal-card{position:relative;width:min(470px,100%);border:1px solid #dce6ef;border-radius:22px;background:#fff;padding:28px;box-shadow:0 24px 75px rgba(2,28,46,.28);color:#0f3150}.dc-pwa-modal-card>img{width:72px;height:72px;border-radius:18px;display:block;margin-bottom:18px}.dc-pwa-modal-card h2{margin:0 42px 8px 0;font-size:1.35rem}.dc-pwa-modal-card p{margin:0 0 14px;color:#607b91;line-height:1.55}.dc-pwa-modal-card ol{padding-left:22px;margin:14px 0 0;color:#35556e;line-height:1.65}.dc-pwa-modal-close{position:absolute;right:16px;top:16px;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:#eef5f8;color:#31536d;cursor:pointer}.dc-pwa-modal-actions{display:flex;justify-content:flex-end;margin-top:20px}.dc-pwa-modal-ok{border:0;border-radius:11px;background:#10b7c5;color:#fff;font-weight:800;padding:10px 15px;cursor:pointer}.dcw-pwa-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 18px}.dcw-pwa-fields label{display:flex;flex-direction:column;gap:6px;font-size:.8rem;font-weight:700;color:#35556e}.dcw-pwa-fields input,.dcw-pwa-fields select{width:100%;border:1px solid #d5e3eb;border-radius:11px;background:#fff;color:#163b57;padding:10px 11px}.dcw-pwa-note{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;margin:4px 0 16px;border-radius:12px;background:#eef8fa;color:#315b70;font-size:.82rem}.dcw-pwa-note i{font-size:18px;color:#0aa7c2;margin-top:1px}@media(max-width:700px){.dcw-pwa-fields{grid-template-columns:1fr}.dc-pwa-install:not(#dc-app-sidebar *){right:12px;bottom:12px}.dc-pwa-modal-card{padding:24px}}
.dc-pwa-diagnostics-link{display:inline-flex;align-items:center;padding:9px 12px;border:1px solid #d5e3eb;border-radius:10px;text-decoration:none;color:#31536d;font-weight:800}.dc-pwa-debug-note{padding:10px 12px;border-radius:10px;background:#f7f9fb;font-family:monospace;font-size:.78rem}.dc-pwa-diag-grid{display:grid;gap:9px;margin:16px 0}.dc-pwa-diag-grid>div{display:grid;gap:5px;padding:12px 14px;border:1px solid #dce7ed;border-radius:12px}.dc-pwa-diag-grid>div.ok strong{color:#19745c}.dc-pwa-diag-grid>div.bad strong{color:#b04444}.dc-pwa-diag-grid code{white-space:normal;overflow-wrap:anywhere;color:#4f6b7f}


/* ===== SOURCE: public/css/checklists-02441.css ===== */
.dc-checklist-admin{max-width:1250px;margin:0 auto}.dc-checklist-admin-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px}.dc-checklist-template-form{display:grid;gap:13px}.dc-checklist-template-form label{display:grid;gap:6px;font-weight:800;color:#35556e}.dc-checklist-template-form input[type=text],.dc-checklist-template-form textarea{border:1px solid #d8e5ec;border-radius:12px;padding:11px 12px;background:#fff;color:#173f5c}.dc-checklist-template-form small{font-weight:500;color:#7b91a2}.dc-checklist-active{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.dc-checklist-form-actions{display:flex;gap:9px}.dc-checklist-template-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #edf2f5}.dc-checklist-template-list article:last-child{border-bottom:0}.dc-checklist-template-list strong,.dc-checklist-template-list span{display:block}.dc-checklist-template-list span{margin-top:3px;color:#71889a;font-size:.82rem}.dc-checklist-template-list article>div:last-child{display:flex;gap:6px}.dc-checklist-template-list a,.dc-checklist-template-list button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #d8e5ec;border-radius:9px;background:#fff;color:#35556e}.dc-checklist-template-list button{cursor:pointer}.dc-ticket-checklists{display:grid;gap:12px}.dc-ticket-checklist{border:1px solid #dce7ed;border-radius:14px;overflow:hidden}.dc-ticket-checklist-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:#f7fafc}.dc-ticket-checklist-head strong{color:#173f5c}.dc-ticket-checklist-head span{font-size:.78rem;font-weight:800;color:#678396}.dc-ticket-checklist-items{display:grid}.dc-ticket-checklist-item{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border-top:1px solid #edf2f5}.dc-ticket-checklist-item input{margin-top:3px}.dc-ticket-checklist-item.is-done span{text-decoration:line-through;color:#8498a7}.dc-ticket-checklist-actions{display:flex;gap:8px;align-items:center}.dc-ticket-checklist-actions select{max-width:300px;border:1px solid #d5e3eb;border-radius:10px;padding:8px 10px}.dc-ticket-checklist-remove{border:0;background:transparent;color:#b34b4b;cursor:pointer}.dc-checklist-permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dc-checklist-permission-grid label{display:grid;gap:6px;font-size:.82rem;font-weight:800;color:#35556e}.dc-checklist-permission-grid select{min-height:140px;border:1px solid #d5e3eb;border-radius:11px;padding:7px;background:#fff}@media(max-width:900px){.dc-checklist-admin-grid,.dc-checklist-permission-grid{grid-template-columns:1fr}}


/* ===== SOURCE: public/css/checklists-02442.css ===== */
.dc-checklist-builder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px;padding-top:4px}.dc-checklist-builder-head>div{display:grid;gap:3px}.dc-checklist-builder-head strong{color:#173f5c;font-size:.92rem}.dc-checklist-builder-head small{color:#71889a;font-size:.78rem}.dc-checklist-sections{display:grid;gap:12px}.dc-checklist-section-card{border:1px solid #d9e6ed;border-radius:14px;background:#f9fbfc;padding:13px;display:grid;gap:11px}.dc-checklist-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.dc-checklist-section-number{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;font-weight:900;color:#1483a0}.dc-checklist-section-remove{width:30px;height:30px;border:1px solid #d9e6ed;border-radius:8px;background:#fff;color:#9b4c4c;display:grid;place-items:center;cursor:pointer}.dc-checklist-section-remove:disabled{opacity:.35;cursor:not-allowed}.dc-checklist-permission-block{margin-top:14px;padding-top:14px;border-top:1px solid #edf2f5}.dc-checklist-permission-block h4{margin:0 0 10px;color:#173f5c;font-size:.9rem}.dc-checklist-permission-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.dc-ticket-checklist-section{border-top:1px solid #e5edf2}.dc-ticket-checklist-section:first-child{border-top:0}.dc-ticket-checklist-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;background:#eef6f9;color:#174a65;font-weight:900}.dc-ticket-checklist-section-title small{font-size:.72rem;color:#6a8799;font-weight:800}.dc-ticket-checklist-section .dc-ticket-checklist-item{border-top:1px solid #edf2f5}.dc-ticket-checklist-section .dc-ticket-checklist-item:first-of-type{border-top:0}@media(max-width:1050px){.dc-checklist-permission-grid-3{grid-template-columns:1fr}}@media(max-width:700px){.dc-checklist-builder-head{align-items:flex-start;flex-direction:column}.dc-checklist-builder-head .dc-secondary-btn{width:100%;justify-content:center}.dc-checklist-section-card{padding:11px}.dc-ticket-checklist-section-title{align-items:flex-start;flex-direction:column;gap:2px}}



/* ===== SOURCE: public/css/checklists-02443.css ===== */
/* D-Connect Workspace 0.24.43 – permission clarity */
.dc-checklist-permission-status{display:flex;flex-wrap:wrap;gap:8px 14px;padding:12px 14px;margin:12px 0;border:1px solid var(--tblr-border-color, #d9dee8);border-radius:10px;background:rgba(98,105,118,.04)}
.dc-checklist-permission-status span{white-space:nowrap}
.dc-checklist-auto-profiles{font-size:.875rem;opacity:.9;margin:8px 0 14px}
.dc-checklist-auto-profiles.dc-warning{opacity:1}
.dc-checklist-permission-grid label small{display:block;margin:3px 0 6px;font-weight:400;opacity:.75}
.dc-checklist-permission-grid select[multiple]{min-height:150px}


/* ===== SOURCE: public/css/mobile-workspace-02441.css ===== */
.dc-mobile-workspace{max-width:920px;margin:0 auto;padding:22px 20px 48px}.dc-mobile-hero{border-radius:24px;padding:24px;background:linear-gradient(145deg,#07344f,#0b5570);color:#fff;box-shadow:0 18px 45px rgba(3,43,68,.18)}.dc-mobile-hero span{font-size:.78rem;font-weight:800;letter-spacing:.08em;opacity:.75}.dc-mobile-hero h1{margin:5px 0 6px;font-size:2rem}.dc-mobile-hero p{margin:0;opacity:.83}.dc-mobile-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.dc-mobile-quick a{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border:1px solid #dbe8ef;border-radius:16px;background:#fff;color:#173f5c;text-decoration:none;font-weight:800}.dc-mobile-quick i{font-size:23px;color:#0eaebe}.dc-mobile-card{margin-top:14px;border:1px solid #dbe8ef;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 10px 30px rgba(15,49,80,.06)}.dc-mobile-card-head{display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border-bottom:1px solid #edf2f5}.dc-mobile-card-head>div{display:flex;align-items:center;gap:9px}.dc-mobile-card-head i{font-size:20px;color:#0aa9bb}.dc-mobile-card-head>span{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:20px;background:#eaf7f9;color:#087f8e;font-weight:800}.dc-mobile-schedule a,.dc-mobile-tickets a{display:grid;grid-template-columns:74px 1fr auto;gap:12px;align-items:center;padding:15px 18px;border-bottom:1px solid #edf2f5;text-decoration:none;color:#173f5c}.dc-mobile-tickets a{grid-template-columns:1fr auto}.dc-mobile-schedule a:last-child,.dc-mobile-tickets a:last-child{border-bottom:0}.dc-mobile-schedule time{font-weight:900;color:#087f8e}.dc-mobile-schedule strong,.dc-mobile-tickets strong{display:block}.dc-mobile-schedule span,.dc-mobile-tickets span,.dc-mobile-schedule small{display:block;margin-top:3px;color:#71889a;font-size:.82rem}.dc-mobile-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px;color:#6d8597}.dc-mobile-empty i{font-size:30px;margin-bottom:7px;color:#8aa6b7}.dc-mobile-empty strong{color:#35556e}.dc-mobile-empty span{font-size:.85rem;margin-top:3px}@media(max-width:700px){.dc-mobile-workspace{padding:12px 10px 34px}.dc-mobile-hero{padding:20px;border-radius:20px}.dc-mobile-hero h1{font-size:1.65rem}.dc-mobile-quick{gap:7px}.dc-mobile-quick a{font-size:.72rem;padding:12px 5px}.dc-mobile-schedule a{grid-template-columns:62px 1fr auto;padding:14px 13px}.dc-mobile-card{border-radius:17px}.dc-mobile-card-head{padding:14px}}


/* ===== SOURCE: public/css/auth-login-safe-02460.css ===== */
/* D-Connect Workspace 0.24.60
 * Login presentation only. The native GLPI login form stays in place and is not
 * cloned/rebuilt. This file is loaded last on anonymous pages.
 */

body.dc-login-60 {
  --dc60-navy-1:#072e46;
  --dc60-navy-2:#0b4562;
  --dc60-cyan:#45c6d4;
  --dc60-cyan-soft:#92e2ea;
  --dc60-text:#f5fbfd;
  --dc60-muted:#c8e0e8;
  min-height:100dvh!important;
  margin:0!important;
  overflow-x:hidden!important;
  background:
    radial-gradient(circle at 7% 10%,rgba(69,198,212,.18) 0,rgba(69,198,212,0) 24rem),
    radial-gradient(circle at 79% 90%,rgba(65,161,201,.13) 0,rgba(65,161,201,0) 28rem),
    linear-gradient(135deg,var(--dc60-navy-1) 0%,#0a3954 47%,var(--dc60-navy-2) 100%)!important;
}
body.dc-login-60 * { box-sizing:border-box; }
body.dc-login-60 main#page,
body.dc-login-60 main.page-anonymous,
body.dc-login-60 main {
  min-height:100dvh!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  overflow:visible!important;
}

/* Decorative circuit/radio rings; no images and no click layer. */
body.dc-login-60::before,
body.dc-login-60::after {
  content:"";
  position:fixed;
  z-index:0;
  pointer-events:none;
  border-radius:50%;
  border:1px solid rgba(146,226,234,.10);
}
body.dc-login-60::before {
  width:520px;height:520px;left:-310px;bottom:-285px;
  box-shadow:0 0 0 54px rgba(146,226,234,.035),0 0 0 108px rgba(146,226,234,.022);
}
body.dc-login-60::after {
  width:430px;height:430px;right:-280px;top:-240px;
  box-shadow:0 0 0 46px rgba(255,255,255,.025),0 0 0 92px rgba(255,255,255,.018);
}

body.dc-login-60 .dc-login-60-host {
  position:relative!important;
  z-index:1!important;
  width:min(1240px,calc(100% - 56px))!important;
  max-width:1240px!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  padding:42px 0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(370px,430px)!important;
  gap:clamp(42px,6vw,92px)!important;
  align-items:center!important;
}

/* Every legacy presentation block marked by the safe JS disappears. */
body.dc-login-60 .dc-login-60-hide { display:none!important; }

.dc-login-60-hero {
  min-width:0;
  color:var(--dc60-text);
  padding:20px 10px 20px 4px;
}
.dc-login-60-hero-inner { max-width:710px; }
.dc-login-60-logo {
  display:block;
  width:min(590px,92%);
  height:auto;
  max-height:235px;
  margin:0 0 30px;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 18px 34px rgba(0,0,0,.18));
}
.dc-login-60-kicker {
  margin:0 0 10px;
  color:var(--dc60-cyan-soft);
  font-size:11px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.dc-login-60-hero h1 {
  margin:0 0 17px;
  color:#fff!important;
  font-size:clamp(30px,3vw,43px)!important;
  line-height:1.08!important;
  font-weight:850!important;
  letter-spacing:-.025em;
}
.dc-login-60-hero p {
  margin:9px 0;
  color:var(--dc60-muted)!important;
  font-size:14px;
  line-height:1.62;
  max-width:650px;
}
.dc-login-60-services { margin:23px 0 21px; }
.dc-login-60-services > strong {
  display:block;
  margin-bottom:11px;
  color:#fff;
  font-size:13px;
}
.dc-login-60-service-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  max-width:650px;
}
.dc-login-60-service {
  min-height:44px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 13px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:11px;
  background:rgba(255,255,255,.065);
  color:#e9f6f9;
  font-size:12px;
  line-height:1.25;
  backdrop-filter:blur(3px);
}
.dc-login-60-service i { color:var(--dc60-cyan);font-size:17px;flex:0 0 auto; }
.dc-login-60-company {
  display:block;
  margin-top:18px;
  color:#fff;
  font-size:14px;
  font-weight:800;
}

/* Native GLPI authentication area. The DOM/form is not moved or recreated. */
body.dc-login-60 .dc-login-60-formhost {
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  max-width:430px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  align-self:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.dc-login-60 .dc-login-60-formhost > .card,
body.dc-login-60 .dc-login-60-formhost.card,
body.dc-login-60 .dc-login-60-formhost .card {
  width:100%!important;
  max-width:430px!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(214,231,237,.95)!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 28px 80px rgba(0,20,34,.30)!important;
  overflow:hidden!important;
}
body.dc-login-60 .dc-login-60-formhost .card-body {
  width:100%!important;
  max-width:none!important;
  padding:34px 36px 36px!important;
}
body.dc-login-60 .dc-login-60-formhost h1,
body.dc-login-60 .dc-login-60-formhost h2,
body.dc-login-60 .dc-login-60-formhost h3 {
  margin-top:0!important;
  color:#0c3150!important;
}
body.dc-login-60 .dc-login-60-formhost input,
body.dc-login-60 .dc-login-60-formhost select {
  min-height:46px!important;
  border-radius:10px!important;
}
body.dc-login-60 .dc-login-60-formhost .btn-primary,
body.dc-login-60 .dc-login-60-formhost button[type="submit"] {
  min-height:46px!important;
  border-radius:10px!important;
  font-weight:800!important;
}
body.dc-login-60 .dc-login-60-formhost a { text-underline-offset:2px; }

/* Tablet: one coherent card, hero above login. */
@media (max-width:900px) {
  body.dc-login-60 {
    background:
      radial-gradient(circle at 20% 0,rgba(69,198,212,.18),transparent 20rem),
      linear-gradient(155deg,#073047 0%,#0b4661 55%,#0b3b56 100%)!important;
  }
  body.dc-login-60 .dc-login-60-host {
    width:min(700px,calc(100% - 32px))!important;
    min-height:100dvh!important;
    padding:28px 0 34px!important;
    grid-template-columns:1fr!important;
    gap:22px!important;
    align-content:center!important;
  }
  .dc-login-60-hero { padding:0 10px; }
  .dc-login-60-hero-inner { max-width:none; }
  .dc-login-60-logo { width:min(470px,84%);max-height:180px;margin:0 auto 20px;object-position:center; }
  .dc-login-60-kicker,.dc-login-60-hero h1 { text-align:center; }
  .dc-login-60-hero h1 { font-size:31px!important; }
  .dc-login-60-hero p { margin-left:auto;margin-right:auto;text-align:center; }
  .dc-login-60-services { max-width:650px;margin:20px auto; }
  .dc-login-60-services > strong { text-align:center; }
  .dc-login-60-company { text-align:center; }
  body.dc-login-60 .dc-login-60-formhost { max-width:560px!important;margin:0 auto!important; }
  body.dc-login-60 .dc-login-60-formhost > .card,
  body.dc-login-60 .dc-login-60-formhost.card,
  body.dc-login-60 .dc-login-60-formhost .card { max-width:560px!important; }
}

/* Smartphone: compact, touch friendly, no horizontal scrolling. */
@media (max-width:560px) {
  body.dc-login-60{
    min-height:100dvh!important;
    overflow-y:auto!important;
    background:linear-gradient(180deg,#073047 0%,#0a405a 100%)!important;
  }
  body.dc-login-60::before{width:280px;height:280px;left:-210px;bottom:-200px;opacity:.55}
  body.dc-login-60::after{width:230px;height:230px;right:-175px;top:-145px;opacity:.5}
  body.dc-login-60 .dc-login-60-host{
    width:100%!important;
    min-height:100dvh!important;
    padding:calc(14px + env(safe-area-inset-top)) 14px calc(22px + env(safe-area-inset-bottom))!important;
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
  }
  .dc-login-60-hero{
    padding:0!important;
    flex:0 0 auto!important;
  }
  .dc-login-60-hero-inner{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
  }
  .dc-login-60-logo{
    width:min(270px,72vw)!important;
    max-height:92px!important;
    margin:0 auto 7px!important;
    object-position:center!important;
    filter:drop-shadow(0 10px 22px rgba(0,0,0,.16))!important;
  }
  .dc-login-60-kicker{
    margin:0 0 5px!important;
    font-size:8px!important;
    letter-spacing:.16em!important;
  }
  .dc-login-60-hero h1{
    max-width:340px!important;
    margin:0!important;
    font-size:22px!important;
    line-height:1.08!important;
    text-align:center!important;
  }
  .dc-login-60-hero p,
  .dc-login-60-services,
  .dc-login-60-secondary,
  .dc-login-60-company{
    display:none!important;
  }
  body.dc-login-60 .dc-login-60-formhost{
    width:100%!important;
    max-width:420px!important;
    margin:0 auto!important;
    flex:0 0 auto!important;
  }
  body.dc-login-60 .dc-login-60-formhost>.card,
  body.dc-login-60 .dc-login-60-formhost.card,
  body.dc-login-60 .dc-login-60-formhost .card{
    width:100%!important;
    max-width:none!important;
    border-radius:20px!important;
    box-shadow:0 18px 46px rgba(0,20,34,.24)!important;
  }
  body.dc-login-60 .dc-login-60-formhost .card-body{
    padding:22px 20px 24px!important;
  }
  body.dc-login-60 .dc-login-60-formhost h1,
  body.dc-login-60 .dc-login-60-formhost h2,
  body.dc-login-60 .dc-login-60-formhost h3{
    margin:0 0 14px!important;
    text-align:center!important;
    font-size:23px!important;
    line-height:1.05!important;
  }
  body.dc-login-60 .dc-login-60-formhost label{
    font-size:12px!important;
    white-space:nowrap!important;
  }
  body.dc-login-60 .dc-login-60-formhost input,
  body.dc-login-60 .dc-login-60-formhost select,
  body.dc-login-60 .dc-login-60-formhost .btn-primary,
  body.dc-login-60 .dc-login-60-formhost button[type="submit"]{
    min-height:50px!important;
    width:100%!important;
    font-size:16px!important;
  }
  body.dc-login-60 .dc-login-60-formhost .form-check{
    min-height:44px!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
  }
  body.dc-login-60 .dc-login-60-formhost .form-check-input{
    min-width:22px!important;
    width:22px!important;
    height:22px!important;
    min-height:22px!important;
  }
}

@media (max-width:390px) {
  body.dc-login-60 .dc-login-60-host{padding-left:10px!important;padding-right:10px!important}
  .dc-login-60-logo{width:min(235px,70vw)!important;max-height:80px!important}
  .dc-login-60-hero h1{font-size:20px!important}
  body.dc-login-60 .dc-login-60-formhost .card-body{padding:20px 16px 22px!important}
}

/* 0.24.60: the right column is authentication only. */
body.dc-login-60 .dc-login-60-hide { display:none!important; }
body.dc-login-60 .dc-login-60-formhost .rich_text_container,
body.dc-login-60 .dc-login-60-formhost .dc-login-02410-brand,
body.dc-login-60 .dc-login-60-formhost .dc-login-0249-brand,
body.dc-login-60 .dc-login-60-formhost .dc-login-55-welcome,
body.dc-login-60 .dc-login-60-formhost .dc-login-56-welcome,
body.dc-login-60 .dc-login-60-formhost .dc-login-safe-welcome { display:none!important; }
body.dc-login-60 .dc-login-60-formhost label[for="login_name"] { white-space:normal!important; }


/* ===== SOURCE: public/css/auth-login-02476.css ===== */
/* D-Connect Workspace 0.24.76 — robust desktop/tablet login sizing. */
html,body{width:100%;max-width:100%;min-width:0}
body.dc-login-60,
body.dc-login-60 main,
body.dc-login-60 main#page,
body.dc-login-60 .page,
body.dc-login-60 .page-wrapper,
body.dc-login-60 .page-body{
  width:100%!important;max-width:none!important;min-width:0!important;
  background-color:transparent!important;
}
body.dc-login-60{min-width:0!important;background-attachment:fixed!important}
body.dc-login-60 .dc-login-60-host{
  width:min(1180px,calc(100vw - 40px))!important;
  max-width:1180px!important;
  grid-template-columns:minmax(0,1fr) minmax(350px,420px)!important;
  gap:clamp(28px,4.5vw,68px)!important;
}
body.dc-login-60 .dc-login-60-hero{min-width:0!important;overflow:hidden}
body.dc-login-60 .dc-login-60-logo{width:min(520px,88%)!important}
body.dc-login-60 .dc-login-60-formhost,
body.dc-login-60 .dc-login-60-formhost>.card,
body.dc-login-60 .dc-login-60-formhost.card,
body.dc-login-60 .dc-login-60-formhost .card{min-width:0!important;width:100%!important}

/* Narrow desktop/tablet: stack cleanly instead of squeezing the form or
   leaving a white native GLPI column on the right. */
@media (min-width:561px) and (max-width:1050px){
  body.dc-login-60 .dc-login-60-host{
    width:min(760px,calc(100vw - 28px))!important;
    grid-template-columns:1fr!important;
    gap:18px!important;padding:24px 0 30px!important;align-content:start!important;
  }
  body.dc-login-60 .dc-login-60-hero{padding:0 14px!important;text-align:center!important}
  body.dc-login-60 .dc-login-60-hero-inner{max-width:680px!important;margin:0 auto!important}
  body.dc-login-60 .dc-login-60-logo{width:min(390px,72vw)!important;max-height:145px!important;margin:0 auto 14px!important;object-position:center!important}
  body.dc-login-60 .dc-login-60-kicker,
  body.dc-login-60 .dc-login-60-hero h1,
  body.dc-login-60 .dc-login-60-hero p,
  body.dc-login-60 .dc-login-60-services>strong,
  body.dc-login-60 .dc-login-60-company{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
  body.dc-login-60 .dc-login-60-service-grid{max-width:620px!important;margin:0 auto!important}
  body.dc-login-60 .dc-login-60-formhost{max-width:560px!important;margin:0 auto!important}
}

@media (max-width:560px){
  body.dc-login-60 .dc-login-60-host{width:100%!important;max-width:100%!important}
}

/* GLPI's anonymous wrapper may keep a Bootstrap max-width/background before the
   D-Connect login JS attaches its final classes. Keep the entire viewport dark
   from the first CSS paint so narrow desktops/tablets never show a white strip. */
body.welcome-anonymous{
  width:100vw!important;max-width:100vw!important;min-width:0!important;
  margin:0!important;overflow-x:hidden!important;background-color:#073047!important;
}
body.welcome-anonymous main#page,
body.welcome-anonymous main.page-anonymous,
body.welcome-anonymous>.page,
body.welcome-anonymous>.page-wrapper{
  width:100vw!important;max-width:100vw!important;min-width:0!important;
  margin-left:0!important;margin-right:0!important;
}



/* 0.24.98 · login recovery after anonymous opaque address masking */
body.dc-login-60{background:linear-gradient(135deg,#07324b 0%,#0a405c 48%,#0b526c 100%)!important}
body.dc-login-60 .dc-login-60-host{width:min(1120px,calc(100% - 40px))!important;max-width:1120px!important;min-height:100dvh!important;padding:32px 0!important;grid-template-columns:minmax(0,1.25fr) minmax(360px,410px)!important;gap:clamp(34px,5vw,68px)!important;align-items:center!important}
body.dc-login-60 .dc-login-60-hero{padding:12px 0!important}
body.dc-login-60 .dc-login-60-hero-inner{max-width:620px!important}
body.dc-login-60 .dc-login-60-logo{width:min(420px,78%)!important;max-height:145px!important;margin:0 0 20px!important}
body.dc-login-60 .dc-login-60-hero h1{font-size:clamp(28px,2.7vw,38px)!important;margin-bottom:12px!important}
body.dc-login-60 .dc-login-60-hero p{font-size:13px!important;line-height:1.5!important;margin:6px 0!important}
body.dc-login-60 .dc-login-60-services{margin:16px 0!important}
body.dc-login-60 .dc-login-60-service-grid{gap:7px!important}
body.dc-login-60 .dc-login-60-service{min-height:38px!important;padding:8px 10px!important;font-size:11px!important}
body.dc-login-60 .dc-login-60-company{margin-top:12px!important}
body.dc-login-60 .dc-login-60-formhost>.card,body.dc-login-60 .dc-login-60-formhost.card,body.dc-login-60 .dc-login-60-formhost .card{border-radius:20px!important;box-shadow:0 22px 60px rgba(0,20,34,.28)!important}
body.dc-login-60 .dc-login-60-formhost .card-body{padding:28px 30px 30px!important}
@media(max-width:900px){
  body.dc-login-60 .dc-login-60-host{width:min(620px,calc(100% - 24px))!important;padding:20px 0 28px!important;grid-template-columns:1fr!important;gap:14px!important;align-content:start!important}
  body.dc-login-60 .dc-login-60-hero{padding:4px 8px!important;text-align:center!important}
  body.dc-login-60 .dc-login-60-logo{width:min(310px,68vw)!important;max-height:105px!important;margin:0 auto 10px!important;object-position:center!important}
  body.dc-login-60 .dc-login-60-kicker{margin-bottom:5px!important;text-align:center!important}
  body.dc-login-60 .dc-login-60-hero h1{font-size:25px!important;margin-bottom:7px!important;text-align:center!important}
  body.dc-login-60 .dc-login-60-hero p{display:none!important}
  body.dc-login-60 .dc-login-60-services{display:none!important}
  body.dc-login-60 .dc-login-60-company{display:none!important}
  body.dc-login-60 .dc-login-60-formhost{max-width:520px!important;margin:0 auto!important}
}
@media(max-width:560px){
  body.dc-login-60 .dc-login-60-host{width:calc(100% - 16px)!important;padding:12px 0 18px!important;gap:8px!important}
  body.dc-login-60 .dc-login-60-hero{padding:0 6px!important}
  body.dc-login-60 .dc-login-60-logo{width:min(230px,66vw)!important;max-height:72px!important;margin-bottom:4px!important}
  body.dc-login-60 .dc-login-60-kicker{font-size:9px!important}.dc-login-60-hero h1{font-size:19px!important;margin:0!important}
  body.dc-login-60 .dc-login-60-formhost>.card,body.dc-login-60 .dc-login-60-formhost.card,body.dc-login-60 .dc-login-60-formhost .card{border-radius:16px!important}
  body.dc-login-60 .dc-login-60-formhost .card-body{padding:19px 16px 21px!important}
}


/* 0.25.00 · Smartphone Regiezettel polish */
@media (max-width: 650px){
  .dc-regie-page{padding:10px!important}
  .dc-regie-hero{padding:14px 14px 12px!important;margin-bottom:12px!important;border-radius:14px!important;gap:10px!important}
  .dc-regie-kicker{font-size:.64rem!important;letter-spacing:.1em!important}
  .dc-regie-hero h1{font-size:1.22rem!important;line-height:1.2!important;margin:.2rem 0!important}
  .dc-regie-hero p{font-size:.8rem!important;line-height:1.35!important}
  .dc-regie-hero-actions{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
  .dc-regie-hero-actions a{justify-content:center!important;padding:10px 9px!important;min-height:40px!important;font-size:.78rem!important;border-radius:10px!important}
  .dc-regie-card{padding:14px!important;border-radius:14px!important}
  .dc-regie-card-head{margin-bottom:12px!important;gap:9px!important}
  .dc-regie-card-head>i{font-size:1.2rem!important}
  .dc-regie-card-head small{font-size:.74rem!important;line-height:1.35!important}
  .dc-regie-section-title{margin:14px 0 10px!important;padding-bottom:6px!important;font-size:.72rem!important}
  .dc-regie-form label{font-size:.78rem!important}
  .dc-regie-form input,.dc-regie-form select,.dc-regie-form textarea{min-height:46px!important;padding:11px 12px!important;font-size:16px!important;border-radius:10px!important}
  .dc-regie-form textarea{min-height:104px!important}
  .dc-regie-grid{gap:10px!important}
  .dc-regie-grid.two,.dc-regie-grid.four,.dc-regie-confirmation,.dc-regie-delivery,.dc-regie-ticket-picker,.dc-regie-mail-grid{grid-template-columns:1fr!important}
  .dc-regie-check{padding:10px 11px!important;border-radius:10px!important}
  .dc-regie-lv-row{grid-template-columns:1fr!important;gap:8px!important;padding:10px!important}
  .dc-regie-lv-row>label:first-child,.dc-regie-lv-row>label:nth-child(2){grid-column:auto!important}
  .dc-regie-lv-row>label:first-child textarea{min-height:92px!important}
  .dc-regie-lv-hours{grid-template-columns:minmax(0,1fr) 58px!important}
  .dc-regie-lv-hours input{min-height:46px!important;font-size:16px!important;text-align:left!important}
  .dc-regie-lv-hours>span{min-height:46px!important}
  .dc-regie-lv-remove{width:100%!important;height:44px!important;grid-column:auto!important}
  .dc-regie-lv-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .dc-regie-lv-actions>button{width:100%!important;min-height:46px!important;order:0!important}
  .dc-regie-pdf-state{padding:12px!important;gap:10px!important;border-radius:12px!important}
  .dc-regie-pdf-state>a{width:100%!important;justify-content:center!important}
  .dc-regie-mail-form{padding:12px!important;border-radius:12px!important}
  .dc-regie-mail-form input,.dc-regie-mail-form textarea{font-size:16px!important}
  .dc-regie-mail-actions{grid-template-columns:1fr!important;gap:8px!important}
  .dc-regie-mail-actions button{min-height:46px!important;font-size:.95rem!important}
  .dc-regie-mail-last{font-size:.75rem!important;line-height:1.35!important}
  .dc-regie-history{display:none!important}
  .dc-regie-form-actions{position:static!important;bottom:auto!important;z-index:auto!important;margin:14px 0 0!important;padding:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;border-radius:0!important}
  .dc-regie-form-actions button{width:100%!important;min-height:48px!important;font-size:15px!important;border-radius:11px!important;display:flex!important;align-items:center!important;justify-content:center!important}
}
@media (max-width: 420px){
  .dc-regie-hero-actions{grid-template-columns:1fr!important}
  .dc-regie-page{padding:8px!important}
  .dc-regie-card{padding:12px!important}
}
