.app-layout[data-v-dab18fdb]{min-height:100vh}.sider-shell[data-v-dab18fdb]{height:100%;display:flex;flex-direction:column}.sider-menu[data-v-dab18fdb]{flex:1;min-height:0}.sider-footer[data-v-dab18fdb]{display:flex;justify-content:flex-start;padding:12px;margin-top:auto}.sider-footer--collapsed[data-v-dab18fdb]{justify-content:center}.theme-toggle[data-v-dab18fdb]{box-shadow:inset 0 0 0 1px var(--app-border-soft)}.theme-toggle--floating[data-v-dab18fdb]{position:fixed;left:12px;bottom:16px;z-index:30;background:var(--app-surface)}.theme-fab-shell[data-v-dab18fdb]{pointer-events:none}.theme-fab-shell[data-v-dab18fdb] .n-button{pointer-events:auto}.logo[data-v-dab18fdb]{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;font-size:18px;font-weight:700;border-bottom:1px solid var(--app-border);overflow:hidden}.logo__brand[data-v-dab18fdb]{display:flex;align-items:center;gap:10px;min-width:0}.logo__stack[data-v-dab18fdb]{display:flex;flex-direction:column;min-width:0;line-height:1.1}.logo--collapsed[data-v-dab18fdb]{justify-content:center;padding:0}.logo__icon[data-v-dab18fdb]{width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo__text[data-v-dab18fdb]{min-width:0;white-space:nowrap}.logo__version[data-v-dab18fdb]{margin-top:2px;font-size:11px;font-weight:500;color:var(--app-text-secondary);white-space:nowrap}.logo__meta[data-v-dab18fdb]{margin-top:2px;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;width:100%}.logo__variant[data-v-dab18fdb]{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:16px;padding:0 6px;border-radius:999px;background:color-mix(in srgb,var(--app-accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--app-accent) 20%,transparent);font-size:9px;font-weight:600;color:var(--app-accent);white-space:nowrap;margin-left:auto;letter-spacing:.06em;text-transform:uppercase}.logo__toggle[data-v-dab18fdb]{flex-shrink:0}.logo__toggle--collapsed[data-v-dab18fdb]{margin:0 auto}.header[data-v-dab18fdb]{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;background:var(--app-surface)}.header__left[data-v-dab18fdb]{display:flex;align-items:center;gap:12px;min-width:0}.header__content[data-v-dab18fdb]{display:flex;flex-direction:column;gap:2px;min-width:0}.header__title[data-v-dab18fdb]{display:flex;align-items:center;gap:8px;font-size:18px;color:var(--app-text-strong)}.header__right[data-v-dab18fdb]{flex-shrink:0}.card-muted[data-v-dab18fdb]{color:var(--app-text-secondary);font-size:13px}@media(max-width:640px){.header[data-v-dab18fdb]{padding:0 12px}.header__title[data-v-dab18fdb]{font-size:16px}}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;color:#111827;background:#f3f4f6;color-scheme:light;--app-bg: #f3f4f6;--app-surface: #ffffff;--app-surface-alt: #f8fafc;--app-border: #e5e7eb;--app-border-soft: #e2e8f0;--app-text-primary: #111827;--app-text-strong: #0f172a;--app-text-secondary: #64748b;--app-text-muted: #94a3b8;--app-accent: #2563eb;--app-accent-soft: #eff6ff;--app-shadow-strong: 0 20px 60px rgba(37, 99, 235, .14);--app-gradient-soft: linear-gradient(135deg, #eff6ff 0%, #eef2ff 100%)}:root[data-theme=dark]{color-scheme:dark;--app-bg: #111827;--app-surface: #1f2937;--app-surface-alt: #0f172a;--app-border: #334155;--app-border-soft: #334155;--app-text-primary: #e5e7eb;--app-text-strong: #f8fafc;--app-text-secondary: #94a3b8;--app-text-muted: #64748b;--app-accent: #60a5fa;--app-accent-soft: #172554;--app-shadow-strong: 0 20px 60px rgba(15, 23, 42, .4);--app-gradient-soft: linear-gradient(135deg, #0f172a 0%, #111827 100%)}*{box-sizing:border-box}body{margin:0;background:var(--app-bg);color:var(--app-text-primary)}#app{min-height:100vh}.page-title{margin:0;font-size:22px;font-weight:700}.page-subtitle{color:var(--app-text-secondary);margin-top:4px;margin-bottom:18px}.card-muted{color:var(--app-text-secondary)}
