/* CenterView Update 375 — cPanel-inspired control-panel theme
   Uses CenterView branding and does not copy cPanel branding/assets. */
:root{
  --cp-bg:#f3f5f8;
  --cp-surface:#ffffff;
  --cp-surface-2:#f8fafc;
  --cp-sidebar:#172437;
  --cp-sidebar-2:#101b2b;
  --cp-sidebar-text:#dce7f5;
  --cp-sidebar-muted:#8fa2ba;
  --cp-text:#263548;
  --cp-muted:#6b7b90;
  --cp-line:#dbe2ea;
  --cp-brand:var(--cv-brand-accent,#25b9d6);
  --cp-brand-dark:var(--cv-brand-primary,#075a9c);
  --cp-link:#1264a3;
  --cp-success:#218739;
  --cp-warning:#bd6b00;
  --cp-danger:#c9362b;
  --cp-radius:9px;
  --cp-shadow:0 1px 2px rgba(19,33,52,.05),0 7px 22px rgba(19,33,52,.06);
}

html{background:var(--cp-bg)}
body.cv-cpanel-page,
body.cv-dashboard-page,
body.cv-cpanel-shell{
  color:var(--cp-text);
  background:var(--cp-bg)!important;
  font-family:Inter,"Segoe UI",Arial,Helvetica,sans-serif!important;
}
body.cv-cpanel-page{min-height:100vh}
body.cv-cpanel-page a{color:var(--cp-link)}

/* Shell */
.cv-shell{
  grid-template-columns:252px minmax(0,1fr)!important;
  background:var(--cp-bg)!important;
}
.cv-sidebar{
  background:linear-gradient(180deg,var(--cp-sidebar),var(--cp-sidebar-2))!important;
  border-right:1px solid rgba(255,255,255,.05);
  box-shadow:none!important;
  width:auto;
}
.cv-brand{
  min-height:76px;
  padding:17px 18px!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
.cv-logo{font-size:23px!important;line-height:1;font-weight:900!important;letter-spacing:-.02em!important}
.cv-logo span{color:var(--cp-brand)!important}
.cv-sub{margin-top:7px!important;color:var(--cp-sidebar-muted)!important;font-size:11px!important;text-transform:uppercase;letter-spacing:.11em}
.cv-search{margin:14px 14px 8px!important;position:relative}
.cv-search:before{content:"⌕";position:absolute;left:12px;top:50%;transform:translateY(-51%);color:#9eb0c5;font-size:18px;z-index:2}
.cv-search input{
  min-height:39px!important;
  padding:9px 12px 9px 36px!important;
  border-radius:6px!important;
  border:1px solid rgba(255,255,255,.11)!important;
  background:rgba(255,255,255,.055)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.cv-search input:focus{border-color:rgba(53,202,225,.72)!important;box-shadow:0 0 0 3px rgba(53,202,225,.10)!important}
.cv-sidebar-hint,.cv-nav-title{
  padding:12px 18px 6px!important;
  margin:0!important;
  color:var(--cp-sidebar-muted)!important;
  font-size:10px!important;
  line-height:1.2;
  letter-spacing:.14em!important;
  text-transform:uppercase;
  font-weight:900!important;
}
.cv-nav{padding:4px 8px 18px!important}
.cv-nav a,.cv-nav button,.cv-nav .main-entry{
  min-height:44px;
  margin:2px 0!important;
  padding:9px 11px!important;
  border-radius:6px!important;
  color:var(--cp-sidebar-text)!important;
  font-size:13.5px!important;
  font-weight:750!important;
  line-height:1.25;
  gap:10px!important;
  transition:background .14s ease,color .14s ease,transform .14s ease!important;
  box-shadow:none!important;
}
.cv-nav a>span:first-child,.cv-nav button>span:first-child{
  width:24px;height:24px;min-width:24px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:5px;background:rgba(255,255,255,.07);font-size:14px;
}
.cv-nav a:hover,.cv-nav button:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;transform:none!important}
.cv-nav a.active,.cv-nav .main-entry.active{
  background:rgba(37,185,214,.15)!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 var(--cp-brand)!important;
}
.cv-nav a.active>span:first-child{background:var(--cp-brand)!important;color:#092133}
.cv-nav .child{padding-left:41px!important;color:#c5d4e4!important;font-size:12.5px!important}
.cv-nav-separator{height:1px!important;background:rgba(255,255,255,.08)!important;margin:10px 10px!important}

.cv-content{background:var(--cp-bg)!important}
.cv-topbar{
  height:64px!important;
  padding:0 20px!important;
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid var(--cp-line)!important;
  box-shadow:0 1px 2px rgba(21,35,53,.04)!important;
  backdrop-filter:blur(8px);
}
.cv-topbar strong{font-size:16px!important;color:#25364a;letter-spacing:-.01em}
.cv-burger{
  display:inline-flex!important;align-items:center;justify-content:center;
  width:36px;height:36px;padding:0!important;margin-right:7px;
  border-radius:6px!important;background:#eef3f7!important;color:#34495e!important;
}
.cv-actions{gap:8px!important}
.cv-actions .cv-btn,.cv-topbar .cv-btn{
  min-height:36px!important;padding:8px 12px!important;border-radius:6px!important;
  background:var(--cp-brand-dark)!important;box-shadow:none!important;font-size:12.5px!important;
  color:#fff!important;text-decoration:none!important;border:1px solid rgba(2,22,39,.22)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
}
/* Update 375: Login/Logout and all primary top-bar actions must remain readable.
   The former generic link colour overrode the white button text. */
.cv-actions .cv-btn:not(.secondary):not(.btn-secondary),
.cv-topbar .cv-btn:not(.secondary):not(.btn-secondary){
  color:#fff!important;
  background:linear-gradient(rgba(0,0,0,.15),rgba(0,0,0,.15)),var(--cp-brand-dark)!important;
  text-shadow:0 1px 1px rgba(0,0,0,.28)!important;
}
.cv-actions .cv-btn:not(.secondary):not(.btn-secondary):hover,
.cv-topbar .cv-btn:not(.secondary):not(.btn-secondary):hover{
  color:#fff!important;filter:brightness(.92);
}
.cv-actions .cv-btn:not(.secondary):not(.btn-secondary):focus-visible,
.cv-topbar .cv-btn:not(.secondary):not(.btn-secondary):focus-visible{
  outline:3px solid rgba(37,185,214,.38)!important;outline-offset:2px!important;
}
.cv-actions .cv-btn.secondary,.cv-topbar .cv-btn.secondary,
.cv-actions .cv-btn.btn-secondary,.cv-topbar .cv-btn.btn-secondary{
  background:#eef3f7!important;color:#30465d!important;border:1px solid #dce4ec!important;text-shadow:none!important;
}
.cv-actions select{min-height:36px!important;border-radius:6px!important;padding:7px 30px 7px 10px!important;font-size:12.5px!important}
.cv-frame{height:calc(100vh - 64px)!important;background:var(--cp-bg)!important}
.cv-content.has-notice .cv-frame{height:calc(100vh - 126px)!important}
.cv-global-alert{border-radius:6px!important;margin:10px 18px 0!important;padding:11px 14px!important;box-shadow:none!important}

/* Collapsed desktop sidebar */
@media(min-width:981px){
  body.cv-sidebar-collapsed .cv-shell{grid-template-columns:74px minmax(0,1fr)!important}
  body.cv-sidebar-collapsed .cv-brand{padding:16px 8px!important;align-items:center}
  body.cv-sidebar-collapsed .cv-logo{font-size:0!important}
  body.cv-sidebar-collapsed .cv-logo:before{content:"CV";font-size:18px;color:#fff}
  body.cv-sidebar-collapsed .cv-sub,.cv-sidebar-collapsed .cv-sidebar-hint,.cv-sidebar-collapsed .cv-search{display:none!important}
  body.cv-sidebar-collapsed .cv-nav a{justify-content:center!important;padding:10px 8px!important}
  body.cv-sidebar-collapsed .cv-nav a>span:not(:first-child){display:none!important}
  body.cv-sidebar-collapsed .cv-nav a>span:first-child{width:30px;height:30px;min-width:30px}
}

/* Common content pages */
body.cv-cpanel-page .cv-page,
body.cv-cpanel-page .cv-page-wide,
body.cv-cpanel-page .container,
body.cv-cpanel-page .wrap,
body.cv-cpanel-page main{
  max-width:1320px;
}
body.cv-cpanel-page .cv-page{margin:0 auto!important;padding:28px 24px 46px!important}
body.cv-cpanel-page .cv-page-wide{margin:0 auto!important;padding:28px 24px 46px!important}
body.cv-cpanel-page h1{font-size:28px;line-height:1.16;letter-spacing:-.028em;color:#24364a;margin-top:0}
body.cv-cpanel-page h2{letter-spacing:-.018em;color:#2b3e53}
body.cv-cpanel-page h3{color:#334a62}
body.cv-cpanel-page p{line-height:1.52}
body.cv-cpanel-page .cv-muted,body.cv-cpanel-page .muted{color:var(--cp-muted)!important}

/* cPanel-style module groups */
body.cv-cpanel-page .section-head{
  align-items:center!important;gap:13px!important;margin:0 0 18px!important;
  padding:0 0 14px;border-bottom:1px solid var(--cp-line);
}
body.cv-cpanel-page .section-icon{
  width:46px;height:46px;min-width:46px;display:flex;align-items:center;justify-content:center;
  font-size:22px!important;border-radius:8px;background:#e9f6fa;color:#176f83;border:1px solid #cdebf1;
}
body.cv-cpanel-page .section-head h1{font-size:27px!important;margin:0!important}
body.cv-cpanel-page .section-head p{font-size:13px;margin:5px 0 0!important;color:var(--cp-muted)!important;font-weight:600!important}
body.cv-cpanel-page .quick-note{
  margin:0 0 17px!important;padding:10px 13px!important;border-radius:6px!important;
  background:#f0f8fb!important;border:1px solid #cfe9ef!important;color:#35687a!important;font-size:13px!important;
}
body.cv-cpanel-page .submenu-grid{
  display:grid!important;grid-template-columns:repeat(auto-fill,minmax(275px,1fr))!important;gap:11px!important;
}
body.cv-cpanel-page .submenu-card{
  min-height:96px!important;padding:15px 16px!important;border-radius:7px!important;
  border:1px solid var(--cp-line)!important;background:var(--cp-surface)!important;box-shadow:none!important;
  display:grid!important;grid-template-columns:43px minmax(0,1fr)!important;grid-template-rows:auto auto!important;
  column-gap:13px!important;align-content:center!important;color:var(--cp-text)!important;
  transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease!important;
}
body.cv-cpanel-page .submenu-card:hover{transform:translateY(-1px)!important;border-color:#9fc8d5!important;box-shadow:var(--cp-shadow)!important}
body.cv-cpanel-page .submenu-card .ico{
  grid-row:1/3;width:43px;height:43px;display:flex;align-items:center;justify-content:center;
  border-radius:7px;background:#eef7fa;border:1px solid #d3edf2;font-size:20px!important;
}
body.cv-cpanel-page .submenu-card h2{font-size:14.5px!important;margin:0 0 4px!important;color:#26394e!important}
body.cv-cpanel-page .submenu-card p{font-size:12.5px!important;margin:0!important;color:var(--cp-muted)!important;line-height:1.35!important;font-weight:550!important}

/* Cards and panels */
body.cv-cpanel-page .cv-card,
body.cv-cpanel-page .cv-cardx,
body.cv-cpanel-page .card,
body.cv-cpanel-page .panel,
body.cv-cpanel-page .box,
body.cv-dashboard-page .cv-cardx{
  border:1px solid var(--cp-line)!important;
  border-radius:var(--cp-radius)!important;
  background:var(--cp-surface)!important;
  box-shadow:var(--cp-shadow)!important;
}
body.cv-cpanel-page .cv-card,body.cv-cpanel-page .cv-cardx{padding:19px!important}
body.cv-cpanel-page .card-head,body.cv-cpanel-page .panel-heading,body.cv-cpanel-page .box-header{
  background:#f8fafc!important;border-bottom:1px solid var(--cp-line)!important;border-radius:8px 8px 0 0!important;
}

/* Dashboard */
body.cv-dashboard-page{padding:24px!important}
.cv-dash-wrap{max-width:1320px!important}
.cv-dash-hero{margin-bottom:16px!important;padding-bottom:15px;border-bottom:1px solid var(--cp-line)}
.cv-dash-hero h1{font-size:29px!important;color:#24364a!important}
.cv-dash-hero p{font-size:13.5px!important;margin-top:7px!important}
.cv-btnx{min-height:37px!important;border-radius:6px!important;padding:0 13px!important;box-shadow:none!important;background:var(--cp-brand-dark)!important;font-size:12.5px!important}
.cv-btnx.soft{background:#edf3f7!important;color:#30485f!important;border:1px solid #dbe4ec!important}
.cv-stats{gap:11px!important;margin-bottom:15px!important}
.cv-stat{
  min-height:82px;padding:14px!important;border-radius:7px!important;border:1px solid var(--cp-line)!important;
  box-shadow:none!important;gap:12px!important;
}
.cv-stat .ico{width:42px!important;height:42px!important;min-width:42px!important;border-radius:7px!important;background:#e9f6fa!important;color:#156f84!important;font-size:19px!important;border:1px solid #cae9f0}
.cv-stat.green .ico{background:#edf8ef!important;color:#217c35!important;border-color:#d1ebd6}.cv-stat.orange .ico{background:#fff5e9!important;color:#aa6100!important;border-color:#f2ddbd}.cv-stat.red .ico{background:#fdf0ef!important;color:#b23830!important;border-color:#efd1ce}.cv-stat.purple .ico{background:#f3effc!important;color:#6d42a9!important;border-color:#dfd5f2}
.cv-stat span{font-size:12px!important}.cv-stat b{font-size:22px!important}
.cv-grid-main{gap:14px!important;grid-template-columns:minmax(0,1.32fr) minmax(320px,.68fr)!important}
.cv-cardx{border-radius:8px!important;padding:18px!important;margin-bottom:14px!important;box-shadow:none!important}
.cv-cardx h2{font-size:17px!important;margin-bottom:13px!important;padding-bottom:10px;border-bottom:1px solid #e5eaf0}
.cv-quick{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
.cv-quick a{min-height:68px!important;border-radius:7px!important;padding:12px!important;box-shadow:none!important;font-size:13px!important;background:#fbfcfd!important}
.cv-quick a:before{content:"›";float:right;color:var(--cp-brand-dark);font-size:18px;line-height:1}
.cv-quick a span{font-size:11.5px!important;margin-top:4px!important}
.cv-task,.cv-activity,.cv-status-row{border-radius:6px!important;padding:11px 12px!important;background:#fbfcfd!important}
.cv-pill{padding:5px 8px!important;border-radius:999px!important;font-size:11.5px!important}
.cv-top-note{background:#20364e!important;color:#fff!important}
.cv-top-note h2{color:#fff!important;border-color:rgba(255,255,255,.13)!important}

/* Tables */
body.cv-cpanel-page table,
body.cv-cpanel-page .cv-table{
  width:100%;border-collapse:separate!important;border-spacing:0!important;
  border:1px solid var(--cp-line)!important;border-radius:7px!important;background:#fff!important;box-shadow:none!important;
}
body.cv-cpanel-page table thead th,
body.cv-cpanel-page .cv-table th{
  background:#eef2f6!important;color:#34495f!important;border-bottom:1px solid #d7e0e9!important;
  padding:11px 12px!important;font-size:11px!important;letter-spacing:.045em;text-transform:uppercase;font-weight:850!important;
}
body.cv-cpanel-page table td,
body.cv-cpanel-page .cv-table td{padding:11px 12px!important;border-bottom:1px solid #e6ebf0!important;font-size:13px!important;background:#fff!important}
body.cv-cpanel-page table tbody tr:hover td{background:#f9fbfc!important}
body.cv-cpanel-page table tr:last-child td{border-bottom:0!important}
body.cv-cpanel-page .cv-table-scroll,.cv-table-scroll{border-radius:7px;overflow:auto}

/* Forms */
body.cv-cpanel-page input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
body.cv-cpanel-page select,
body.cv-cpanel-page textarea{
  min-height:39px;border:1px solid #cfd9e3!important;border-radius:5px!important;background:#fff!important;
  padding:9px 11px!important;font-size:13px!important;color:#26394e!important;box-shadow:inset 0 1px 1px rgba(26,44,64,.025)!important;
}
body.cv-cpanel-page textarea{min-height:92px}
body.cv-cpanel-page input:focus,body.cv-cpanel-page select:focus,body.cv-cpanel-page textarea:focus{border-color:#5aa9bd!important;box-shadow:0 0 0 3px rgba(54,170,196,.12)!important}
body.cv-cpanel-page label{color:#34495f;font-weight:700;font-size:12.5px}
body.cv-cpanel-page button,
body.cv-cpanel-page .btn,
body.cv-cpanel-page .button,
body.cv-cpanel-page input[type=submit],
body.cv-cpanel-page a.btn{
  min-height:37px;border-radius:5px!important;padding:8px 13px!important;font-size:12.5px!important;font-weight:800!important;box-shadow:none!important;
}
body.cv-cpanel-page button[type=submit],body.cv-cpanel-page input[type=submit],body.cv-cpanel-page .btn-primary{background:var(--cp-brand-dark)!important;color:#fff!important}

/* Primary link-buttons inside content pages: prevent inherited link colours from
   making dark buttons unreadable. Secondary buttons keep their lighter treatment. */
body.cv-cpanel-page a.cv-btn:not(.secondary):not(.btn-secondary),
body.cv-cpanel-page a.btn-primary,
body.cv-cpanel-page a.button-primary{
  color:#fff!important;
  background:linear-gradient(rgba(0,0,0,.12),rgba(0,0,0,.12)),var(--cp-brand-dark)!important;
  border:1px solid rgba(2,22,39,.20)!important;
  text-decoration:none!important;
}
body.cv-cpanel-page a.cv-btn:not(.secondary):not(.btn-secondary):hover,
body.cv-cpanel-page a.btn-primary:hover,
body.cv-cpanel-page a.button-primary:hover{color:#fff!important;filter:brightness(.92)}

/* Actual login form button. */
body.cv-role-admin .login-container button[type=submit]{
  background:#075a9c!important;color:#fff!important;border:1px solid #064d86!important;
  text-shadow:0 1px 1px rgba(0,0,0,.24)!important;
}
body.cv-role-admin .login-container button[type=submit]:hover{background:#064d86!important;color:#fff!important}
body.cv-role-admin .login-container button[type=submit]:focus-visible{outline:3px solid rgba(37,185,214,.38)!important;outline-offset:2px!important}

/* Status and alerts */
body.cv-cpanel-page .alert,body.cv-cpanel-page .notice,body.cv-cpanel-page .message{border-radius:6px!important;padding:11px 13px!important;font-size:13px!important;box-shadow:none!important}
body.cv-cpanel-page .badge,body.cv-cpanel-page .status,body.cv-cpanel-page .cv-badge{border-radius:999px!important;font-size:11px!important;padding:5px 8px!important}

/* Dark mode */
body.dark,body.dark.cv-cpanel-page,body.dark.cv-cpanel-shell{--cp-bg:#101722;--cp-surface:#182231;--cp-surface-2:#202c3c;--cp-text:#e7eef7;--cp-muted:#9eafc1;--cp-line:#314052;--cp-link:#67c8df;background:var(--cp-bg)!important;color:var(--cp-text)!important}
body.dark .cv-topbar{background:#182231!important;border-color:#314052!important}
body.dark .cv-topbar strong{color:#e7eef7!important}
body.dark .cv-actions .cv-btn.secondary,body.dark .cv-topbar .cv-btn.secondary,
body.dark .cv-actions .cv-btn.btn-secondary,body.dark .cv-topbar .cv-btn.btn-secondary{
  background:#243246!important;color:#f2f6fb!important;border-color:#3b4a5c!important;
}
body.dark .cv-actions .cv-btn.secondary:hover,body.dark .cv-topbar .cv-btn.secondary:hover{background:#2d3d52!important;color:#fff!important}
body.dark .cv-frame{filter:none!important;background:#101722!important}
body.dark.cv-cpanel-page h1,body.dark.cv-cpanel-page h2,body.dark.cv-cpanel-page h3{color:#e7eef7!important}
body.dark.cv-cpanel-page .submenu-card,body.dark.cv-cpanel-page .cv-card,body.dark.cv-cpanel-page .card,body.dark.cv-dashboard-page .cv-cardx,body.dark.cv-dashboard-page .cv-stat{background:#182231!important;color:#e7eef7!important;border-color:#314052!important}
body.dark.cv-cpanel-page table td,body.dark.cv-cpanel-page .cv-table td{background:#182231!important;color:#e7eef7!important;border-color:#314052!important}
body.dark.cv-cpanel-page table th,body.dark.cv-cpanel-page .cv-table th{background:#202c3c!important;color:#dce7f4!important;border-color:#314052!important}
body.dark.cv-cpanel-page input,body.dark.cv-cpanel-page select,body.dark.cv-cpanel-page textarea{background:#111a27!important;color:#e7eef7!important;border-color:#3b4a5c!important}

@media(max-width:1100px){
  .cv-grid-main{grid-template-columns:1fr!important}
  .cv-quick{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:980px){
  .cv-shell{grid-template-columns:1fr!important}
  .cv-sidebar{width:270px!important}
  .cv-topbar{padding:0 13px!important}
  .cv-actions .cv-btn.secondary{display:none}
  body.cv-cpanel-page .cv-page,body.cv-cpanel-page .cv-page-wide{padding:20px 14px 38px!important}
}
@media(max-width:680px){
  body.cv-dashboard-page{padding:14px!important}
  .cv-actions{gap:5px!important}.cv-actions .cv-mini{display:none}
  .cv-actions .cv-btn{padding:7px 9px!important}
  body.cv-cpanel-page .submenu-grid{grid-template-columns:1fr!important}
  .cv-stats{grid-template-columns:1fr!important}
  .cv-quick{grid-template-columns:1fr!important}
  .cv-dash-hero h1{font-size:25px!important}
}

/* CenterView Update 376 — invoice status colours restored after cPanel theme.
   The generic cPanel table rules use !important and previously overrode the
   existing invoice row colours. These scoped rules intentionally come last. */
body.cv-cpanel-page .sv-table tr.row-paid td{
  background:#e8f7ec!important;border-bottom-color:#cfead5!important;
}
body.cv-cpanel-page .sv-table tr.row-open td{
  background:#fff7df!important;border-bottom-color:#f2dfaa!important;
}
body.cv-cpanel-page .sv-table tr.row-work td{
  background:#eaf3ff!important;border-bottom-color:#cfe1f7!important;
}
body.cv-cpanel-page .sv-table tr.row-mahnung td{
  background:#fff0e5!important;border-bottom-color:#f4d1b8!important;
}
body.cv-cpanel-page .sv-table tr.row-cancelled td{
  background:#fdecec!important;border-bottom-color:#efcccc!important;
}
body.cv-cpanel-page .sv-table tr.row-paid{border-left-color:#22a447!important}
body.cv-cpanel-page .sv-table tr.row-open{border-left-color:#d58a00!important}
body.cv-cpanel-page .sv-table tr.row-work{border-left-color:#337dcc!important}
body.cv-cpanel-page .sv-table tr.row-mahnung{border-left-color:#e16316!important}
body.cv-cpanel-page .sv-table tr.row-cancelled{border-left-color:#d43b34!important}
body.cv-cpanel-page .sv-table tr.row-paid:hover td{background:#dcf2e2!important}
body.cv-cpanel-page .sv-table tr.row-open:hover td{background:#ffefc2!important}
body.cv-cpanel-page .sv-table tr.row-work:hover td{background:#dcecff!important}
body.cv-cpanel-page .sv-table tr.row-mahnung:hover td{background:#ffe5d3!important}
body.cv-cpanel-page .sv-table tr.row-cancelled:hover td{background:#f9dddd!important}

body.cv-cpanel-page .invoice-status-badge,
body.cv-cpanel-page .status-select{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:30px!important;border-radius:999px!important;padding:5px 10px!important;
  font-weight:850!important;line-height:1.2!important;
}
body.cv-cpanel-page .invoice-status-badge.status-paid,
body.cv-cpanel-page .status-select.paid{
  background:#dff5e5!important;color:#17672d!important;border:1px solid #9fd4ad!important;
}
body.cv-cpanel-page .invoice-status-badge.status-open,
body.cv-cpanel-page .status-select.open{
  background:#fff2c9!important;color:#855600!important;border:1px solid #e7c66c!important;
}
body.cv-cpanel-page .invoice-status-badge.status-work,
body.cv-cpanel-page .status-select.work{
  background:#e0edff!important;color:#215f9f!important;border:1px solid #9fc2ec!important;
}
body.cv-cpanel-page .invoice-status-badge.status-mahnung,
body.cv-cpanel-page .status-select.mahnung{
  background:#ffe2cf!important;color:#9a3f0b!important;border:1px solid #efaa7c!important;
}
body.cv-cpanel-page .invoice-status-badge.status-cancelled,
body.cv-cpanel-page .status-select.cancelled{
  background:#f8dddd!important;color:#9b2824!important;border:1px solid #e7a09d!important;
}

body.dark.cv-cpanel-page .sv-table tr.row-paid td{background:#173426!important;color:#e8f7ec!important;border-color:#28533a!important}
body.dark.cv-cpanel-page .sv-table tr.row-open td{background:#3a3019!important;color:#fff4d2!important;border-color:#5d4b22!important}
body.dark.cv-cpanel-page .sv-table tr.row-work td{background:#1a3048!important;color:#e7f1ff!important;border-color:#294b70!important}
body.dark.cv-cpanel-page .sv-table tr.row-mahnung td{background:#3d271b!important;color:#ffe9dc!important;border-color:#643b25!important}
body.dark.cv-cpanel-page .sv-table tr.row-cancelled td{background:#3b2224!important;color:#fdebec!important;border-color:#613438!important}
body.dark.cv-cpanel-page .sv-table tr.row-paid:hover td{background:#1d402d!important}
body.dark.cv-cpanel-page .sv-table tr.row-open:hover td{background:#44381c!important}
body.dark.cv-cpanel-page .sv-table tr.row-work:hover td{background:#203a56!important}
body.dark.cv-cpanel-page .sv-table tr.row-mahnung:hover td{background:#482d1f!important}
body.dark.cv-cpanel-page .sv-table tr.row-cancelled:hover td{background:#46272a!important}
body.dark.cv-cpanel-page .invoice-status-badge.status-paid,
body.dark.cv-cpanel-page .status-select.paid{background:#204b31!important;color:#c9f1d5!important;border-color:#3b7450!important}
body.dark.cv-cpanel-page .invoice-status-badge.status-open,
body.dark.cv-cpanel-page .status-select.open{background:#4b3c18!important;color:#ffeab0!important;border-color:#806829!important}
body.dark.cv-cpanel-page .invoice-status-badge.status-work,
body.dark.cv-cpanel-page .status-select.work{background:#233f60!important;color:#d7eaff!important;border-color:#416b98!important}
body.dark.cv-cpanel-page .invoice-status-badge.status-mahnung,
body.dark.cv-cpanel-page .status-select.mahnung{background:#58301b!important;color:#ffd9c0!important;border-color:#8a4c2a!important}
body.dark.cv-cpanel-page .invoice-status-badge.status-cancelled,
body.dark.cv-cpanel-page .status-select.cancelled{background:#54282b!important;color:#ffd7d9!important;border-color:#8a4549!important}



/* CenterView Update 377 — readable action links and reset buttons.
   The generic portal link colour must never override text on dark buttons. */
body.cv-cpanel-page .topbar a{
  color:#fff!important;
  background:#34465c!important;
  border:1px solid rgba(255,255,255,.12)!important;
  text-decoration:none!important;
  text-shadow:0 1px 1px rgba(0,0,0,.28)!important;
}
body.cv-cpanel-page .topbar a:hover{
  color:#fff!important;
  background:#40566f!important;
}
body.cv-cpanel-page .topbar a:focus-visible{
  outline:3px solid rgba(37,185,214,.40)!important;
  outline-offset:2px!important;
}
body.cv-cpanel-page a.btn-reset{
  color:#fff!important;
  background:#64748b!important;
  border:1px solid #526174!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-decoration:none!important;
}
body.cv-cpanel-page a.btn-reset:hover{
  color:#fff!important;
  background:#526174!important;
}
body.cv-cpanel-page a.btn-main{
  color:#fff!important;
  text-decoration:none!important;
}

/* CenterView Update 395 — vollständiger Darkmode in allen Portalen und Inhaltsseiten */
html.dark{background:#101722!important;color-scheme:dark}
body.dark.cv-cpanel-page,
body.dark.cv-cpanel-page .cv-page,
body.dark.cv-cpanel-page .cv-page-wide,
body.dark.cv-cpanel-page .page,
body.dark.cv-cpanel-page .content,
body.dark.cv-cpanel-page .main-content,
body.dark.cv-cpanel-page .dashboard-content,
body.dark.cv-cpanel-page .container,
body.dark.cv-cpanel-page .container-fluid{
  background-color:#101722!important;color:#e7eef7!important;
}
body.dark.cv-cpanel-page :is(.card,.panel,.box,.widget,.section-card,.content-card,.table-card,.form-card,.settings-card,.dashboard-card,.stat-card,.module-card,.hosting-card,.domain-card,.invoice-card,.support-card,.modal-content,.dropdown-menu){
  background-color:#182231!important;color:#e7eef7!important;border-color:#314052!important;
}
body.dark.cv-cpanel-page :is(.card-header,.panel-heading,.box-header,.modal-header,.modal-footer,.table-header){
  background-color:#202c3c!important;color:#e7eef7!important;border-color:#314052!important;
}
body.dark.cv-cpanel-page :is(.card-body,.panel-body,.box-body,.modal-body){color:#e7eef7!important}

/* Helle Dashboard-Kacheln und Aufgabenlisten vollständig abdunkeln. */
body.dark.cv-dashboard-page .cv-quick a,
body.dark.cv-dashboard-page .cv-task,
body.dark.cv-dashboard-page .cv-activity,
body.dark.cv-dashboard-page .cv-status-row{
  background:#202c3c!important;color:#e7eef7!important;border-color:#3a4b60!important;
  box-shadow:none!important;
}
body.dark.cv-dashboard-page .cv-quick a:hover,
body.dark.cv-dashboard-page .cv-task:hover,
body.dark.cv-dashboard-page .cv-status-row:hover{background:#26364a!important;border-color:#52708e!important}
body.dark.cv-dashboard-page .cv-quick a span,
body.dark.cv-dashboard-page .cv-task span,
body.dark.cv-dashboard-page .cv-activity span,
body.dark.cv-dashboard-page .cv-status-row span,
body.dark.cv-dashboard-page .cv-dash-hero p{color:#aebed0!important}
body.dark.cv-dashboard-page .cv-track{background:#2b3a4e!important}
body.dark.cv-dashboard-page .cv-activity-list:empty,
body.dark.cv-dashboard-page .cv-task-list:empty{background:#182231!important}

/* Tabellen: auch ältere Seiten und Inline-Hintergründe abdecken. */
body.dark.cv-cpanel-page .table-responsive,
body.dark.cv-cpanel-page .table-wrap,
body.dark.cv-cpanel-page .table-container{background:#182231!important;border-color:#314052!important}
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark){
  background:#182231!important;color:#e7eef7!important;border-color:#314052!important;
}
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark) thead,
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark) thead tr,
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark) th{
  background:#202c3c!important;color:#dce7f4!important;border-color:#3a4b60!important;
}
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark) tbody,
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark) tr,
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark) td{
  background:#182231!important;color:#e7eef7!important;border-color:#314052!important;
}
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark) tbody tr:nth-child(even) td{background:#1b2737!important}
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark) tbody tr:hover td{background:#243246!important}
body.dark.cv-cpanel-page table:not(.sv-table):not(.cv-no-dark) tfoot td{background:#202c3c!important;color:#e7eef7!important}
body.dark.cv-cpanel-page table a{color:#67c8df!important}

/* Formulare, Suchfelder und Auswahlfelder auf alten Seiten. */
body.dark.cv-cpanel-page :is(input,select,textarea,.form-control,.input-group-text){
  background:#111a27!important;color:#e7eef7!important;border-color:#3b4a5c!important;
}
body.dark.cv-cpanel-page input::placeholder,
body.dark.cv-cpanel-page textarea::placeholder{color:#7f92a7!important}
body.dark.cv-cpanel-page :is(fieldset,details,summary,hr){border-color:#314052!important}
body.dark.cv-cpanel-page :is(pre,code,.code-box){background:#0c1420!important;color:#d9e7f5!important;border-color:#314052!important}
body.dark.cv-cpanel-page :is(.empty-state,.no-data,.alert-info,.info-box){background:#1d2c3e!important;color:#dce7f4!important;border-color:#3a4b60!important}

/* Iframe-Fläche ohne weißen Blitz beim Seitenwechsel. */
body.dark.cv-cpanel-shell .cv-content,
body.dark.cv-cpanel-shell .cv-frame{background:#101722!important}


/* CenterView Update 397 — Darkmode-Kontrast-Härtung für alte und dynamische Seiten */
html.dark body{background:#101722!important;color:#e7eef7!important}
body.dark.cv-cpanel-page .cv-dark-auto-surface,
body.dark.cv-cpanel-page [data-cv-dark-surface="1"]{
  background-color:#182231!important;background-image:none!important;color:#e7eef7!important;
  border-color:#314052!important;box-shadow:none!important;
}
body.dark.cv-cpanel-page .cv-dark-auto-surface-alt{
  background-color:#202c3c!important;background-image:none!important;color:#e7eef7!important;border-color:#3a4b60!important;
}
body.dark.cv-cpanel-page .cv-dark-auto-text{color:#e7eef7!important;text-shadow:none!important}
body.dark.cv-cpanel-page .cv-dark-auto-muted{color:#aebed0!important}
body.dark.cv-cpanel-page .cv-dark-auto-border{border-color:#314052!important}
body.dark.cv-cpanel-page :is(.list-group-item,.dropdown-item,.accordion-item,.accordion-body,.accordion-header,.tab-content,.nav-tabs,.well,.jumbotron,.tile,.kpi,.metric,.summary,.toolbar,.filter-bar,.search-bar,.pagination,.dataTables_wrapper,.dataTables_scroll,.dataTables_scrollBody){
  background:#182231!important;color:#e7eef7!important;border-color:#314052!important;
}
body.dark.cv-cpanel-page :is(.list-group-item,.dropdown-item,.accordion-button):hover{background:#243246!important;color:#fff!important}
body.dark.cv-cpanel-page :is(.form-text,.help-text,.small,.text-muted,.description,.subtitle,.hint):not(.badge):not(.status){color:#aebed0!important}
body.dark.cv-cpanel-page :is(table,.table,.cv-table) :is(a:not(.btn),button.link){color:#7dd9ee!important}
body.dark.cv-cpanel-page :is(table,.table,.cv-table) :is(input,select,textarea){background:#0f1825!important;color:#f0f5fb!important;border-color:#46586d!important}
body.dark.cv-cpanel-page option{background:#111a27!important;color:#e7eef7!important}
body.dark.cv-cpanel-page ::selection{background:#236b84;color:#fff}
body.dark.cv-cpanel-page :focus-visible{outline-color:#50c9e1!important}
/* Semantische Hinweise bleiben farbig, aber erhalten lesbaren Text. */
body.dark.cv-cpanel-page :is(.ok,.success,.alert-success){background:#173b28!important;color:#d7f7e1!important;border-color:#2e6b45!important}
body.dark.cv-cpanel-page :is(.err,.error,.danger,.alert-danger){background:#432326!important;color:#ffdfe1!important;border-color:#744048!important}
body.dark.cv-cpanel-page :is(.warn,.warning,.alert-warning){background:#443519!important;color:#ffedbd!important;border-color:#705828!important}
body.dark.cv-cpanel-page :is(.hint,.info,.alert-info){background:#1b344a!important;color:#dceeff!important;border-color:#365c7a!important}
/* Tabellenzellen mit alten Inline-Farben: JavaScript markiert sie zusätzlich. */
body.dark.cv-cpanel-page td[style*="background"],body.dark.cv-cpanel-page th[style*="background"]{color:#e7eef7!important;border-color:#314052!important}
/* Keine weiße Fläche während ein Portal-Iframe lädt. */
body.dark.cv-cpanel-shell iframe,html.dark iframe{background:#101722!important;color-scheme:dark}

/* CenterView Update 398 — vollständige Darkmode-Kontrastkorrektur
   Behebt helle Tabellen, blasse Untertexte und unlesbare eigene Badge-/Statusklassen
   auf Admin-, Reseller- und Kundenseiten. */
body.dark.cv-cpanel-page{
  --cv-dark-bg:#101722;
  --cv-dark-surface:#182231;
  --cv-dark-surface-alt:#202c3c;
  --cv-dark-border:#3b4d62;
  --cv-dark-text:#eef4fb;
  --cv-dark-muted:#b6c5d6;
  --cv-dark-link:#7edcf0;
}

/* Kleine Unterzeilen dürfen im Darkmode nicht in dunklem Grau stehen bleiben. */
body.dark.cv-cpanel-page :is(
  .muted,.cv-muted,.cv-sub,.cv-subtitle,.cvhf-sub,.cvv-sub,.customer-sub,
  .meta,.order-meta,.form-text,.help-text,.description,.subtitle,.hint,
  .small,.text-muted,small,[class$="-sub"],[class*="-sub "],[class$="_sub"]
){
  color:var(--cv-dark-muted)!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* Eigene Badge-, Pill-, Chip- und Statusklassen aus älteren Modulen. */
body.dark.cv-cpanel-page :is(
  .badge,.cv-badge,.cv-pill,.cvv-badge,.pill,.pay-pill,.registrar-pill,.dns-badge,
  .tag,.chip,span.status,small.status,a.status,
  span[class*="-badge"],small[class*="-badge"],a[class*="-badge"],
  span[class*="_badge"],small[class*="_badge"],a[class*="_badge"]
){
  background:#2a3a4f!important;
  background-image:none!important;
  color:#f3f7fc!important;
  border:1px solid #4b6078!important;
  opacity:1!important;
  text-shadow:none!important;
  box-shadow:none!important;
}
body.dark.cv-cpanel-page :is(
  .badge,.cv-badge,.cv-pill,.cvv-badge,.pill,.pay-pill,.registrar-pill,.dns-badge,
  .tag,.chip,span.status,small.status,a.status,
  span[class*="-badge"],small[class*="-badge"],a[class*="-badge"]
):is(.ok,.good,.on,.green,.success,.paid,.active,[class*="success"],[class*="paid"]){
  background:#1d4930!important;color:#d7f7e1!important;border-color:#397354!important;
}
body.dark.cv-cpanel-page :is(
  .badge,.cv-badge,.cv-pill,.cvv-badge,.pill,.pay-pill,.registrar-pill,.dns-badge,
  .tag,.chip,span.status,small.status,a.status,
  span[class*="-badge"],small[class*="-badge"],a[class*="-badge"]
):is(.warn,.warning,.wait,.review,.pending,.orange,[class*="warn"],[class*="pending"]){
  background:#4a3818!important;color:#ffedbd!important;border-color:#7b612b!important;
}
body.dark.cv-cpanel-page :is(
  .badge,.cv-badge,.cv-pill,.cvv-badge,.pill,.pay-pill,.registrar-pill,.dns-badge,
  .tag,.chip,span.status,small.status,a.status,
  span[class*="-badge"],small[class*="-badge"],a[class*="-badge"]
):is(.bad,.danger,.error,.err,.fail,.red,.cancelled,.disabled,[class*="danger"],[class*="error"],[class*="cancel"]){
  background:#4c272b!important;color:#ffe0e3!important;border-color:#7d454c!important;
}
body.dark.cv-cpanel-page :is(
  .badge,.cv-badge,.cv-pill,.cvv-badge,.pill,.pay-pill,.registrar-pill,.dns-badge,
  .tag,.chip,span.status,small.status,a.status,
  span[class*="-badge"],small[class*="-badge"],a[class*="-badge"]
):is(.info,.new,.auto,.test,.rate,[class*="info"]){
  background:#1d4057!important;color:#d8f1ff!important;border-color:#3d6a84!important;
}
body.dark.cv-cpanel-page :is(
  .badge,.cv-badge,.cv-pill,.cvv-badge,.pill,.pay-pill,.registrar-pill,.dns-badge,
  .tag,.chip,span.status,small.status,a.status,
  span[class*="-badge"],small[class*="-badge"],a[class*="-badge"]
):is(.off,.inactive,.gray,.neutral){
  background:#303a48!important;color:#d9e2ec!important;border-color:#566476!important;
}

/* Allgemeine Tabellenhärtung, auch für Tabellen mit eigenen Präfix-Klassen. */
body.dark.cv-cpanel-page :is(.table-responsive,.table-wrap,.table-container,[class$="-table-wrap"],[class*="-table-wrap "]){
  background:var(--cv-dark-surface)!important;
  border-color:var(--cv-dark-border)!important;
}
body.dark.cv-cpanel-page table:not(.cv-no-dark),
body.dark.cv-cpanel-page table:not(.cv-no-dark) :is(thead,tbody,tfoot,tr,td,th){
  border-color:var(--cv-dark-border)!important;
}
body.dark.cv-cpanel-page table:not(.cv-no-dark) th{
  background:var(--cv-dark-surface-alt)!important;
  color:#e3edf8!important;
}
body.dark.cv-cpanel-page table:not(.cv-no-dark) td{
  background:var(--cv-dark-surface)!important;
  color:var(--cv-dark-text)!important;
}
body.dark.cv-cpanel-page table:not(.cv-no-dark) tbody tr:nth-child(even) td{background:#1b2838!important}
body.dark.cv-cpanel-page table:not(.cv-no-dark) tbody tr:hover td{background:#26364a!important}
body.dark.cv-cpanel-page table:not(.cv-no-dark) :is(a:not(.btn),button.link){color:var(--cv-dark-link)!important}
body.dark.cv-cpanel-page table:not(.cv-no-dark) :is(p,span,div,label,strong,b,small):not(.badge):not(.pill):not(.tag):not(.chip){text-shadow:none!important}

/* Dynamisch erkannte Flächen und Texte. */
body.dark.cv-cpanel-page .cv-dark-auto-surface,
body.dark.cv-cpanel-page [data-cv-dark-surface="1"]{
  background-color:var(--cv-dark-surface)!important;
  background-image:none!important;
  color:var(--cv-dark-text)!important;
  border-color:var(--cv-dark-border)!important;
  box-shadow:none!important;
}
body.dark.cv-cpanel-page .cv-dark-auto-surface-alt{background-color:var(--cv-dark-surface-alt)!important;color:var(--cv-dark-text)!important;border-color:var(--cv-dark-border)!important}
body.dark.cv-cpanel-page .cv-dark-auto-text{color:var(--cv-dark-text)!important;opacity:1!important;text-shadow:none!important}
body.dark.cv-cpanel-page .cv-dark-auto-muted{color:var(--cv-dark-muted)!important;opacity:1!important;text-shadow:none!important}
body.dark.cv-cpanel-page .cv-dark-auto-link{color:var(--cv-dark-link)!important;opacity:1!important;text-shadow:none!important}
body.dark.cv-cpanel-page .cv-dark-auto-semantic{background:#2a3a4f!important;color:#f3f7fc!important;border-color:#4b6078!important;opacity:1!important;text-shadow:none!important}
body.dark.cv-cpanel-page .cv-dark-auto-semantic.cv-dark-tone-success{background:#1d4930!important;color:#d7f7e1!important;border-color:#397354!important}
body.dark.cv-cpanel-page .cv-dark-auto-semantic.cv-dark-tone-warning{background:#4a3818!important;color:#ffedbd!important;border-color:#7b612b!important}
body.dark.cv-cpanel-page .cv-dark-auto-semantic.cv-dark-tone-danger{background:#4c272b!important;color:#ffe0e3!important;border-color:#7d454c!important}
body.dark.cv-cpanel-page .cv-dark-auto-semantic.cv-dark-tone-info{background:#1d4057!important;color:#d8f1ff!important;border-color:#3d6a84!important}

/* Konkrete Besucherstatistik aus dem Screenshot. */
body.dark.cv-cpanel-page :is(.cvv-wrap,.cvv-card,.cvv-stat,.cvv-table-wrap,.cvv-note){color:var(--cv-dark-text)!important;border-color:var(--cv-dark-border)!important}
body.dark.cv-cpanel-page :is(.cvv-card,.cvv-stat,.cvv-note){background:var(--cv-dark-surface)!important;background-image:none!important;box-shadow:none!important}
body.dark.cv-cpanel-page .cvv-stat b{color:#f3f7fc!important}
body.dark.cv-cpanel-page .cvv-stat span,
body.dark.cv-cpanel-page .cvv-sub,
body.dark.cv-cpanel-page .cvv-head p,
body.dark.cv-cpanel-page .cvv-rank-row span,
body.dark.cv-cpanel-page .cvv-pagination{color:var(--cv-dark-muted)!important;opacity:1!important}
body.dark.cv-cpanel-page .cvv-pagepath{color:var(--cv-dark-link)!important}
body.dark.cv-cpanel-page .cvv-table th{background:var(--cv-dark-surface-alt)!important;color:#e3edf8!important}
body.dark.cv-cpanel-page .cvv-table td{background:var(--cv-dark-surface)!important;color:var(--cv-dark-text)!important}
body.dark.cv-cpanel-page .cvv-table tr:hover td{background:#26364a!important}
body.dark.cv-cpanel-page .cvv-badge{background:#2a3a4f!important;color:#f3f7fc!important;border-color:#4b6078!important}
body.dark.cv-cpanel-page .cvv-badge.good{background:#1d4930!important;color:#d7f7e1!important;border-color:#397354!important}
body.dark.cv-cpanel-page .cvv-badge.warn{background:#4a3818!important;color:#ffedbd!important;border-color:#7b612b!important}

/* Weiße Ladefläche und alte feste Seitenhintergründe unterbinden. */
html.dark,html.dark body,body.dark.cv-cpanel-page,body.dark.cv-cpanel-shell,
body.dark.cv-cpanel-shell .cv-content,body.dark.cv-cpanel-shell .cv-frame,
body.dark.cv-cpanel-shell iframe{background-color:var(--cv-dark-bg,#101722)!important;color-scheme:dark}

/* CenterView Update 399 — Darkmode- und Layout-Härtung
   - überschreibt auch alte Inline-Hellflächen über die JS-Normalisierung
   - verbessert Formularraster, Checkbox-Zeilen und lange Beschriftungen
   - konkrete Korrekturen für Preisstrategie, TLD-Preise, Website-CMS,
     Benutzerverwaltung und Support in Admin, Reseller und Kundenportal. */

body.cv-cpanel-page,
body.cv-cpanel-page *{box-sizing:border-box}
body.cv-cpanel-page :is(main,.wrap,.container,.container-fluid,.card,.panel,.box,form,fieldset,.grid,.grid2,.grid3,.form-grid,.row,.table-wrap,.table-responsive){min-width:0}
body.cv-cpanel-page :is(input,select,textarea,.form-control){max-width:100%;min-width:0}
body.cv-cpanel-page label{line-height:1.35;white-space:normal;overflow-wrap:anywhere}
body.cv-cpanel-page :is(h1,h2,h3,h4,p,td,th,small,span,a,label){overflow-wrap:anywhere}

/* Einheitliche Bedienelemente im Darkmode. Die stärkere Spezifität ist
   absichtlich gewählt, weil zahlreiche ältere Module feste helle Farben setzen. */
body.dark.cv-cpanel-page :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="hidden"]),
  select,textarea,.form-control,.input,.select,.textarea
){
  background-color:#111a27!important;
  background-image:none!important;
  color:#f0f5fb!important;
  border-color:#46586d!important;
  box-shadow:none!important;
  opacity:1!important;
  caret-color:#f0f5fb!important;
}
body.dark.cv-cpanel-page :is(input,textarea)::placeholder{color:#90a2b6!important;opacity:1!important}
body.dark.cv-cpanel-page :is(input,select,textarea):disabled{background:#202c3c!important;color:#aebed0!important;border-color:#3b4d62!important}
body.dark.cv-cpanel-page :is(input[type="checkbox"],input[type="radio"]){accent-color:#35c6df!important}

body.dark.cv-cpanel-page :is(
  .tab:not(.active),.btn-soft,.letter:not(.active),.submenu-card,.mini,.rule,.row,
  .kpi,.stat,.tile,.metric,.summary-card,.filter-card,.option-box,.checkline,
  .list-group-item,.dropdown-item,.accordion-item
){
  background-color:#1b2737!important;
  background-image:none!important;
  color:#eef4fb!important;
  border-color:#3b4d62!important;
  box-shadow:none!important;
}
body.dark.cv-cpanel-page :is(.tab:not(.active),.btn-soft,.letter:not(.active),.submenu-card) :is(span,small,b,strong){color:inherit!important;opacity:1!important}
body.dark.cv-cpanel-page :is(.tab:not(.active),.btn-soft,.letter:not(.active)){color:#83dcef!important}
body.dark.cv-cpanel-page :is(.tab:not(.active),.btn-soft,.letter:not(.active)):hover{background:#26364a!important;color:#fff!important}

/* Alte helle Aktionsknöpfe erhalten einen klaren Kontrast. */
body.dark.cv-cpanel-page :is(.btn-mini,.btn.gray,.btn-secondary,.secondary):not(.btn-danger):not(.red):not(.green){
  background:#2a3a4f!important;color:#f3f7fc!important;border:1px solid #4b6078!important;
}
body.dark.cv-cpanel-page :is(.btn-danger,.red,.btn-red){background:#b92d35!important;color:#fff!important;border-color:#d75a62!important}
body.dark.cv-cpanel-page :is(.btn-green,.green){color:#fff!important}
body.dark.cv-cpanel-page a.btn,body.dark.cv-cpanel-page button{opacity:1!important;text-shadow:none!important}

/* Von der JS-Kontrastprüfung direkt normalisierte Elemente. */
body.dark.cv-cpanel-page .cv399-force-surface{
  background-color:#182231!important;background-image:none!important;color:#eef4fb!important;
  border-color:#3b4d62!important;box-shadow:none!important;opacity:1!important;
}
body.dark.cv-cpanel-page .cv399-force-surface-alt{
  background-color:#202c3c!important;background-image:none!important;color:#eef4fb!important;
  border-color:#3b4d62!important;box-shadow:none!important;opacity:1!important;
}
body.dark.cv-cpanel-page .cv399-force-text{color:#eef4fb!important;opacity:1!important;text-shadow:none!important}
body.dark.cv-cpanel-page .cv399-force-muted{color:#b9c8d8!important;opacity:1!important;text-shadow:none!important}
body.dark.cv-cpanel-page .cv399-force-link{color:#83dcef!important;opacity:1!important;text-shadow:none!important}

/* Hosting-Preisstrategie: Checkboxen waren als nackte Grid-Elemente zwischen
   Eingabefeldern angeordnet und Beschriftungen überlappten. */
body.cv-route-hosting-price-strategy .grid{
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;
  gap:18px 14px!important;align-items:start!important;
}
body.cv-route-hosting-price-strategy .grid>div{min-width:0!important}
body.cv-route-hosting-price-strategy .grid>label:has(>input[type="checkbox"]){
  display:flex!important;align-items:center!important;gap:11px!important;
  min-height:72px!important;margin:0!important;padding:14px 15px!important;
  border:1px solid #d7e2ef!important;border-radius:12px!important;
  background:#f8fbff!important;color:#334155!important;
  text-transform:none!important;letter-spacing:0!important;font-size:13px!important;
}
body.cv-route-hosting-price-strategy .grid>label:has(>input[type="checkbox"])>input{
  width:19px!important;height:19px!important;min-width:19px!important;margin:0!important;padding:0!important;flex:0 0 19px!important;
}
body.dark.cv-route-hosting-price-strategy .grid>label:has(>input[type="checkbox"]){
  background:#1b2737!important;color:#eef4fb!important;border-color:#3b4d62!important;
}
body.cv-route-hosting-price-strategy table{display:block;overflow-x:auto;white-space:nowrap}

/* Öffentliches Website-System: linke Navigation, Formraster und Aktionszeilen. */
body.cv-route-public-pages-content .split{grid-template-columns:minmax(250px,310px) minmax(0,1fr)!important;align-items:start!important}
body.cv-route-public-pages-content :is(.grid,.grid3){grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;align-items:start!important}
body.cv-route-public-pages-content .row{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important}
body.cv-route-public-pages-content .row>div:last-child{display:flex!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
body.dark.cv-route-public-pages-content .tab:not(.active){background:#253348!important;color:#83dcef!important;border:1px solid #43566d!important}
body.dark.cv-route-public-pages-content .tab:not(.active) .mini{background:transparent!important;color:#b9c8d8!important;border:0!important;padding:0!important}
body.dark.cv-route-public-pages-content .row{background:#1b2737!important;color:#eef4fb!important;border-color:#3b4d62!important}

/* Registrar-TLD-Karten: weiße Mini-Karten und sehr blasse Texte beseitigen. */
body.dark.cv-route-registrar-tld-prices :is(.mini,.rule,.stat,.kpi,.letter,.chip,.empty){
  background:#1b2737!important;background-image:none!important;color:#eef4fb!important;border-color:#3b4d62!important;box-shadow:none!important;
}
body.dark.cv-route-registrar-tld-prices :is(.mini,.rule,.stat,.kpi) :is(b,strong,.tld,.registrar,span,small){color:#eef4fb!important;opacity:1!important}
body.dark.cv-route-registrar-tld-prices :is(.mini,.rule,.stat,.kpi) small{color:#b9c8d8!important}
body.dark.cv-route-registrar-tld-prices .code{background:#26364a!important;color:#dbe7f4!important;border-color:#4b6078!important}
body.dark.cv-route-registrar-tld-prices .group-title{color:#eef4fb!important}
body.dark.cv-route-registrar-tld-prices .group-title:after{background:#3b4d62!important}

/* Benutzer hinzufügen: Formular bleibt sauber zweispaltig und Hinweise
   liegen nicht mehr als schmaler Balken über dem Text. */
body.cv-route-benutzer-hinzufuegen form{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important}
body.cv-route-benutzer-hinzufuegen form>label{min-width:0!important}
body.cv-route-benutzer-hinzufuegen .option-box{min-width:0!important}
body.cv-route-benutzer-hinzufuegen .checkline{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:10px!important}
body.cv-route-benutzer-hinzufuegen .hint{margin:0!important;padding-left:28px!important;line-height:1.45!important;background:transparent!important}
body.dark.cv-route-benutzer-hinzufuegen .option-box{background:#1b2737!important;border-color:#3b4d62!important}
body.dark.cv-route-benutzer-hinzufuegen .hint{color:#b9c8d8!important}

/* Benutzerliste und Support: Status-/Archiv-Aktionen und Filter deutlich. */
body.dark.cv-route-benutzer-list .btn-mini{background:#2a3a4f!important;color:#f3f7fc!important;border:1px solid #4b6078!important}
body.dark.cv-route-benutzer-list .btn-danger{background:#b92d35!important;color:#fff!important;border-color:#d75a62!important}
body.dark.cv-route-support-tickets .tab:not(.active){background:#253348!important;color:#83dcef!important;border-color:#43566d!important}
body.dark.cv-route-support-tickets .card{background:#182231!important;color:#eef4fb!important;border-color:#3b4d62!important}

/* Allgemeine responsive Entschärfung für alte Vier-Spalten-Formulare. */
@media(max-width:1180px){
  body.cv-cpanel-page :is(.grid,.form-grid)[style*="repeat(4"],
  body.cv-route-hosting-price-strategy .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.cv-route-public-pages-content .split{grid-template-columns:1fr!important}
  body.cv-route-public-pages-content .side{position:static!important}
}
@media(max-width:720px){
  body.cv-cpanel-page :is(.grid,.grid2,.grid3,.form-grid),
  body.cv-route-hosting-price-strategy .grid,
  body.cv-route-benutzer-hinzufuegen form{grid-template-columns:1fr!important}
  body.cv-route-public-pages-content .row{grid-template-columns:1fr!important}
  body.cv-route-public-pages-content .row>div:last-child{justify-content:flex-start!important}
}


/* CenterView Update 401 — Hosting/App/Vorlagen-Darkmode und Responsive-Fix */
body.cv-route-hosting-accounts .hosting-card,
body.cv-route-app-installations .card,
body.cv-route-template-library .panel{min-width:0}
body.dark.cv-route-hosting-accounts .hosting-card{background:#182231!important;background-image:none!important;border-color:#3b4d62!important;color:#eef4fb!important}
body.dark.cv-route-hosting-accounts .hosting-head{border-color:#314052!important;background:#1b2737!important}
body.dark.cv-route-hosting-accounts .domain-title{color:#f4f8fd!important;opacity:1!important;text-shadow:none!important}
body.dark.cv-route-hosting-accounts .customer-line{color:#c2d0df!important}
body.dark.cv-route-hosting-accounts .hosting-body{background:#182231!important;color:#eef4fb!important}
body.dark.cv-route-hosting-accounts .meta{background:#101a28!important;border-color:#3b4d62!important;color:#eef4fb!important}
body.dark.cv-route-hosting-accounts .meta b{color:#f4f8fd!important}
body.dark.cv-route-hosting-accounts .meta span{color:#aebed0!important}
body.dark.cv-route-hosting-accounts .resource-badges span{background:#203249!important;border-color:#405b79!important;color:#dcecff!important}
body.dark.cv-route-hosting-accounts :is(.cycle-box,.details-box){background:#17283b!important;border-color:#3f5b78!important;color:#eef4fb!important}
body.dark.cv-route-hosting-accounts :is(.cycle-box b,.cycle-box span,.details-box summary,.details-content .muted,.usage-text){color:#dce8f5!important}
body.dark.cv-route-hosting-accounts .bar{background:#26384d!important;border-color:#40566f!important}
body.dark.cv-route-hosting-accounts .logbox{background:#0d1724!important;color:#dce8f5!important;border-color:#3b4d62!important}
body.dark.cv-route-hosting-accounts .card-actions{border-color:#314052!important}
body.dark.cv-route-hosting-accounts .path-box{background:#081321!important;color:#dbeafe!important;border:1px solid #314052!important}

body.dark.cv-route-app-installations{background:#101722!important;color:#eef4fb!important}
body.dark.cv-route-app-installations .card{background:#182231!important;border-color:#314052!important;color:#eef4fb!important;box-shadow:none!important}
body.dark.cv-route-app-installations :is(h1,h2,h3,b,strong,label){color:#eef4fb!important}
body.dark.cv-route-app-installations :is(.small,.muted){color:#b9c8d8!important}
body.dark.cv-route-app-installations .table-wrap{background:#182231!important;border-radius:10px}
body.dark.cv-route-app-installations .badge:not(.completed):not(.failed):not(.blocked_existing_files){background:#2b3d52!important;color:#eaf2fb!important}
body.cv-route-app-installations .actions{align-items:center}
body.cv-route-app-installations .actions select{flex:1 1 190px;max-width:420px}
body.cv-route-app-installations .actions button{flex:0 0 auto}

body.dark.cv-route-template-library{background:#101722!important;color:#eef4fb!important}
body.dark.cv-route-template-library .panel{background:#182231!important;border-color:#314052!important;color:#eef4fb!important;box-shadow:none!important}
body.dark.cv-route-template-library .template-link{background:#1b2737!important;color:#eef4fb!important;border-color:#3b4d62!important}
body.dark.cv-route-template-library .template-link.active{border-color:#35c6df!important;box-shadow:0 0 0 3px rgba(53,198,223,.14)!important}
body.dark.cv-route-template-library .template-link small{color:#b9c8d8!important}
body.dark.cv-route-template-library .langs a{background:#2a3a4f!important;color:#eef4fb!important}
body.dark.cv-route-template-library .langs a.active{background:#0872ba!important;color:#fff!important}
body.dark.cv-route-template-library .media{border-color:#46586d!important;background:#111a27!important}
body.dark.cv-route-template-library .media img{background:#0b1420!important}
body.dark.cv-route-template-library .preview iframe{border-color:#46586d!important}

@media(max-width:1180px){body.cv-route-hosting-accounts .hosting-grid{grid-template-columns:1fr!important}body.cv-route-hosting-accounts .meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){body.cv-route-hosting-accounts .meta-grid{grid-template-columns:1fr!important}body.cv-route-app-installations .table{min-width:780px!important}body.cv-route-app-installations .actions{min-width:260px!important}}
