body{
  margin:0;
  font-family:"Segoe UI",sans-serif;
}

/* === Rozložení stránky: grid přímo na main === */
main{
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
  align-items:start;

  max-width:1300px;
  margin:0 auto;
  width:100%;
  box-sizing:border-box;
  padding:10px;
}

@media (min-width:1200px){
  main{grid-template-columns:1fr 1fr 1fr;}
}

@media (max-width:768px){
  main{padding:10px;}
}

/* Pozn.: vizuál boxů řeší .default-box z globálního style.css */


/* === Seznam kategorií === */
ul.category-list,
ul.subcategory-list,
ul.detail-list{
  list-style:none;
  padding:0;
  margin:0;
  width:100%;
}

li.category-item,
li.subcategory-item,
li.detail-item{
  padding:10px 12px;
  border-radius:6px;
  margin-bottom:6px;
  cursor:pointer;
  transition:background 0.2s;
  width:100%;
  box-sizing:border-box;
  position:relative;
}

li.category-item{font-weight:600;}
li.subcategory-item{font-weight:500;}
li.detail-item{font-weight:400;}

ul.subcategory-list,
ul.detail-list{
  display:none;
  margin-left:15px;
  padding-left:10px;
  width:calc(100% - 15px);
  box-sizing:border-box;
}

/* --- Tlačítka u položek --- */
.action-buttons{
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  gap:6px;
  visibility:visible !important;
  transition:opacity 0.2s, visibility 0.2s;
  opacity:1;
}

.action-btn{
  border:none;
  background:transparent;
  cursor:pointer;
  font-size:1rem;
  line-height:1;
  padding:4px 6px;
  border-radius:4px;
  transition:background 0.2s, color 0.2s;
}

li.expanded > .action-buttons{
  opacity:0;
  pointer-events:none;
}

/* Efekt probliknutí */
.flash-warning{animation:flashRed 0.6s ease;}

.inline-edit-input{
  border-radius:4px;
  outline:none;
  transition:border-color 0.2s;
}

@media (max-width:768px){
  li.category-item,
  li.subcategory-item,
  li.detail-item{font-size:0.95rem;}
}


#addCategoryForm{width:100%;margin:0 auto;text-align-last: center;}

.cat-add-row{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:10px;
  margin-bottom:12px;
}

.cat-field label{
  font-weight:600;
  display:block;
  margin-bottom:6px;
  text-align:left;
}

.cat-field .default-input{
  width:100%;
  box-sizing:border-box;
  margin-top:0;
}


/* === Tabulka s počty === */
#categoryCount{
  margin-top:10px;
  font-size:0.95rem;
  border-collapse:collapse;
}

#categoryCount td{padding-right:20px;}


/* === Limit message === */
.limit-message{
  border-radius:8px;
  padding:15px;
  margin-top:15px;
  font-size:0.95rem;
  font-weight:500;
  text-align:center;
  display:none;
}

.limit-message.show{display:block;}


/* === Bulk rename layout === */
.bulk-rename-wrap{width:100%;}

.bulk-rename-sections{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}

.bulk-rename-section{
  border:1px solid rgba(0,0,0,0.08);
  border-radius:12px;
  padding:14px;
}

.bulk-rename-head{margin:0 0 10px 0;}
.bulk-rename-title{margin:0;font-size:16px;font-weight:700;}

.bulk-rename-row{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:10px;
  text-align-last: center;
}

.bulk-rename-hint{
  margin-top:10px;
  font-size:13px;
  opacity:0.8;
}

/* Náhled */
.bulk-rename-result{
  margin-top:14px;
  display:block;
}

.bulk-rename-found{margin-bottom:10px;}
.bulk-rename-warn{margin-top:10px;font-size:13px;opacity:0.85;}

.bulk-rename-table-wrap{
  overflow:hidden;
  border:1px solid rgba(0,0,0,0.08);
  border-radius:10px;
}

.bulk-rename-table thead th{
  background:#c0cff326;
  border-bottom:1px solid rgba(0,0,0,0.14);
}

.bulk-rename-table{
  width:100%;
  border-collapse:collapse;
  font-size: 14px;
  text-align-last: center;
}

.bulk-rename-table th{
  text-align:left;
  white-space:nowrap;
  padding:8px 10px;
  line-height:0.5;
}

.bulk-rename-table td{
  padding:5px;
  border-top:1px solid rgba(0,0,0,0.06);
  white-space:nowrap;
  line-height:0.5;
}

.bulk-rename-actions{
  display:flex;
  gap:10px;
  margin-top:14px;
  flex-wrap:wrap;
}

.bulk-rename-actions .default-button{
  flex:1;
  min-width:220px;
}

@media (min-width:400px){
  .cat-add-row{grid-template-columns:1fr 1fr 1fr;}
  .bulk-rename-row{grid-template-columns:1fr 1fr 1fr;}
}

/* Inline hlášky */
.br-inline-msg{
  display:none;
  margin-top:10px;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(0,0,0,0.10);
}

.br-inline-msg.show{display:block;}
.br-inline-msg.success{background:#d4f5d0;}
.br-inline-msg.danger{background:#ffd6d6;}
.br-inline-msg.warn{background:#fff3cd;}
