:root{--evx-bg: #f6f7fb;--evx-surface: #ffffff;--evx-border: #dde1ea;--evx-text: #16213e;--evx-muted: #5b6478;--evx-primary: #1d4ed8;--evx-primary-contrast: #ffffff;--evx-danger: #d93025;--evx-radius: 8px;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--evx-text);background:var(--evx-bg)}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}a{color:var(--evx-primary);text-decoration:none}.demo-shell{display:flex;flex-direction:column;height:100%}.demo-nav{display:flex;gap:16px;align-items:center;padding:8px 16px;background:var(--evx-surface);border-bottom:1px solid var(--evx-border)}.demo-nav .brand{font-weight:700;color:var(--evx-primary);margin-right:8px}.demo-nav a{color:var(--evx-muted);font-size:14px}.demo-nav a.active{color:var(--evx-text);font-weight:600}.demo-main{flex:1;min-height:0;display:flex;flex-direction:column}.demo-page{padding:16px;overflow:auto}.demo-fill{flex:1;min-height:0;position:relative}.card{background:var(--evx-surface);border:1px solid var(--evx-border);border-radius:var(--evx-radius);padding:12px 16px;margin-bottom:12px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.btn{border:1px solid var(--evx-border);background:var(--evx-surface);border-radius:6px;padding:6px 12px;cursor:pointer;font:inherit;color:var(--evx-text)}.btn.primary{background:var(--evx-primary);color:var(--evx-primary-contrast);border-color:var(--evx-primary)}.btn.danger{color:var(--evx-danger)}.btn:disabled{opacity:.5;cursor:default}table.list{width:100%;border-collapse:collapse;font-size:14px}table.list th,table.list td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--evx-border)}.muted{color:var(--evx-muted);font-size:13px}.badge{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;background:#e8edf7;color:var(--evx-primary)}.split{display:grid;grid-template-columns:1fr 320px;gap:12px;height:100%;min-height:0}@media(max-width:800px){.split{grid-template-columns:1fr;grid-template-rows:minmax(60vh,1fr) auto;height:auto;overflow:auto}.split>.demo-fill{min-height:60vh}}.error{color:var(--evx-danger)}.login-form{display:flex;flex-direction:column;gap:12px;max-width:360px;margin:48px auto}.login-form label{display:flex;flex-direction:column;gap:4px;font-size:14px}.login-form input{padding:6px 8px;font:inherit}
