.list li.dragging{opacity:0.5;}
.list li .star{margin-left:8px;font-size:1.3em;color:gold;}
.weather-icon{margin:8px 0;text-align:center;}
.weather-icon img{width:64px;height:64px;object-fit:contain;}
.bunny-msg{margin-top:8px;font-size:1.1rem;color:var(--accent-2);text-align:center;}
.weather-card.sunny{background:linear-gradient(90deg,#ffe6f3 60%,#fffbe6 100%);}
.weather-card.rainy{background:linear-gradient(90deg,#e6e6ff 60%,#d0e6ff 100%);}
.weather-card.snowy{background:linear-gradient(90deg,#f3e6ff 60%,#e6f7ff 100%);}
.weather-card.cloudy{background:linear-gradient(90deg,#f3e6ff 60%,#e6e6e6 100%);}
:root{
  --bg1: #ffe6f3;
  --bg2: #f3e6ff;
  --accent: #e04dff;
  --accent-2: #ff69b4;
  --text: #3a2140;
}
*{box-sizing:border-box}
body{font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; margin:0; background: linear-gradient(180deg,var(--bg1),var(--bg2)); color:var(--text);}
.app{max-width:980px;margin:12px auto;padding:12px}
.header{display:flex;align-items:center;gap:12px}
.header h1{margin:0;color:var(--accent);font-size:1.6rem}
.time{margin-left:auto;font-weight:700;color:var(--accent-2)}
.weather-card{display:flex;gap:12px;padding:12px;background:rgba(255,255,255,0.6);border-radius:16px;align-items:center}
.bunny{width:140px;height:140px;object-fit:contain}
.weather-controls{flex:1}
label{font-size:0.9rem;color:#5a305a}
input{width:100%;padding:8px;border-radius:10px;border:1px solid rgba(0,0,0,0.1);margin-top:6px}
.btn-row{display:flex;gap:8px;margin-top:8px}
button{background:linear-gradient(90deg,var(--accent),var(--accent-2));color:white;border:0;padding:8px 12px;border-radius:10px;cursor:pointer}
.columns{display:flex;gap:12px;margin-top:12px}
.panel{flex:1;background:rgba(255,255,255,0.7);padding:12px;border-radius:12px}
.list{list-style:none;padding:0;margin:8px 0}
.list li{display:flex;align-items:center;justify-content:space-between;padding:8px;background:white;border-radius:8px;margin-bottom:8px}
.list li .left{display:flex;align-items:center;gap:8px}
.todo-add,.schedule-add{display:flex;gap:8px}

@media (max-width:900px){
  .columns{flex-direction:column}
  .bunny{width:110px;height:110px}
}

.weather-result{margin-top:10px;padding:10px;background:linear-gradient(90deg,rgba(224,77,255,0.08),rgba(255,105,180,0.06));border-radius:10px}

/* UI improvements overrides */
:root{
  --bg1: #fff8fb;
  --bg2: #f7f3ff;
  --accent: #c24bff;
  --accent-2: #ff6fb2;
  --text: #34243a;
  --muted: #6e526e;
}
body{font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; margin:0; background: linear-gradient(180deg,var(--bg1),var(--bg2)); color:var(--text);}
.app{max-width:980px;margin:18px auto;padding:18px}
.header h1{margin:0;color:var(--accent);font-size:1.45rem}
.time{margin-left:auto;font-weight:700;color:var(--accent-2)}
.achievements{margin-left:12px;padding:6px 10px;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:white;border-radius:999px;font-weight:700}
.reset-demo{margin-left:8px;padding:6px 10px;border-radius:8px;border:1px solid rgba(0,0,0,0.06);background:white;color:var(--muted);cursor:pointer}

/* toast */
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:24px;background:rgba(20,20,20,0.92);color:white;padding:10px 16px;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,0.2);opacity:0;transition:opacity .24s ease, transform .24s ease;pointer-events:none}
.toast.visible{opacity:1;transform:translateX(-50%) translateY(-6px);pointer-events:auto}
.weather-card{display:flex;gap:14px;padding:18px;background:rgba(255,255,255,0.85);border-radius:18px;align-items:center;box-shadow:0 6px 18px rgba(50,20,60,0.06)}
.bunny{width:140px;height:140px;object-fit:contain;transition:transform .35s ease}
.bunny.bounce{transform:translateY(-8px) scale(1.02)}
.input, input{width:100%;padding:10px;border-radius:12px;border:1px solid rgba(0,0,0,0.06);margin-top:8px;font-size:0.98rem}
.btn-row{display:flex;gap:8px;margin-top:10px}
button{background:linear-gradient(90deg,var(--accent),var(--accent-2));color:white;border:0;padding:10px 14px;border-radius:12px;cursor:pointer;font-weight:700}
.panel{flex:1;background:rgba(255,255,255,0.85);padding:14px;border-radius:12px}
.panel h2{margin:0 0 8px 0;font-size:1.05rem;color:var(--muted)}
.list{list-style:none;padding:0;margin:10px 0}
.list li{display:flex;align-items:center;justify-content:space-between;padding:10px;background:white;border-radius:10px;margin-bottom:10px;transition:transform .18s ease, box-shadow .18s ease}
.list li .left{display:flex;align-items:center;gap:10px}
.drag-handle{cursor:grab;padding:6px 8px;border-radius:8px;color:var(--muted);font-size:1.1rem}
.drag-handle:active{cursor:grabbing}
.list li.dragging{opacity:0.6;transform:scale(.995);box-shadow:0 10px 30px rgba(0,0,0,0.08)}
.list li .star{margin-left:8px;font-size:1.3em;color:gold}
.weather-icon{margin:8px 0;text-align:center}
.weather-icon img{width:64px;height:64px;object-fit:contain;opacity:0;transition:opacity .35s ease, transform .35s ease}
.weather-icon img.visible{opacity:1;transform:translateY(0)}
.bunny-msg{margin-top:8px;font-size:1.05rem;color:var(--accent-2);text-align:center}
.weather-card.sunny{background:linear-gradient(90deg,#fff6f0 60%,#fffbe6 100%)}
.weather-card.rainy{background:linear-gradient(90deg,#f0f6ff 60%,#e8f2ff 100%)}
.weather-card.snowy{background:linear-gradient(90deg,#f6f9ff 60%,#eef8ff 100%)}
.weather-card.cloudy{background:linear-gradient(90deg,#f7f7fb 60%,#eef0f5 100%)}
