[data-theme=modern]{--color-bg:#f9fafb;--color-surface:#fff;--color-text:#1f2937;--color-text-secondary:#6b7280;--color-primary:#22c55e;--color-secondary:#ef4444;--color-border:#e5e7eb;--color-hover:#f3f4f6;--font-family:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius:12px;--shadow:0 1px 3px #0000001a;--shadow-lg:0 4px 16px #0000001f}[data-theme=cyberpunk]{--color-bg:#0a0a1a;--color-surface:#1a1a2e;--color-text:#e0e0ff;--color-text-secondary:#88c;--color-primary:#ff2d95;--color-secondary:#00f0ff;--color-border:#ff2d9540;--color-hover:#2a2a3e;--font-family:"Courier New", Courier, monospace;--radius:4px;--shadow:0 0 12px #ff2d954d;--shadow-lg:0 0 24px #ff2d9566}[data-theme=arcade]{--color-bg:#0d0d1a;--color-surface:#1a1a2e;--color-text:#e0f7ff;--color-text-secondary:#88c;--color-primary:#f0f;--color-secondary:#0ff;--color-border:#ff00ff4d;--color-hover:#2a2a3e;--font-family:"Courier New", Courier, monospace;--radius:2px;--shadow:0 0 12px #ff00ff4d;--shadow-lg:0 0 24px #ff00ff80}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:1rem;padding:.5rem 0;display:grid}.habit-card{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--color-border);cursor:pointer;padding:1rem;transition:box-shadow .2s,transform .2s}.habit-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.day-cell{aspect-ratio:1;border:1px solid var(--color-border);cursor:pointer;width:100%;color:var(--color-text);background:0 0;border-radius:6px;justify-content:center;align-items:center;font-size:.75rem;transition:background-color .2s,transform .1s;display:flex}.day-cell:hover{border-color:var(--color-text-secondary);transform:scale(1.08)}@media (width<=1024px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.dashboard-grid{flex-direction:column;gap:.75rem;display:flex}.habit-card{padding:.75rem}header h1{font-size:1.1rem}.mobile-tab-bar,.mobile-fab{display:flex!important}body{padding-bottom:56px}}
