:root{--bg:#191919;--bg-raised:#212120;--bg-hover:#2b2b2a;--bg-active:#323231;--fg:#e8e6e1;--fg-dim:#9c9a94;--fg-faint:#63625d;--accent:#4cb782;--accent-hover:#5fc996;--accent-dim:#4cb78224;--danger:#e06c5b;--separator:#ffffff12;--radius:8px;--radius-small:6px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--font);font-size:14px;line-height:1.5}.app{height:100vh;display:flex}.sidebar{border-right:1px solid var(--separator);background:var(--bg-raised);flex-direction:column;flex-shrink:0;width:260px;display:flex}.sidebar-header{padding:var(--space-4);justify-content:space-between;align-items:center;display:flex}.brand{letter-spacing:.02em;font-weight:600}.type-list{padding:0 var(--space-2) var(--space-4);flex:1;overflow-y:auto}.type-row{border-radius:var(--radius-small);align-items:center;display:flex}.type-row:hover{background:var(--bg-hover)}.type-row-selected{background:var(--accent-dim)}.type-row-name{text-align:left;color:var(--fg);font:inherit;padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:var(--radius-small);background:0 0;border:none;flex:1}.type-row-delete{visibility:hidden}.type-row:hover .type-row-delete{visibility:visible}.button{background:var(--bg-hover);color:var(--fg);font:inherit;padding:var(--space-2) var(--space-3);border-radius:var(--radius-small);cursor:pointer;border:none}.button:hover{background:var(--bg-active)}.button:disabled{opacity:.4;cursor:default}.button-primary{background:var(--accent-dim);color:var(--accent)}.button-primary:hover{background:var(--accent);color:var(--bg)}.button-danger{color:var(--danger)}.icon-button{color:var(--fg-dim);font:inherit;cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-small);background:0 0;border:none;font-size:16px}.icon-button:hover{background:var(--bg-hover);color:var(--fg)}.input{background:var(--bg);border:1px solid var(--separator);color:var(--fg);font:inherit;padding:var(--space-2) var(--space-3);border-radius:var(--radius-small);width:100%}.input:focus{border-color:var(--accent);outline:none}.type-create-form{gap:var(--space-2);padding:0 var(--space-4) var(--space-4);flex-direction:column;display:flex}.prop-draft-row{gap:var(--space-2);align-items:center;display:flex}.type-create-actions{justify-content:space-between;display:flex}.main{flex-direction:column;flex:1;min-width:0;display:flex}.empty-state{color:var(--fg-dim);flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.dim{color:var(--fg-faint)}.error-banner{color:var(--danger);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--separator);background:#e06c5b1f}.type-panel{flex-direction:column;flex:1;min-height:0;display:flex}.type-header{padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--separator);justify-content:space-between;align-items:center;display:flex}.type-header h1{margin:0;font-size:20px;font-weight:600}.type-body{flex:1;min-height:0;display:flex}.object-list{border-right:1px solid var(--separator);width:320px;padding:var(--space-3);gap:var(--space-1);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.object-row{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--fg);font:inherit;text-align:left;padding:var(--space-2) var(--space-3);border-radius:var(--radius-small);cursor:pointer;background:0 0;border:none;display:flex}.object-row:hover{background:var(--bg-hover)}.object-row-selected{background:var(--accent-dim)}.object-row-uuid{color:var(--fg-faint);font-variant-numeric:tabular-nums;font-size:12px}.object-editor{padding:var(--space-6);gap:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.object-editor-empty{padding:0}.object-editor-fields{gap:var(--space-4);flex-direction:column;max-width:520px;display:flex}.field{gap:var(--space-1);flex-direction:column;display:flex}.field-inline{flex-direction:row;justify-content:space-between;align-items:center}.field-label{color:var(--fg-dim);font-size:13px}.field-array{border-left:2px solid var(--separator);padding-left:var(--space-3);gap:var(--space-3);flex-direction:column;display:flex}.field-array-head{justify-content:space-between;align-items:center;display:flex}.field-array-item{align-items:flex-start;gap:var(--space-2);display:flex}.field-array-item-editor{flex:1}.object-editor-actions{gap:var(--space-3);display:flex}.app-loading{height:100vh;color:var(--fg-faint);justify-content:center;align-items:center;display:flex}.login-screen{justify-content:center;align-items:center;height:100vh;display:flex}.login-card{gap:var(--space-4);width:320px;padding:var(--space-6);background:var(--bg-raised);border-radius:var(--radius);flex-direction:column;display:flex}.login-card .brand{font-size:20px}.login-card .error-banner{border-radius:var(--radius-small);border:none}.login-button{width:100%}.login-register{gap:var(--space-3);flex-direction:column;display:flex}.login-link{color:var(--fg-dim);font:inherit;cursor:pointer;text-align:center;background:0 0;border:none;padding:0;font-size:13px}.login-link:hover{color:var(--fg)}.sidebar-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--separator);justify-content:space-between;align-items:center;display:flex}.sidebar-user{color:var(--fg-dim);font-size:13px}
