:root{--background: oklch(.9813 .01 238.5069);--foreground: oklch(.1807 .0207 239.8394);--card: oklch(1 0 0);--card-foreground: oklch(.1807 .0207 239.8394);--popover: oklch(1 0 0);--popover-foreground: oklch(.1807 .0207 239.8394);--primary: oklch(.6236 .1833 147.4139);--primary-foreground: oklch(.9813 .01 238.5069);--secondary: oklch(.9396 .0204 243.422);--secondary-foreground: oklch(.2791 .0203 242.6079);--muted: oklch(.9396 .0204 243.422);--muted-foreground: oklch(.4501 .0191 239.4931);--accent: oklch(.6999 .1796 150.1066);--accent-foreground: oklch(.9813 .01 238.5069);--destructive: oklch(.6207 .2306 24.9164);--destructive-foreground: oklch(.9813 .01 238.5069);--border: oklch(.8999 .0196 240.7516);--input: oklch(.8999 .0196 240.7516);--ring: oklch(.6236 .1833 147.4139);--chart-1: oklch(.6236 .1833 147.4139);--chart-2: oklch(.6004 .1694 249.8812);--chart-3: oklch(.6818 .1924 45.7782);--chart-4: oklch(.6396 .2105 300.0543);--chart-5: oklch(.6491 .2201 19.8586);--radius: 8px}.dark{--background: oklch(.1807 .0207 239.8394);--foreground: oklch(.9813 .01 238.5069);--card: oklch(.2791 .0203 242.6079);--card-foreground: oklch(.9813 .01 238.5069);--popover: oklch(.2791 .0203 242.6079);--popover-foreground: oklch(.9813 .01 238.5069);--primary: oklch(.6999 .1796 150.1066);--primary-foreground: oklch(.1807 .0207 239.8394);--secondary: oklch(.2791 .0203 242.6079);--secondary-foreground: oklch(.9813 .01 238.5069);--muted: oklch(.2791 .0203 242.6079);--muted-foreground: oklch(.662 .0152 240.7167);--accent: oklch(.6236 .1833 147.4139);--accent-foreground: oklch(.1807 .0207 239.8394);--destructive: oklch(.6491 .2201 19.8586);--destructive-foreground: oklch(.1807 .0207 239.8394);--border: oklch(.35 .0203 242.6079);--input: oklch(.35 .0203 242.6079)}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;font-family:Space Grotesk,system-ui,-apple-system,sans-serif;background:var(--background);color:var(--foreground)}.mono{font-family:Space Mono,ui-monospace,monospace}.serif{font-family:"PT Serif",ui-serif,serif}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a{color:inherit;text-decoration:none}.app{display:grid;grid-template-columns:224px 1fr;grid-template-rows:56px 1fr;height:100vh}.topbar{grid-column:1 / -1;display:flex;align-items:center;padding:0 16px;border-bottom:1px solid var(--border);background:var(--card);gap:16px}.brand{display:flex;align-items:center;gap:10px;min-width:200px}.brand-mark{width:28px;height:28px;border-radius:6px;background:var(--primary);display:flex;align-items:center;justify-content:center;color:var(--primary-foreground);font-weight:700}.brand-name{font-weight:600;letter-spacing:.02em}.brand-tag{font-size:11px;color:var(--muted-foreground)}.topbar-meta{margin-left:auto;display:flex;align-items:center;gap:14px}.sidebar{border-right:1px solid var(--border);background:var(--card);padding:12px 8px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.nav-section-title{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground);margin:12px 8px 4px}.nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;color:var(--muted-foreground);font-size:14px}.nav-item:hover{background:color-mix(in oklch,var(--muted) 70%,transparent);color:var(--foreground)}.nav-item.active{background:var(--secondary);color:var(--secondary-foreground);font-weight:500}.main{padding:24px;overflow-y:auto}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.placeholder{display:flex;align-items:center;justify-content:center;height:60vh;text-align:center;color:var(--muted-foreground);flex-direction:column;gap:8px}.placeholder-title{font-size:16px;font-weight:600;color:var(--foreground)}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--background)}.login-card{width:380px;max-width:calc(100vw - 32px);padding:24px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:12px}.login-input{padding:10px 12px;border:1px solid var(--input);border-radius:6px;background:var(--background);color:var(--foreground);font:inherit}.login-button{padding:10px 12px;background:var(--primary);color:var(--primary-foreground);border-radius:6px;font-weight:500}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-error{color:var(--destructive);font-size:13px}
