:root{--bg: #ffffff;--panel: #ffffff;--muted: #6b7280;--text: #0f172a;--accent: #16a34a;--glass: rgba(15,23,42,.04)}[data-theme=dark]{--bg: #0b1220;--panel: #0b1220;--muted: #94a3b8;--text: #e6eef8;--accent: #16a34a;--glass: rgba(255,255,255,.03)}*{box-sizing:border-box}body,#root{height:100%;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial;background:var(--bg);color:var(--text)}.app-shell{display:flex;min-height:100vh}.app-shell__sidebar{width:220px;background:linear-gradient(180deg,var(--panel),color-mix(in srgb,var(--panel) 85%,black 4%));border-right:1px solid var(--glass);padding:20px;display:flex;flex-direction:column;gap:12px}.brand{display:flex;align-items:center;gap:8px;margin-bottom:8px}.brand__logo{font-size:22px}.brand__title{font-weight:700;font-size:16px}.nav{display:flex;flex-direction:column;gap:6px;margin-top:12px}.nav__link{display:block;padding:10px 12px;border-radius:8px;color:var(--text);text-decoration:none;font-weight:600}.nav__link:hover{background:var(--glass);color:var(--accent)}.nav__link--active{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.sidebar__footer{margin-top:auto;display:flex;gap:8px;flex-direction:column;align-items:flex-start}.app-shell__main{flex:1;display:flex;flex-direction:column;min-height:100vh}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--glass);background:transparent}.topbar__title{font-weight:800;font-size:18px;color:var(--text)}.topbar__subtitle{font-size:12px;color:var(--muted)}.content{padding:20px;flex:1;overflow:auto}.footer{padding:14px 20px;border-top:1px solid var(--glass);display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}.theme-toggle{padding:8px 10px;border-radius:8px;border:1px solid var(--glass);background:transparent;cursor:pointer;font-weight:600;color:var(--muted)}.theme-toggle:hover{box-shadow:0 4px 14px #0000000f}.btn{padding:8px 12px;border-radius:8px;cursor:pointer}.btn--ghost{background:transparent;border:1px solid var(--glass);color:var(--muted)}@media (max-width: 880px){.app-shell__sidebar{width:72px;padding:12px}.brand__title{display:none}.nav__link{padding:8px;font-size:12px}}
