.app[data-v-7e9b666f]{display:flex;flex-direction:column;height:100vh}.topbar[data-v-7e9b666f]{display:flex;align-items:center;gap:1.5rem;padding:0 1rem;height:56px;background:var(--surface);border-bottom:1px solid var(--border);flex:0 0 auto}.brand[data-v-7e9b666f]{font-weight:700}.nav[data-v-7e9b666f]{display:flex;gap:1rem}.nav a[data-v-7e9b666f]{color:var(--text-muted);text-decoration:none}.nav a.router-link-active[data-v-7e9b666f]{color:var(--accent);font-weight:600}.user[data-v-7e9b666f]{margin-left:auto;display:flex;align-items:center;gap:.75rem}.user-name[data-v-7e9b666f]{font-size:.9rem}.badge[data-v-7e9b666f]{font-size:.7rem;padding:2px 8px;border-radius:999px}.badge-admin[data-v-7e9b666f]{background:var(--accent);color:#fff}.badge-client[data-v-7e9b666f]{background:var(--border);color:var(--text-muted)}.content[data-v-7e9b666f]{flex:1 1 auto;min-height:0;overflow:auto}.loading[data-v-7e9b666f]{padding:2rem;color:var(--text-muted)}:root{--bg: #0f1115;--surface: #1a1d24;--surface-2: #232730;--border: #2e3340;--text: #e7e9ee;--text-muted: #9aa3b2;--accent: #4f7cff;--accent-2: #6f93ff;--danger: #ef4444;--ok: #22c55e;--radius: 10px}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);font-size:14px}button{font-family:inherit}.btn{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--border);background:var(--surface-2);color:var(--text);padding:.5rem .85rem;border-radius:var(--radius);cursor:pointer;font-size:.85rem}.btn:hover{border-color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-2)}.btn-ghost{background:transparent}.btn-danger{color:var(--danger);border-color:var(--danger);background:transparent}input,select{background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:.5rem .65rem;border-radius:8px;font-size:.9rem;font-family:inherit}input:focus,select:focus{outline:none;border-color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.panel{background:var(--surface);border:1px solid var(--border)}.panel-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:.75rem 1rem;border-bottom:1px solid var(--border)}
