:root{--font-sans:'Inter',-apple-system,sans-serif;--font-mono:'JetBrains Mono',monospace;--radius:12px;--transition:0.25s ease}
[data-theme="dark"]{--bg:#0F0F1A;--bg2:#1A1A2E;--bg-card:rgba(26,26,46,0.9);--bg-input:rgba(99,102,241,0.05);--border:rgba(99,102,241,0.12);--text:#E8E4F0;--text2:#A0A0C0;--text3:#6060A0;--primary:#6366F1;--secondary:#A78BFA;--accent:#F97316;--gradient:linear-gradient(135deg,#6366F1,#8B5CF6)}
[data-theme="light"]{--bg:#FAFAFE;--bg2:#FFF;--bg-card:rgba(255,255,255,0.95);--bg-input:rgba(99,102,241,0.04);--border:rgba(0,0,0,0.08);--text:#1E1E2E;--text2:#5050A0;--text3:#9090C0;--primary:#4F46E5;--secondary:#7C3AED;--accent:#EA580C;--gradient:linear-gradient(135deg,#4F46E5,#6D28D9)}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);min-height:100vh}
.app{max-width:680px;margin:0 auto}.header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:10px}
.logo{display:flex;align-items:center;gap:10px}.logo h1{font-size:1rem;font-weight:700;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.header-actions{display:flex;align-items:center;gap:8px}
.search-input{padding:6px 10px;background:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:.78rem;outline:none;width:160px;font-family:var(--font-sans)}
.btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:.82rem;font-weight:500;padding:8px 16px;border-radius:8px;border:none;cursor:pointer;transition:all var(--transition)}
.btn-primary{background:var(--gradient);color:#fff}.btn-primary:hover{transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--text2)}.btn-ghost:hover{background:var(--bg-input);color:var(--text)}
.main{padding:24px;display:flex;flex-direction:column;gap:20px}
.entry-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px}
.date-row{display:flex;gap:12px;align-items:center;margin-bottom:12px;flex-wrap:wrap}
input[type="date"]{padding:8px;background:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:6px;font-family:var(--font-sans);font-size:.82rem;outline:none}
input[type="date"]:focus{border-color:var(--primary)}
.mood-picker{display:flex;gap:4px}.mood{font-size:1.2rem;background:none;border:2px solid transparent;border-radius:50%;width:36px;height:36px;cursor:pointer;transition:all var(--transition);display:flex;align-items:center;justify-content:center}
.mood:hover{transform:scale(1.15)}.mood.active{border-color:var(--primary);background:var(--bg-input)}
textarea{width:100%;padding:12px;background:var(--bg-input);color:var(--text);border:1px solid var(--border);border-radius:8px;font-family:var(--font-sans);font-size:.88rem;outline:none;resize:vertical;line-height:1.6}textarea:focus{border-color:var(--primary)}
.form-actions{display:flex;gap:8px;margin-top:12px}
.entries-list h3{font-size:.85rem;font-weight:600;margin-bottom:12px;color:var(--text2)}
.entry-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:8px;animation:fadeIn .3s ease}
.entry-card .entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.entry-card .entry-date{font-size:.75rem;font-weight:600;color:var(--primary);font-family:var(--font-mono)}
.entry-card .entry-mood{font-size:1rem}
.entry-card .entry-body{font-size:.84rem;color:var(--text2);line-height:1.5;white-space:pre-wrap}
.entry-card .entry-delete{font-size:.7rem;padding:2px 6px;cursor:pointer;background:none;border:1px solid var(--border);border-radius:4px;color:var(--text3);transition:all var(--transition)}
.entry-card .entry-delete:hover{border-color:#EF4444;color:#EF4444}
@keyframes fadeIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:500px){.header{flex-direction:column;align-items:flex-start}.search-input{width:100%}}
