/* ==========================================================================
   DARK OVERRIDE THEME (non-destructive)
   - Load this file AFTER style.css and moje_css.css
   - Only overrides existing selectors (no HTML changes needed)
   ========================================================================== */

:root{
  --bg-0: #0b0d12;
  --bg-1: #0f131b;
  --bg-2: #131a24;
  --bg-3: #182233;

  --panel: rgba(19, 26, 36, .72);
  --panel-2: rgba(24, 34, 51, .78);
  --panel-solid: #141c29;

  --text: #e9eef8;
  --muted: rgba(233, 238, 248, .70);

  --border: rgba(255,255,255,.08);
  --border-2: rgba(255,255,255,.12);

  --shadow-1: 0 10px 30px rgba(0,0,0,.45);
  --shadow-2: 0 6px 16px rgba(0,0,0,.55);
  --shadow-in: inset 0 1px 0 rgba(255,255,255,.05);

  --accent: #ff7a33;
  --accent-2: #ffb36b;
  --danger: #ff4d4d;
  --ok: #2ef28a;
  --warn: #ffd166;

  --r-10: 10px;
  --r-14: 14px;
  --r-18: 18px;

  --blur: blur(14px);
}

/* ---------- Global / Typography ---------- */
body{
  background: radial-gradient(1200px 600px at 20% 0%, rgba(255,122,51,.12), transparent 55%),
              radial-gradient(1000px 700px at 90% 15%, rgba(46,242,138,.08), transparent 55%),
              linear-gradient(180deg, var(--bg-0), var(--bg-1) 40%, var(--bg-0));
  color: var(--text) !important;
}

h1,h2,h3,h4,h5,h6,label,span,strong,li{
  color: var(--text) !important;
}

.text-muted{
  color: var(--muted) !important;
}

a{
  color: var(--accent) !important;
}
a:hover{
  color: var(--accent-2) !important;
}

/* Cleaner selection (you have user-select:none on body already; keep it) */
.body-allow-select{
  user-select: text !important;
  -webkit-user-select: text !important;
}

/* ---------- Inputs / Forms (Bootstrap + your custom) ---------- */
input,
.form-control,
.form-select,
textarea{

  color: var(--text) !important;
  border: 1px solid var(--border) !important;

  box-shadow: var(--shadow-in) !important;
}

.form-control::placeholder,
input::placeholder,
textarea::placeholder{
  color: rgba(233,238,248,.55) !important;
}

.form-control:focus,
.form-select:focus,
input:focus,
textarea:focus{
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,122,51,.45) !important;
  box-shadow: 0 0 0 .22rem rgba(255,122,51,.12) !important;
  outline: none !important;
}

.form-control:disabled,
.form-select:disabled,
input:disabled,
textarea:disabled{
  background: rgba(255,255,255,.04) !important;
  color: rgba(233,238,248,.55) !important;
  border-color: rgba(255,255,255,.06) !important;
}

/* ---------- Dropdowns ---------- */
.dropdown-menu{
  background: rgba(18, 24, 35, .92) !important;
  border: 1px solid var(--border) !important;
  border-radius: 14px !important;
  box-shadow: var(--shadow-1) !important;
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
}

.dropdown-menu .dropdown-item{
  color: var(--text) !important;
  border-radius: 10px;
  margin: 2px 8px;
}
.dropdown-menu .dropdown-item:hover{
  background: rgba(255,255,255,.08) !important;
}
.dropdown-menu .dropdown-divider{
  border-top-color: rgba(255,255,255,.10) !important;
}

/* ---------- Cards (NiceAdmin + your cards) ---------- */
.card{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.card-header,
.card-footer{
  background: rgba(18, 24, 35, .70) !important;
  border: 1px solid var(--border) !important;
  color: var(--muted) !important;
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
  border-radius: var(--r-14) !important;
  box-shadow: var(--shadow-2) !important;
}

.card-title{
  color: var(--text) !important;
}

.card-body{
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.04)) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--r-18) !important;
  box-shadow: var(--shadow-2) !important;
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
}

.card-text{ color: rgba(233,238,248,.70) !important; }

/* ---------- Modals ---------- */
.modal-content{
  background: rgba(18, 24, 35, .92) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--r-18) !important;
  box-shadow: var(--shadow-1) !important;
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
}
.modal-header,
.modal-footer{
  border-color: rgba(255,255,255,.08) !important;
}
.modal-body h2{ color: var(--accent-2) !important; }
.modal-body span{ color: rgba(233,238,248,.80) !important; }

/* ---------- Buttons (Bootstrap) ---------- */
.btn{
  border-radius: 14px !important;
  border: 1px solid var(--border) !important;
  box-shadow: var(--shadow-in) !important;
  transition: transform .12s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease !important;
}

.btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,.45) !important;
  border-color: var(--border-2) !important;
}

.btn:active{
  transform: translateY(0);
  box-shadow: 0 6px 14px rgba(0,0,0,.55) !important;
}

.btn-outline-secondary{
  color: var(--text) !important;
  background: rgba(255,255,255,.04) !important;
}
.btn-outline-secondary:hover{
  background: rgba(255,255,255,.08) !important;
}

.btn-warning{
  background: rgba(255, 209, 102, .14) !important;
  border-color: rgba(255, 209, 102, .30) !important;
  color: #ffe6a6 !important;
}
.btn-warning:hover{
  background: rgba(255, 209, 102, .20) !important;
  border-color: rgba(255, 209, 102, .45) !important;
}

.btn-danger{
  background: rgba(255, 77, 77, .14) !important;
  border-color: rgba(255, 77, 77, .32) !important;
  color: #ffb3b3 !important;
}
.btn-danger:hover{
  background: rgba(255, 77, 77, .20) !important;
  border-color: rgba(255, 77, 77, .48) !important;
}

.btn-info{
  background: rgba(79, 195, 247, .14) !important;
  border-color: rgba(79, 195, 247, .30) !important;
  color: #bfe9ff !important;
}
.btn-info:hover{
  background: rgba(79, 195, 247, .20) !important;
  border-color: rgba(79, 195, 247, .45) !important;
}

/* ---------- NiceAdmin tabs ---------- */
.nav-tabs-bordered{
  border-bottom-color: rgba(255,255,255,.10) !important;
}
.nav-tabs-bordered .nav-link{
  color: rgba(233,238,248,.75) !important;
}
.nav-tabs-bordered .nav-link:hover,
.nav-tabs-bordered .nav-link:focus{
  color: var(--accent-2) !important;
}
.nav-tabs-bordered .nav-link.active{
  background: rgba(255,255,255,.06) !important;
  color: var(--text) !important;
  border-bottom-color: rgba(255,122,51,.55) !important;
}

/* ---------- Your POS / Pokladna custom UI ---------- */
.levy-box,
.pravy-box{
  color: var(--text) !important;
}

.levy-box{
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03)) !important;
  border: 1px solid var(--border) !important;
  border-radius: 18px !important;
  box-shadow: var(--shadow-1) !important;
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
}

.pravy-box{
  color: var(--text) !important;
}

/* Top action box (nastaveni stolu) */
.nastaveni-stolu-box{
  padding: 10px !important;
}

/* Table buttons */
.btn-stul{
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03)) !important;
  border: 1px solid var(--border) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 20px rgba(0,0,0,.45) !important;
  position: relative;
  overflow: hidden;
}

.btn-stul::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: radial-gradient(600px 120px at 30% 0%, rgba(255,122,51,.18), transparent 55%),
              radial-gradient(600px 120px at 80% 30%, rgba(46,242,138,.10), transparent 60%);
  opacity:.85;
  pointer-events:none;
}

.btn-stul:hover{
  box-shadow: 0 14px 26px rgba(0,0,0,.55) !important;
}

/* States you already use */
.obsazeno{
  box-shadow: 0 0 0 1px rgba(255, 77, 77, .40), 0 12px 24px rgba(255, 77, 77, .16) !important;
}
.uklidit{
  box-shadow: 0 0 0 1px rgba(122, 0, 255, .35), 0 12px 24px rgba(122, 0, 255, .16) !important;
}
.vodnice{
  filter: drop-shadow(0 0 10px rgba(255, 77, 77, .30)) !important;
  border-color: rgba(255,255,255,.08) !important;
  background: rgba(255,255,255,.03) !important;
}
.jidlo{
  filter: drop-shadow(0 0 10px rgba(255, 209, 102, .25)) !important;
  border-color: rgba(255,255,255,.08) !important;
  background: rgba(255,255,255,.03) !important;
}

/* Menu items (products, accounts, pay items) */
.pokladna-menu-item,
.pokladna-otevreny-ucet-item,
.zaplatit-menu-item{
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03)) !important;
  border: 1px solid var(--border) !important;
  border-radius: 20px !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.55); 
  transition: transform .12s ease, box-shadow .18s ease, border-color .18s ease !important;
}

.pokladna-menu-item:hover,
.pokladna-otevreny-ucet-item:hover,
.zaplatit-menu-item:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 34px rgba(0,0,0,.60) !important;
  border-color: rgba(255,255,255,.14) !important;
}

.pokladna-menu-item span,
.pokladna-otevreny-ucet-item span{
  color: rgba(233,238,248,.62) !important;
}

.pokladna-menu-item p{
  color: var(--text) !important;
}

/* Pay selector highlight already exists */
.zaplatit-menu-item.checked{
  box-shadow: 0 0 0 1px rgba(46,242,138,.55), 0 14px 26px rgba(46,242,138,.18) !important;
  transform: translateY(-1px) scale(1.01) !important;
}

/* Sticky header in "zaplatit" */
.zaplatit-header{
  background: rgba(18, 24, 35, .72) !important;
  border: 1px solid var(--border) !important;
  box-shadow: var(--shadow-2) !important;
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
  border-radius: 16px !important;
}

/* Order list items */
.order-list li{
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03)) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 18px rgba(0,0,0,.45) !important;
}
.order-list .selected{
  border-color: rgba(255,122,51,.45) !important;
  box-shadow: 0 0 0 1px rgba(255,122,51,.22), 0 12px 22px rgba(255,122,51,.10) !important;
}

/* Order item controls */
.order-list .item-controls button{
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  color: var(--text) !important;
  border-radius: 12px !important;
}
.order-list .item-controls button:hover{
  background: rgba(255,255,255,.10) !important;
}

/* Pay button container */
.pay-button-container{
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04)) !important;
  border: 1px solid var(--border) !important;
  border-radius: 18px !important;
  box-shadow: var(--shadow-1) !important;
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
}

.pay-button-container h4{
  color: var(--text) !important;
  text-shadow: 0 2px 8px rgba(0,0,0,.55);
}
.pay-button-container h5{
  color: rgba(233,238,248,.70) !important;
}

/* "Vyplata" box */
.vyplata-box{
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 18px rgba(0,0,0,.38) !important;
}

/* Payment card */
.platba-karticka{
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 16px !important;
  box-shadow: 0 12px 22px rgba(0,0,0,.45) !important;
}

/* Bottom fixed panel */
#bottom-payments-panels{
  background: rgba(18, 24, 35, .85) !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
}

/* Scrollbars (optional but nice) */
*{
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,.18) transparent;
}
*::-webkit-scrollbar{
  width: 10px;
  height: 10px;
}
*::-webkit-scrollbar-thumb{
  background: rgba(255,255,255,.16);
  border-radius: 999px;
  border: 2px solid transparent;
  background-clip: content-box;
}
*::-webkit-scrollbar-thumb:hover{
  background: rgba(255,255,255,.22);
  border: 2px solid transparent;
  background-clip: content-box;
}
*::-webkit-scrollbar-track{
  background: transparent;
}

/* Mobile tweaks */
@media (max-width: 676px){
  .levy-box{
    border-radius: 16px !important;
  }
  .pokladna-menu-item,
  .pokladna-otevreny-ucet-item,
  .zaplatit-menu-item{
    border-radius: 18px !important;
  }
}

/* ================= HEADER ================= */

.header,
#header{
  background: rgba(15,19,27,.75) !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 8px 20px rgba(0,0,0,.45) !important;
}

.header .toggle-sidebar-btn,
.header-nav .nav-icon{
  color: #e9eef8 !important;
}

.header-nav .nav-link:hover{
  background: rgba(255,255,255,.06) !important;
  border-radius: 10px;
}


/* ================= SIDEBAR ================= */

.sidebar,
#sidebar{
  background: linear-gradient(
      180deg,
      #0f131b 0%,
      #131a24 40%,
      #0b0d12 100%
  ) !important;

  border-right: 1px solid rgba(255,255,255,.06) !important;
  box-shadow: 6px 0 20px rgba(0,0,0,.45) !important;
}

/* menu items */
.sidebar-nav .nav-link{
  color: rgba(233,238,248,.75) !important;
  border-radius: 12px;
  margin: 4px 10px;
  transition: all .15s ease;
}

.sidebar-nav .nav-link:hover{
  background: rgba(255,255,255,.06) !important;
  color: #fff !important;
  transform: translateX(4px);
}

/* active item */
.sidebar-nav .nav-link.active{
  background: linear-gradient(
      90deg,
      rgba(255,122,51,.18),
      rgba(255,122,51,.05)
  ) !important;

  color: #fff !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,122,51,.25),
    0 6px 14px rgba(0,0,0,.45);
}

/* icons */
.sidebar-nav .nav-link i{
  color: rgba(255,255,255,.7) !important;
}

.sidebar-nav .nav-link.active i{
  color: #ffb36b !important;
}


/* collapse divider */
.sidebar hr{
  border-color: rgba(255,255,255,.06) !important;
}




/* =========================================================
   MASTER DARK OVERRIDE — HEADER / SIDEBAR / NAV / EVERYTHING
   Load AFTER all other CSS.
   Zero HTML edits required.
   ========================================================= */

/* ---------- NAV ITEMS (global bootstrap + niceadmin) ---------- */

.nav-item{
  margin: 2px 6px !important;
}

.nav-link{
  color: rgba(233,238,248,.78) !important;
  border-radius: 12px !important;
  padding: 10px 14px !important;
  transition: all .18s ease !important;
}

/* hover */
.nav-link:hover{
  background: rgba(255,255,255,.06) !important;
  color: #ffffff !important;
  transform: translateX(4px);
}

/* active */
.nav-link.active,
.nav-link[aria-expanded="true"]{
  background: linear-gradient(
      90deg,
      rgba(255,122,51,.22),
      rgba(255,122,51,.06)
  ) !important;

  color: #fff !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,122,51,.35),
    0 8px 18px rgba(0,0,0,.45) !important;
}

/* icons inside nav */
.nav-link i,
.nav-link svg{
  color: rgba(255,255,255,.70) !important;
  transition: .15s;
}

.nav-link.active i{
  color: #ffb36b !important;
}


/* ---------- HEADER ---------- */

.header,
#header{
  background: rgba(13,17,24,.78) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255,255,255,.07) !important;
  box-shadow: 0 10px 30px rgba(0,0,0,.55) !important;
}

/* header links */
.header .nav-link,
.header-nav .nav-link{
  border-radius: 10px !important;
}

.header .nav-link:hover{
  background: rgba(255,255,255,.07) !important;
}

/* toggle button */
.toggle-sidebar-btn{
  color: #e9eef8 !important;
}


/* ---------- SIDEBAR ---------- */

.sidebar,
#sidebar{
  background: linear-gradient(
      180deg,
      #0b0f15 0%,
      #0f141c 40%,
      #0a0d12 100%
  ) !important;

  border-right: 1px solid rgba(255,255,255,.05) !important;

  box-shadow:
    8px 0 30px rgba(0,0,0,.65),
    inset -1px 0 rgba(255,255,255,.03);
}

/* sidebar menu links specifically */
.sidebar-nav .nav-link{
  font-weight: 500;
}

.sidebar-nav .nav-link:hover{
  transform: translateX(6px);
}

/* section titles */
.sidebar-nav .nav-heading{
  color: rgba(233,238,248,.45) !important;
  letter-spacing: .08em;
  font-size: 11px !important;
}


/* ---------- DROPDOWNS (nav user etc) ---------- */

.dropdown-menu{
  background: rgba(14,18,26,.94) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 14px !important;
  box-shadow: 0 20px 40px rgba(0,0,0,.65) !important;
  backdrop-filter: blur(18px);
}

.dropdown-item{
  color: #e9eef8 !important;
  border-radius: 10px;
  margin: 4px 6px;
}

.dropdown-item:hover{
  background: rgba(255,255,255,.07) !important;
}


/* ---------- SCROLLBAR (sidebar mainly) ---------- */

.sidebar::-webkit-scrollbar{
  width: 8px;
}

.sidebar::-webkit-scrollbar-thumb{
  background: rgba(255,255,255,.12);
  border-radius: 999px;
}

.sidebar::-webkit-scrollbar-thumb:hover{
  background: rgba(255,255,255,.18);
}


/* ---------- CONTENT SHIFT (nicer spacing from sidebar/header) ---------- */

#main,
.main{
  background: transparent !important;
  /*padding-top: 70px !important;*/
}


/* ---------- BREADCRUMB ---------- */

.breadcrumb{
  background: rgba(255,255,255,.04) !important;
  border-radius: 12px !important;
  padding: 8px 14px !important;
}

.breadcrumb-item{
  color: rgba(233,238,248,.65) !important;
}

.breadcrumb-item.active{
  color: #fff !important;
}


/* ---------- TABLES (niceadmin uses many) ---------- */

.table{
  color: #e9eef8 !important;
}

.table thead{
  background: rgba(255,255,255,.04);
}

.table tbody tr{
  border-color: rgba(255,255,255,.06) !important;
}

.table-hover tbody tr:hover{
  background: rgba(255,255,255,.05) !important;
}


/* ---------- ALERTS ---------- */

.alert{
  border: 1px solid rgba(255,255,255,.08) !important;
  background: rgba(255,255,255,.04) !important;
  color: #fff !important;
  border-radius: 14px !important;
}


/* ---------- PROGRESS ---------- */

.progress{
  background: rgba(255,255,255,.05) !important;
  border-radius: 999px !important;
}

.progress-bar{
  background: linear-gradient(90deg,#ff7a33,#ffb36b) !important;
}


/* ---------- LIST GROUP ---------- */

.list-group-item{
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.06) !important;
  color: #e9eef8 !important;
}

.list-group-item:hover{
  background: rgba(255,255,255,.06) !important;
} 


/* ---------- FOOTER ---------- */

.footer{
  background: rgba(10,13,18,.85) !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
}


/* ---------- MOBILE ---------- */

@media (max-width: 992px){

  .sidebar{
    box-shadow: 0 20px 60px rgba(0,0,0,.85) !important;
  }

  .nav-link:hover{
    transform: none;
  }

}

/* =========================================
   NAV-LINK COLLAPSED (sidebar accordion)
   ========================================= */

.nav-link.collapsed{
  color: rgba(233,238,248,.72) !important;
  background: transparent !important;
  border-radius: 12px !important;
  transition: all .18s ease !important;
}

/* hover */
.nav-link.collapsed:hover{
  color: #ffffff !important;
  background: rgba(255,255,255,.05) !important;
  transform: translateX(5px);
}

/* when accordion is opened */
.nav-link:not(.collapsed){
  color: #fff !important;

  background: linear-gradient(
      90deg,
      rgba(255,122,51,.20),
      rgba(255,122,51,.05)
  ) !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,122,51,.32),
    0 8px 18px rgba(0,0,0,.45) !important;
}

/* arrow animation */
.nav-link.collapsed .bi-chevron-down,
.nav-link.collapsed .bi-arrow-down-short{
  transform: rotate(0deg);
  transition: .25s ease;
}

.nav-link:not(.collapsed) .bi-chevron-down,
.nav-link:not(.collapsed) .bi-arrow-down-short{
  transform: rotate(180deg);
}

/* submenu spacing */
.sidebar-nav .nav-content{
  padding-left: 14px !important;
}

/* submenu links */
.sidebar-nav .nav-content a{
  color: rgba(233,238,248,.65) !important;
  border-radius: 10px;
}

.sidebar-nav .nav-content a:hover{
  color: #fff !important;
  background: rgba(255,255,255,.05) !important;
  transform: translateX(4px);
}

/* =========================================
   NAV CONTRAST LAYER (lighter than sidebar)
   ========================================= */

/* sidebar necháme ultra dark */
.sidebar,
#sidebar{
  background: linear-gradient(
      180deg,
      #070a0f 0%,
      #0b0f14 100%
  ) !important;
}


/* DEFAULT nav item — světlejší než sidebar */
.sidebar-nav .nav-link,
.nav-link.collapsed{

  background: rgba(255,255,255,.035) !important;
  color: rgba(233,238,248,.75) !important;

  border: 1px solid rgba(255,255,255,.04) !important;
  border-radius: 12px !important;

  margin: 4px 8px !important;

  transition: all .18s ease;
}


/* hover — jasně oddělený */
.sidebar-nav .nav-link:hover,
.nav-link.collapsed:hover{

  background: rgba(255,255,255,.085) !important;
  border-color: rgba(255,255,255,.10) !important;

  color: #ffffff !important;

  transform: translateX(6px);
}


/* ACTIVE / OPEN */
.sidebar-nav .nav-link.active,
.nav-link:not(.collapsed){

  background: linear-gradient(
      90deg,
      rgba(255,122,51,.28),
      rgba(255,122,51,.08)
  ) !important;

  border: 1px solid rgba(255,122,51,.35) !important;

  color: #fff !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,122,51,.25),
    0 10px 22px rgba(0,0,0,.55);
}


/* submenu ještě světlejší než parent */
.sidebar-nav .nav-content a{

  /*background: rgba(255,255,255,.045) !important;*/
  border-radius: 10px;
}

.sidebar-nav .nav-content a:hover{
  background: rgba(255,255,255,.10) !important;
}


/* =========================================
   FIX: background when content is short
   - background is always full viewport
   ========================================= */

html, body{
  height: 100% !important;
  min-height: 100% !important;
}

body{
  min-height: 100vh !important;
  position: relative !important;

  /* tělo nech průhledný, pozadí bude ve fixed layer */
  background: transparent !important;
}

/* fixed backdrop layer */
body::before{
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: -2 !important;
  pointer-events: none !important;

  /* sem dej svoje pozadí (nebo to co už používáš) */
  background:
    radial-gradient(1200px 600px at 20% 0%, rgba(255,122,51,.12), transparent 55%),
    radial-gradient(1000px 700px at 90% 15%, rgba(46,242,138,.08), transparent 55%),
    linear-gradient(180deg, #0b0d12, #0f131b 40%, #0b0d12) !important;
}

/* kdyby ti někde html mělo jiný pozadí */
html{
  background: #0b0d12 !important;
}
.product {
    margin-right: 10px !important;
}

.otevreny-ucet {
    transition: background-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
    -webkit-tap-highlight-color: transparent;
}

/* Hover pouze pro PC / myš */
@media (hover: hover) and (pointer: fine) {
    .otevreny-ucet:hover {
        background-color: rgba(255,255,255,0.08);
        transform: scale(1.01);
        box-shadow: 0 0 12px rgba(0,0,0,0.25);
        cursor: pointer;
    }
}

/* Na touch zařízeních hover úplně pryč */
@media (hover: none), (pointer: coarse) {
    .otevreny-ucet:hover {
        background-color: inherit !important;
        transform: none !important;
        box-shadow: none !important;
    }
}



.btn-ucet {
    border: 0;
    background: transparent;
    padding: 0;
    display: block;
    width: 100%;
    text-align: left;
    -webkit-tap-highlight-color: transparent;
    touch-action: pan-y;
}

.pokladna-otevreny-ucet-item {
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    transition: background-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

/* Hover jen pro zařízení s myší */
@media (hover: hover) and (pointer: fine) {
    .btn-ucet:hover .pokladna-otevreny-ucet-item {
        background: rgba(255,255,255,0.06);
        transform: scale(1.01);
    }
}

/* Na dotyku hover úplně vypnout */
@media (hover: none), (pointer: coarse) {
    .btn-ucet:hover .pokladna-otevreny-ucet-item,
    .btn-ucet:active .pokladna-otevreny-ucet-item,
    .btn-ucet:focus .pokladna-otevreny-ucet-item {
        background: inherit !important;
        transform: none !important;
        box-shadow: none !important;
    }

    .btn-ucet {
        cursor: default;
    }
}

.btn-ucet:focus,
.btn-ucet:active {
    outline: none;
    box-shadow: none !important;
}

.seznam-otevrenych-uctu {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
}


#otevrene-ucty-row {
    max-height: 75vh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
}

.btn-ucet {
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    display: block;
    width: 100%;
    text-align: left;
    -webkit-tap-highlight-color: transparent;
    touch-action: pan-y;
}

.pokladna-otevreny-ucet-item {
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    transition: background-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

/* Hover jen na PC */
@media (hover: hover) and (pointer: fine) {
    .btn-ucet:hover .pokladna-otevreny-ucet-item {
        background: rgba(255,255,255,0.06);
        transform: scale(1.01);
    }
}

/* Na touch zařízeních hover vypnout */
@media (hover: none), (pointer: coarse) {
    .btn-ucet:hover .pokladna-otevreny-ucet-item,
    .btn-ucet:active .pokladna-otevreny-ucet-item,
    .btn-ucet:focus .pokladna-otevreny-ucet-item {
        background: inherit !important;
        transform: none !important;
        box-shadow: none !important;
    }

    .btn-ucet {
        cursor: default;
    }
}

.btn-ucet:focus,
.btn-ucet:active {
    outline: none !important;
    box-shadow: none !important;
}

#otevrene-ucty-row {
    max-height: 75vh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
}

#otevrene-ucty-row .btn-ucet {
    display: block;
    width: 100%;
    padding: 0 !important;
    margin: 0 0 10px 0;
    border: 0 !important;
    outline: none !important;
    background: transparent !important;
    appearance: none;
    -webkit-appearance: none;
    -webkit-tap-highlight-color: transparent;
    touch-action: pan-y;
}

#otevrene-ucty-row .btn-ucet:hover,
#otevrene-ucty-row .btn-ucet:focus,
#otevrene-ucty-row .btn-ucet:active,
#otevrene-ucty-row .btn-ucet:focus-visible {
    outline: none !important;
    background: transparent !important;
}

#otevrene-ucty-row .pokladna-otevreny-ucet-item {
    pointer-events: none;
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    transform: none !important;
}

#otevrene-ucty-row .btn-ucet:hover .pokladna-otevreny-ucet-item,
#otevrene-ucty-row .btn-ucet:focus .pokladna-otevreny-ucet-item,
#otevrene-ucty-row .btn-ucet:active .pokladna-otevreny-ucet-item {
    transform: none !important;
}

/* ---------- Contrast safety net for older Bootstrap/NiceAdmin screens ---------- */
#main,
.main,
.section,
.container,
.container-fluid,
.card,
.card-body,
.modal-content,
.modal-body,
.offcanvas,
.offcanvas-body,
.accordion,
.accordion-item,
.list-group-item,
.dropdown-menu,
.table {
  color: var(--text) !important;
}

.card-body p,
.card-body div,
.modal-body,
.modal-body p,
.accordion-body,
.accordion-button,
.list-group-item,
.dropdown-item,
.table td,
.table th,
.form-label,
.form-check-label,
small {
  color: var(--text) !important;
}

.text-dark,
.text-body,
.text-black,
.text-secondary,
.text-reset {
  color: var(--text) !important;
}

.bg-white,
.bg-light,
.modal-header,
.modal-footer,
.accordion-button,
.accordion-body,
.list-group-item {
  background-color: var(--panel-solid) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
}

.table-light,
.table > :not(caption) > * > * {
  --bs-table-bg: transparent;
  --bs-table-color: var(--text);
  --bs-table-border-color: var(--border);
  color: var(--text) !important;
  border-color: var(--border) !important;
}

select option {
  background: var(--panel-solid) !important;
  color: var(--text) !important;
}

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
.select2-dropdown {
  background: var(--panel-solid) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--multiple .select2-selection__choice,
.select2-results__option {
  color: var(--text) !important;
}

.alert {
  color: var(--text) !important;
  border-color: var(--border-2) !important;
}

/* Bootstrap components that keep their own light variables */
.bill-card,
.info-card,
.recent-sales,
.top-selling,
.activity,
.customers-card,
.sales-card,
.revenue-card {
  background: var(--panel-solid) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
  box-shadow: var(--shadow-1) !important;
}

.bill-card .muted,
.bill-card .text-muted,
.bill-card small,
.bill-card p,
.bill-card div {
  color: var(--text) !important;
}

.table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--text);
  --bs-table-border-color: var(--border);
  --bs-table-striped-bg: rgba(255,255,255,.035);
  --bs-table-striped-color: var(--text);
  --bs-table-hover-bg: rgba(255,255,255,.07);
  --bs-table-hover-color: var(--text);
  --bs-table-active-bg: rgba(255,122,51,.13);
  --bs-table-active-color: var(--text);
  background-color: transparent !important;
  border-color: var(--border) !important;
  color: var(--text) !important;
}

.table > :not(caption) > * > * {
  background-color: var(--bs-table-bg) !important;
  border-color: var(--border) !important;
  box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg) !important;
  color: var(--text) !important;
}

.table thead,
.table-light,
.table-light > :not(caption) > * > * {
  --bs-table-bg: rgba(255,255,255,.06);
  --bs-table-color: var(--text);
  --bs-table-border-color: var(--border);
  background-color: rgba(255,255,255,.06) !important;
  color: var(--text) !important;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-accent-bg: var(--bs-table-striped-bg) !important;
  color: var(--text) !important;
}

.table-hover > tbody > tr:hover > * {
  --bs-table-accent-bg: var(--bs-table-hover-bg) !important;
  color: var(--text) !important;
}

.table-active > * {
  --bs-table-accent-bg: var(--bs-table-active-bg) !important;
  color: var(--text) !important;
}

.dropdown-menu {
  --bs-dropdown-bg: var(--panel-solid);
  --bs-dropdown-color: var(--text);
  --bs-dropdown-link-color: var(--text);
  --bs-dropdown-link-hover-color: var(--text);
  --bs-dropdown-link-hover-bg: rgba(255,255,255,.08);
  --bs-dropdown-link-active-color: var(--text);
  --bs-dropdown-link-active-bg: rgba(255,122,51,.24);
  --bs-dropdown-link-disabled-color: rgba(233,238,248,.45);
  --bs-dropdown-header-color: var(--muted);
  background-color: var(--panel-solid) !important;
  color: var(--text) !important;
}

.dropdown-item {
  color: var(--text) !important;
}

.dropdown-item:hover,
.dropdown-item:focus,
.dropdown-item.active,
.dropdown-item:active {
  background-color: rgba(255,255,255,.08) !important;
  color: var(--text) !important;
}

.dropdown-header {
  color: var(--muted) !important;
}

.dropdown-item.disabled,
.dropdown-item:disabled {
  color: rgba(233,238,248,.45) !important;
}

/* Make checked controls visibly checked on dark backgrounds */
.form-check-input {
  background-color: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(233,238,248,.42) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
  cursor: pointer;
}

.form-check-input:focus {
  border-color: rgba(255,122,51,.70) !important;
  box-shadow: 0 0 0 .22rem rgba(255,122,51,.18) !important;
}

.form-check-input:checked {
  background-color: var(--accent) !important;
  border-color: var(--accent) !important;
}

.form-check-input:checked[type="checkbox"] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e") !important;
}

.form-check-input:checked[type="radio"] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23ffffff'/%3e%3c/svg%3e") !important;
}

.form-check-input:indeterminate {
  background-color: var(--accent) !important;
  border-color: var(--accent) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-width='3' d='M5 10h10'/%3e%3c/svg%3e") !important;
}

.form-switch .form-check-input {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28233,238,248,.70%29'/%3e%3c/svg%3e") !important;
}

.form-switch .form-check-input:checked {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23ffffff'/%3e%3c/svg%3e") !important;
}

.form-check-input:disabled {
  opacity: .55;
  cursor: not-allowed;
}
