/* NGĂN KÉO TRƯỢT */
.drawer { position: fixed; top: 50%; transform: translateY(-50%); background: var(--bg-main); border: 2px dashed var(--accent); width: 300px; z-index: 1000; transition: 0.4s ease-in-out; box-shadow: 0 10px 30px rgba(0,0,0,0.1); }
.drawer-left { left: -300px; border-left: none; border-radius: 0 20px 20px 0; }
.drawer-left.open { left: 0; }
.drawer-right { right: -300px; border-right: none; border-radius: 20px 0 0 20px; }
.drawer-right.open { right: 0; }
.drawer-content { padding: 15px; max-height: 85vh; overflow-y: auto; }

/* CÁC NÚT MỞ NGĂN KÉO */
.drawer-toggle { position: absolute; top: 50%; transform: translateY(-50%); background: var(--accent); color: white; border: none; padding: 20px 10px; cursor: pointer; font-size: 20px; box-shadow: 0 2px 10px rgba(236, 64, 122, 0.4); }
.toggle-left { right: -40px; border-radius: 0 10px 10px 0; }
.toggle-right { left: -40px; border-radius: 10px 0 0 10px; }

/* CSS WIDGET BÊN TRONG */
.widget { background: var(--bg-card); padding: 15px; border-radius: 12px; margin-bottom: 20px; }
.widget-avatar { width: 60px; height: 60px; border-radius: 50%; object-fit: cover; margin: 0 auto 10px; display: block; border: 2px solid var(--accent); background: #fff0f5;}
.widget-title { text-align: center; color: var(--accent); font-size: 15px; font-weight: bold; margin-bottom: 10px; }

.timer-display { font-size: 36px; font-weight: bold; text-align: center; color: var(--text-main); font-family: monospace; margin: 10px 0; }
.timer-controls { display: flex; gap: 5px; margin-bottom: 10px; }
.timer-btn { flex: 1; padding: 8px; background: var(--accent); color: white; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; }
.timer-btn.stop { background: var(--red); }
.timer-setting { text-align: center; font-size: 12px; font-weight: bold; }
.timer-setting input { width: 45px; text-align: center; border: 1px solid var(--border); border-radius: 4px; padding: 3px; font-weight: bold; outline: none;}
.flower-garden { min-height: 40px; padding: 10px; background: #fff0f5; border-radius: 8px; text-align: center; font-size: 20px; word-wrap: break-word; border: 1px solid var(--border); }

.mini-input-group { display: flex; gap: 5px; margin-bottom: 10px; }
.mini-input-group input { flex: 1; padding: 8px; border: 1px solid var(--border); border-radius: 6px; font-size: 12px; outline: none; }
.mini-input-group button { padding: 8px 12px; background: var(--accent); color: white; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; }
.mini-list { list-style: none; display: flex; flex-direction: column; gap: 8px; max-height: 200px; overflow-y: auto; padding-right: 5px;}
.mini-item { background: #fafafa; padding: 8px; border-radius: 6px; font-size: 12px; display: flex; justify-content: space-between; align-items: flex-start; border-left: 3px solid var(--accent); gap: 5px;}
.mini-item.done span { text-decoration: line-through; opacity: 0.5; }
.mini-item span { flex: 1; word-break: break-word; }
.mini-del-btn { background: none; border: none; color: var(--red); font-weight: bold; cursor: pointer; }