@keyframes csHeartBeat { 0%,100%{transform:scale(1)} 50%{transform:scale(1.15)} }
.cs-page { display:none; }
.cs-page.active { display:block; animation:fadeIn .3s ease-out; }
.cs-card { background:var(--card); border-radius:20px; box-shadow:0 2px 12px rgba(0,0,0,.03); border:1px solid var(--gl); }
.cs-av { width:70px; height:70px; border-radius:50%; background:var(--gl); display:flex; align-items:center; justify-content:center; font-size:28px; overflow:hidden; border:3px solid white; box-shadow:0 4px 12px rgba(0,0,0,.08); cursor:pointer; }
.cs-av img { width:100%; height:100%; object-fit:cover; }
.cs-icon-btn { display:flex; flex-direction:column; align-items:center; gap:6px; font-size:12px; color:var(--gm); cursor:pointer; }
.cs-icon { width:48px; height:48px; border-radius:16px; background:var(--card); border:1px solid var(--gl); display:flex; align-items:center; justify-content:center; font-size:22px; box-shadow:0 2px 8px rgba(0,0,0,.02); transition:transform .2s; }
.cs-icon-btn:active .cs-icon { transform:scale(.9); }
.cs-nav-item { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; font-size:10px; color:var(--gm); cursor:pointer; }
.cs-nav-icon { font-size:22px; transition:transform .2s; }
.cs-nav-item.active { color:var(--pink); }
.cs-nav-item.active .cs-nav-icon { transform:scale(1.15); }
.cs-cal-cell { aspect-ratio:1; display:flex; flex-direction:column; align-items:center; justify-content:center; border-radius:10px; font-size:14px; cursor:pointer; }
.cs-cal-cell.today { background:rgba(255,45,85,.1); color:var(--pink); font-weight:700; }
.cs-cal-cell.has-note { border:1px solid var(--pink); }
.cs-task-item { display:flex; align-items:center; gap:12px; padding:16px; background:var(--card); border:1px solid var(--gl); border-radius:16px; margin-bottom:10px; cursor:pointer; }
.cs-task-item.done { opacity:.5; }
.cs-task-check { width:24px; height:24px; border-radius:50%; border:2px solid var(--gl); display:flex; align-items:center; justify-content:center; color:white; font-size:12px; }
.cs-task-item.done .cs-task-check { background:var(--pink); border-color:var(--pink); }
