/* IT-BALON.CZ podpora – v559
   Finální sjednocení admin shellu podle produkčních screenshotů.
   Vrstva opravuje pouze rozložení a vizuální stav; nemění business logiku. */

/* ---------------------------------------------------------
   1) Jedno menu stačí: levé menu je hlavní navigace.
   Starší JS vrstvy na některých stránkách přidávaly druhé vodorovné menu,
   které překrývalo KPI nebo ukazovalo chybnou aktivní položku.
   --------------------------------------------------------- */
body.itb-admin-mode .itb-v543-quick,
body.itb-admin-mode .itb-admin-quick-v530,
body.itb-admin-mode .itb-admin-quick-v533,
body.itb-admin-mode .itb-v539-management-quick,
body.itb-admin-mode .itb-v540-finance-quick,
body.itb-admin-mode .itb-hard-quick,
body.itb-admin-mode .itb-v538-quick,
body.itb-admin-mode .itb-v541-admin-quick{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}

/* ---------------------------------------------------------
   2) Levé menu – stejné písmo a stejná aktivní položka všude.
   Otevřené Nastavení není samo o sobě aktivní stránka.
   --------------------------------------------------------- */
body.unified-support-layout .client-side-nav>a,
body.unified-support-layout .client-side-nav details>summary,
body.unified-support-layout .client-side-nav details div>a,
body.unified-support-layout .itb-mobile-menu-panel-v417>a,
body.unified-support-layout .itb-mobile-menu-panel-v417 details a{
  font-weight:620!important;
}
body.unified-support-layout .client-side-nav>a.active,
body.unified-support-layout .client-side-nav details div>a.active,
body.unified-support-layout .itb-mobile-menu-panel-v417>a.active,
body.unified-support-layout .itb-mobile-menu-panel-v417 details a.active{
  font-weight:760!important;
}
body.unified-support-layout .client-side-nav details[open]>summary,
body.unified-support-layout .client-settings-submenu-v541[open]>summary,
body.unified-support-layout .client-admin-submenu-v533[open]>summary{
  background:#fff!important;
  border-color:transparent!important;
  color:#0c2a57!important;
  box-shadow:none!important;
}
body.unified-support-layout .client-side-nav details>summary:hover,
body.unified-support-layout .client-settings-submenu-v541[open]>summary:hover{
  background:#f7fbff!important;
  border-color:#e3edf8!important;
}
body.itb-hard-admin-page-v701 .itb-hard-nav a,
body.itb-hard-admin-page-v701 .itb-hard-details>summary,
body.itb-hard-admin-page-v701 .itb-hard-details div>a,
body.itb-hard-admin-page-v701 .itb-hard-nav a b,
body.itb-hard-admin-page-v701 .itb-hard-details b{
  font-weight:620!important;
}
body.itb-hard-admin-page-v701 .itb-hard-nav a.active,
body.itb-hard-admin-page-v701 .itb-hard-nav a.active b{
  font-weight:760!important;
}

/* ---------------------------------------------------------
   3) Jednotná kompaktní hlavička pro admin stránky.
   --------------------------------------------------------- */
body.itb-v543-admin-clean .itb-v543-hero{
  min-height:172px!important;
  padding:28px clamp(24px,3vw,42px)!important;
  border-radius:0 0 24px 24px!important;
}
body.itb-v543-admin-clean .itb-v543-hero-copy{
  max-width:min(760px,calc(100% - 350px))!important;
  padding-top:0!important;
}
body.itb-v543-admin-clean .itb-v543-hero h1{
  font-size:clamp(34px,2.65vw,46px)!important;
  margin-bottom:8px!important;
}
body.itb-v543-admin-clean .itb-v543-hero p{
  font-size:14px!important;
  line-height:1.42!important;
}
body.itb-v543-admin-clean .itb-v543-admin-identity{
  top:24px!important;
  right:24px!important;
  width:min(300px,calc(100% - 48px))!important;
  min-height:66px!important;
  padding:9px 12px!important;
}
body.itb-v543-admin-clean .itb-v543-admin-avatar{
  width:44px!important;
  height:44px!important;
  flex-basis:44px!important;
}
body.itb-v543-admin-clean .itb-v543-admin-copy strong{font-size:15px!important}
body.itb-v543-admin-clean .itb-v543-admin-copy em{font-size:10px!important}

/* Po odstranění horní navigace musí KPI začínat normálně pod hero. */
body.itb-v543-admin-clean .itb-v555-kpis,
body.itb-v543-admin-clean .activity-kpis.itb-v543-moved-kpis,
body.itb-v543-admin-clean .itb-forms-kpis-v520.itb-v543-moved-kpis,
body.itb-v543-admin-clean .support-dashboard-kpis,
body.itb-v543-admin-clean .admin-kpis{
  margin:18px 0!important;
  transform:none!important;
  top:auto!important;
}

/* ---------------------------------------------------------
   4) Servisní kalendář + Nedostupnost.
   --------------------------------------------------------- */
body.itb-admin-section-service_days .itb-hard-content,
body.itb-admin-section-unavailability .itb-hard-content{
  margin-top:-20px!important;
  gap:16px!important;
}
body.itb-admin-section-service_days .service-head-row{
  min-height:76px!important;
  padding:18px 20px!important;
}
body.itb-admin-section-service_days .service-calendar-card-v551>h2{
  display:none!important;
}
body.itb-admin-section-service_days .service-calendar-weekdays-v559{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:8px!important;
  margin:0 0 8px!important;
}
body.itb-admin-section-service_days .service-calendar-weekdays-v559 span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  border-radius:10px!important;
  background:#eef5fc!important;
  color:#526a88!important;
  font-size:10.5px!important;
  font-weight:760!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
body.itb-admin-section-service_days .service-calendar{
  gap:8px!important;
}
body.itb-admin-section-service_days .service-day{
  min-height:112px!important;
  padding:10px!important;
}
body.itb-admin-section-service_days .service-form label,
body.itb-admin-section-unavailability .admin-notice-page label{
  font-weight:720!important;
}
body.itb-admin-section-service_days .service-form input,
body.itb-admin-section-service_days .service-form select,
body.itb-admin-section-service_days .service-form textarea,
body.itb-admin-section-unavailability .admin-notice-page input,
body.itb-admin-section-unavailability .admin-notice-page select,
body.itb-admin-section-unavailability .admin-notice-page textarea{
  font-weight:520!important;
}
body.itb-admin-section-unavailability .notice-editor-card-v551,
body.itb-admin-section-unavailability .notice-history-card-v551{
  padding:22px!important;
}

/* ---------------------------------------------------------
   5) Evidence hodin, Historie zpráv a Formuláře.
   --------------------------------------------------------- */
body.itb-v543-page-hours .itb-v555-wrap,
body.itb-v543-page-activity .activity-admin-page,
body.itb-v543-page-forms .itb-forms-admin-v520{
  padding-top:0!important;
}
body.itb-v543-page-hours .itb-v555-grid,
body.itb-v543-page-activity .activity-list-card-v548,
body.itb-v543-page-forms .itb-forms-grid-v520{
  margin-top:0!important;
}
body.itb-v543-page-hours .itb-v555-kpis{
  position:relative!important;
  z-index:2!important;
}
body.itb-v543-page-hours .itb-hours-filter-v550{
  grid-template-columns:minmax(150px,1fr) minmax(135px,.8fr) 138px 138px minmax(170px,1fr) 125px auto auto auto!important;
}
body.itb-v543-page-activity .activity-filter-grid-v548,
body.itb-v543-page-forms .itb-forms-filter-v520{
  align-items:end!important;
}
body.itb-v543-page-forms .itb-forms-filter-v520{
  display:grid!important;
  grid-template-columns:minmax(240px,1.45fr) repeat(3,minmax(170px,.75fr)) auto auto!important;
  gap:10px!important;
}
body.itb-v543-page-forms .itb-forms-filter-v520>*{
  min-width:0!important;
  width:100%!important;
}

/* ---------------------------------------------------------
   6) Admin centrum – odstranění duplicitního druhého hero bloku.
   Zůstává jednoduchá lišta rychlých akcí.
   --------------------------------------------------------- */
body.itb-v543-page-admin .admin-command-card>.page-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin:0 0 18px!important;
  padding:0 0 16px!important;
  border-bottom:1px solid #dce8f6!important;
  border-radius:0!important;
  background:transparent!important;
  color:#071c3d!important;
  box-shadow:none!important;
}
body.itb-v543-page-admin .admin-command-card>.page-head .eyebrow{
  color:#0969ff!important;
  font-size:10px!important;
  letter-spacing:.11em!important;
}
body.itb-v543-page-admin .admin-command-card>.page-head h1{
  margin:2px 0 4px!important;
  color:#071c3d!important;
  font-size:24px!important;
  line-height:1.1!important;
}
body.itb-v543-page-admin .admin-command-card>.page-head .muted{
  color:#607590!important;
  font-size:12px!important;
}
body.itb-v543-page-admin .admin-command-card>.page-head .actions{
  justify-content:flex-end!important;
}
body.itb-v543-page-admin .admin-command-card>.page-head .actions .btn{
  min-height:40px!important;
  padding:0 13px!important;
  border-radius:12px!important;
}

/* ---------------------------------------------------------
   7) Editace faktury – tlačítka, identita a KPI se nesmí překrývat.
   --------------------------------------------------------- */
body.itb-admin-page-invoice_edit .invoice-edit-hero-v739{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(260px,300px)!important;
  grid-template-areas:
    "copy identity"
    "actions identity"!important;
  align-items:start!important;
  gap:12px 22px!important;
  min-height:170px!important;
  padding:26px 28px!important;
  overflow:hidden!important;
}
body.itb-admin-page-invoice_edit .invoice-edit-hero-v739>div:first-child{
  grid-area:copy!important;
  min-width:0!important;
}
body.itb-admin-page-invoice_edit .invoice-edit-hero-actions-v739{
  grid-area:actions!important;
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.itb-admin-page-invoice_edit .invoice-edit-hero-actions-v739 .btn{
  flex:0 1 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
}
body.itb-admin-page-invoice_edit .itb-v540-admin-identity,
body.itb-admin-page-invoice_edit .itb-admin-identity-v533{
  grid-area:identity!important;
  position:static!important;
  inset:auto!important;
  align-self:start!important;
  width:100%!important;
  max-width:300px!important;
  min-width:0!important;
  margin:0!important;
  transform:none!important;
  z-index:3!important;
}
body.itb-admin-page-invoice_edit .invoice-edit-kpis-v739{
  position:relative!important;
  z-index:1!important;
  margin:16px 0!important;
  transform:none!important;
  top:auto!important;
}
body.itb-admin-page-invoice_edit .invoice-edit-kpis-v739 article{
  min-height:88px!important;
}

/* ---------------------------------------------------------
   Responsive.
   --------------------------------------------------------- */
@media(max-width:1380px){
  body.itb-v543-page-hours .itb-hours-filter-v550{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  body.itb-v543-page-forms .itb-forms-filter-v520{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.itb-admin-page-invoice_edit .invoice-edit-hero-v739{
    grid-template-columns:minmax(0,1fr) 260px!important;
  }
}
@media(max-width:1080px){
  body.itb-v543-page-forms .itb-forms-filter-v520{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.itb-admin-page-invoice_edit .invoice-edit-hero-v739{
    grid-template-columns:1fr!important;
    grid-template-areas:"copy" "identity" "actions"!important;
  }
  body.itb-admin-page-invoice_edit .itb-v540-admin-identity,
  body.itb-admin-page-invoice_edit .itb-admin-identity-v533{
    max-width:420px!important;
  }
}
@media(max-width:900px){
  body.itb-v543-admin-clean .itb-v543-hero{
    min-height:0!important;
    padding:24px 18px!important;
    border-radius:0 0 20px 20px!important;
  }
  body.itb-v543-admin-clean .itb-v543-hero-copy{max-width:none!important}
  body.itb-v543-admin-clean .itb-v543-admin-identity{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:520px!important;
    margin-top:18px!important;
  }
  body.itb-admin-section-service_days .service-calendar-weekdays-v559,
  body.itb-admin-section-service_days .service-calendar{
    min-width:760px!important;
  }
  body.itb-admin-section-service_days .service-calendar-scroll-v551{
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.itb-v543-page-hours .itb-hours-filter-v550,
  body.itb-v543-page-forms .itb-forms-filter-v520{
    grid-template-columns:1fr!important;
  }
  body.itb-v543-page-admin .admin-command-card>.page-head{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  body.itb-v543-page-admin .admin-command-card>.page-head .actions,
  body.itb-v543-page-admin .admin-command-card>.page-head .actions .btn{
    width:100%!important;
  }
  body.itb-admin-page-invoice_edit .invoice-edit-hero-v739{
    padding:22px 16px!important;
    border-radius:0 0 20px 20px!important;
  }
  body.itb-admin-page-invoice_edit .invoice-edit-hero-actions-v739{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.itb-admin-page-invoice_edit .invoice-edit-hero-actions-v739 .btn{
    width:100%!important;
    justify-content:center!important;
    text-align:center!important;
  }
}
@media(max-width:560px){
  body.itb-admin-page-invoice_edit .invoice-edit-hero-actions-v739{
    grid-template-columns:1fr!important;
  }
}
