:root{--bg: #f8f9fa;--surface: #ffffff;--border: #e2e5e9;--text: #1a1a1a;--text-muted: #6b7280;--accent: #3b82f6;--accent-hover: #2563eb;--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--sidebar-width: 240px}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.9375rem;line-height:1.5;color:var(--text);background:var(--bg)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,.btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s}button:hover,.btn:hover{background:var(--bg)}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:#fef2f2}.btn-sm{padding:.25rem .625rem;font-size:.75rem}input,textarea,select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;font-size:.875rem;font-family:inherit;color:var(--text);background:var(--surface)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #3b82f626}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.25rem}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;gap:.75rem;flex-wrap:wrap}.page-header h1{margin:0;font-size:1.375rem;font-weight:600}@media(max-width:768px){.page-header h1{font-size:1.125rem}}.badge{display:inline-block;padding:.125rem .5rem;border-radius:9999px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.badge-todo{background:#e0e7ff;color:#4338ca}.badge-in_progress{background:#fef3c7;color:#b45309}.badge-done{background:#d1fae5;color:#065f46}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.app-layout.svelte-12qhfyh{display:flex;min-height:100vh}.sidebar.svelte-12qhfyh{width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100}.sidebar-header.svelte-12qhfyh{padding:1.25rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.logo.svelte-12qhfyh{font-size:1.125rem;font-weight:700;color:var(--text);text-decoration:none}.menu-close.svelte-12qhfyh{display:none;background:none;border:none;font-size:1.25rem;color:var(--text-muted);cursor:pointer;padding:.25rem}nav.svelte-12qhfyh{flex:1;padding:.75rem}.nav-item.svelte-12qhfyh{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border-radius:6px;color:var(--text-muted);text-decoration:none;font-size:.875rem;font-weight:500;transition:background .15s}.nav-item.svelte-12qhfyh:hover{background:var(--bg);color:var(--text);text-decoration:none}.nav-item.active.svelte-12qhfyh{background:#eff6ff;color:var(--accent)}.nav-icon.svelte-12qhfyh{font-size:1rem}.sidebar-footer.svelte-12qhfyh{padding:.75rem;border-top:1px solid var(--border)}.logout-btn.svelte-12qhfyh{width:100%;justify-content:center;background:transparent;border:none;color:var(--text-muted);font-size:.8125rem;padding:.5rem;cursor:pointer}.logout-btn.svelte-12qhfyh:hover{color:var(--danger);background:#fef2f2;border-radius:6px}.topbar.svelte-12qhfyh,.overlay.svelte-12qhfyh{display:none}.main-wrapper.svelte-12qhfyh{flex:1;margin-left:var(--sidebar-width)}.main-content.svelte-12qhfyh{padding:2rem;max-width:900px}@media(max-width:768px){.sidebar.svelte-12qhfyh{transform:translate(-100%);transition:transform .25s ease}.sidebar.open.svelte-12qhfyh{transform:translate(0)}.menu-close.svelte-12qhfyh{display:block}.overlay.svelte-12qhfyh{display:block;position:fixed;inset:0;background:#0006;z-index:50;border:none;cursor:default}.topbar.svelte-12qhfyh{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.menu-toggle.svelte-12qhfyh{background:none;border:none;font-size:1.25rem;padding:.25rem;cursor:pointer;color:var(--text)}.topbar-title.svelte-12qhfyh{font-weight:700;font-size:1rem}.main-wrapper.svelte-12qhfyh{margin-left:0}.main-content.svelte-12qhfyh{padding:1rem}}
