/* ===== Settings (botón flotante + panel) ===== */
.settings-fab{position:fixed;bottom:1.5rem;right:1.5rem;width:52px;height:52px;border-radius:50%;background:var(--accent);color:#121212;border:none;font-size:1.4rem;cursor:pointer;box-shadow:0 4px 15px rgba(0,0,0,.3);z-index:100;transition:transform .2s}
.settings-fab:hover{transform:scale(1.1)}
.settings-panel{position:fixed;bottom:5.5rem;right:1.5rem;width:280px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.2rem;z-index:101;display:none;box-shadow:0 8px 25px rgba(0,0,0,.4)}
.settings-panel.open{display:block}
.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}
.settings-header h3{margin:0;font-size:1rem}
.settings-close{background:transparent;border:none;color:var(--muted);font-size:1.1rem;cursor:pointer}
.settings-close:hover{color:var(--text)}
.settings-group{margin-bottom:1rem}
.settings-group label{display:block;color:var(--muted);font-size:.8rem;margin-bottom:.5rem;font-weight:600}
.theme-btns{display:flex;gap:.4rem}
.theme-btn{flex:1;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:.5rem;border-radius:8px;cursor:pointer;font-size:.85rem}
.theme-btn.active{background:var(--accent);color:#121212;border-color:var(--accent);font-weight:600}
.habit-colors{display:flex;flex-direction:column;gap:.4rem}
.habit-color-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}
.habit-color-row input[type=color]{width:36px;height:28px;border:none;border-radius:6px;cursor:pointer;background:transparent}
/* ===== Tipografía: títulos bold estilo Habitica ===== */
.item .name,
.todo-name,
.eisen-title,
.view-label,
.dhead,
.settings-header h3,
.modal h3{
  font-family: 'Tallhaus', 'Anton', sans-serif;
  font-weight: 700;
  letter-spacing: .5px;
}
.cell-num{
  font-family: 'Tallhaus', 'Anton', sans-serif;
  font-weight: 700;
  font-size: .7rem;
}

/* ===== Drag & drop: rebote y crecimiento ===== */
.todo-item.drop-anim{ animation: bounce .5s ease; }
@keyframes bounce{
  0%{ transform: scale(1); }
  40%{ transform: scale(1.06); }
  70%{ transform: scale(.97); }
  100%{ transform: scale(1); }
}
.item.drop-anim{ animation: itemBounce .4s ease; }
@keyframes itemBounce{
  0%{ transform: scale(1); }
  40%{ transform: scale(1.02); }
  70%{ transform: scale(.98); }
  100%{ transform: scale(1); }
}
.item{ transition: transform .2s ease; }
.item.dragging{ opacity:.4; }
