.knowledge-start{display:grid;gap:10px;margin:22px 0;padding:0;border:0}.knowledge-start legend{margin-bottom:12px;font-size:14px;font-weight:650}.knowledge-start label{display:flex!important;align-items:center;gap:12px;padding:15px;border:1px solid #b8c5dd;border-radius:14px;cursor:pointer;background:rgba(100,135,225,.06)}.knowledge-start label:has(input:checked){border-color:#668afa;background:rgba(90,130,255,.14)}.knowledge-start input{width:18px!important;height:18px;accent-color:#668afa}.knowledge-start strong,.knowledge-start small{display:block}.knowledge-start small{margin-top:5px;font-size:12px;line-height:1.5;opacity:.8}.onto-create-dialog{max-height:90vh;overflow:auto}.onto-create-dialog [hidden]{display:none!important}#knowledge-template{padding:12px;border-radius:10px;width:100%;font:inherit}.knowledge-model-dialog{width:min(980px,92vw);max-height:90vh;padding:28px;border:1px solid #d9e1ee;border-radius:22px;background:#f7f9fd;color:#20334f;box-shadow:0 24px 100px #11182750}.knowledge-model-dialog::backdrop{background:#17263a80;backdrop-filter:blur(6px)}.knowledge-model-dialog header{display:flex;justify-content:space-between;gap:20px}.knowledge-model-dialog h2{margin:5px 0 8px;font-size:28px;letter-spacing:-.7px}.knowledge-model-dialog p{font-size:14px;color:#5b6d86}.knowledge-model-dialog small{font-size:10px;font-weight:750;letter-spacing:1.5px;color:#526fd0}.knowledge-model-dialog button{min-height:42px;padding:10px 15px;border:1px solid #cbd6e7;border-radius:10px;background:#fff;color:#294569;cursor:pointer;font:inherit}.knowledge-model-dialog button:focus-visible,.knowledge-model-dialog input:focus-visible{outline:3px solid #96b2ff;outline-offset:2px}.knowledge-model-dialog nav,.knowledge-model-dialog footer{display:flex;gap:10px;margin:20px 0;flex-wrap:wrap}.knowledge-model-dialog footer{justify-content:space-between}.knowledge-model-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.knowledge-model-cards article{padding:16px;background:#fff;border:1px solid #dce4f0;border-radius:14px;margin:10px 0}.knowledge-model-cards label{display:grid;gap:6px;margin-bottom:12px;font-size:11px;color:#6b7b91}.knowledge-model-cards input{padding:10px 12px;border:1px solid #e0e7f1;border-radius:8px;font:inherit;font-size:14px;color:#20334f;width:100%;box-sizing:border-box}.knowledge-model-dialog #knowledge-model-save{background:#315ee8;color:white;border-color:#315ee8}#knowledge-graph{position:absolute;inset:0;background:radial-gradient(circle,#d8e1f1 1px,transparent 1px) 0 0/22px 22px,#f8faff}.onto-simple-toolbar>button{min-height:40px;border-radius:9px}.onto-connection-card{border-radius:14px!important}.onto-graph-choice{border-radius:14px!important;padding:18px!important}.onto-home>h2{letter-spacing:-.7px}.onto-home>p{font-size:15px!important}@media(max-width:650px){.knowledge-model-cards{grid-template-columns:1fr}.knowledge-model-dialog{padding:18px}.knowledge-model-dialog h2{font-size:22px}.knowledge-model-dialog nav button{flex:1}}
/* Inherit the configured Warclaw palette rather than overriding its tokens. */
.onto-shell .onto-workspace { border:1px solid #dce4f0; border-radius:18px; box-shadow:0 8px 28px #233e7010; }
.onto-shell .onto-commandbar h1 { letter-spacing:-1px; }
.onto-shell .onto-modebar { border-radius:12px; }
.onto-shell .onto-canvas-panel { min-height:600px; }
.knowledge-model-dialog :is(input,select) { padding:10px; border:1px solid #cbd6e7; border-radius:8px; color:#20334f; background:white; font:inherit; max-width:100%; }
.knowledge-model-dialog :is(input,select):focus-visible { outline:3px solid #96b2ff; outline-offset:2px; }
.knowledge-model-dialog button:disabled { opacity:.5; cursor:default; }
@media(min-width:1000px){.onto-shell { padding:28px 32px; }.onto-shell .onto-canvas-panel { min-height:540px; }}
.onto-shell .onto-inspector-dialog { position:static; inset:auto; margin:0; width:auto; max-width:none; height:auto; max-height:750px; overflow:auto; border:0; border-left:1px solid #dce4f0; box-sizing:border-box; }
.onto-shell .onto-inspector-dialog .onto-inspector { min-height:0; padding:20px; }
.onto-node-source { padding:12px 0; border-bottom:1px solid #dce4f0; overflow-wrap:anywhere; }
.onto-node-source a { color:#315ee8; font-weight:600; }
.onto-node-source p { white-space:pre-wrap; font-size:12px; line-height:1.5; }
@media(min-width:1101px){.onto-shell .onto-workspace:has(.onto-inspector-dialog[open]) { grid-template-columns:220px minmax(280px,1fr) 340px; }}
@media(max-width:1100px){.onto-shell .onto-inspector-dialog { grid-column:1 / -1; max-height:none; border-left:0; border-top:1px solid #dce4f0; }}

/* Shared dark/light tokens also cover dialogs that render outside the canvas. */
.knowledge-start label { border-color:var(--color-neutral-400); background:var(--color-neutral-800); }
.knowledge-start label:has(input:checked) { border-color:var(--color-accent-400); background:var(--color-neutral-700); }
.knowledge-start input { accent-color:var(--color-accent-500); }
.knowledge-start small,.knowledge-model-dialog p,.knowledge-model-cards label { color:var(--color-neutral-200); }
.knowledge-model-dialog { border-color:var(--color-neutral-400); background:var(--color-neutral-900); color:var(--color-neutral-100); box-shadow:0 24px 100px #0008; }
.knowledge-model-dialog::backdrop { background:#0009; }
.knowledge-model-dialog small { color:var(--color-accent-400); }
.knowledge-model-dialog button { min-height:44px; border-color:var(--color-neutral-400); background:var(--color-neutral-700); color:var(--color-neutral-100); }
.knowledge-model-dialog :is(input,select) { border-color:var(--color-neutral-400); background:var(--color-neutral-900); color:var(--color-neutral-100); }
.knowledge-model-dialog :is(button,input,select):focus-visible { outline-color:var(--color-accent-400); }
.knowledge-model-cards article { background:var(--color-neutral-800); border-color:var(--color-neutral-400); }
.knowledge-model-dialog #knowledge-model-save { background:var(--color-accent-600); border-color:var(--color-accent-500); color:#fff; }
#knowledge-graph { background:radial-gradient(circle,var(--color-neutral-400) 1px,transparent 1px) 0 0/22px 22px,var(--color-neutral-900); }
.onto-shell .onto-workspace,.onto-shell .onto-inspector-dialog,.onto-node-source { border-color:var(--color-neutral-400); }
.onto-shell .onto-workspace { box-shadow:0 8px 28px #0002; }
.onto-node-source a { color:var(--color-neutral-100); text-decoration:underline; text-underline-offset:3px; }
.onto-node-source p { font-size:13px; line-height:1.6; }
.onto-simple-toolbar>button { min-height:44px; }
.onto-legend { flex-wrap:wrap; gap:10px 16px; font-size:12px; }
.onto-legend i { width:12px; height:12px; vertical-align:middle; border:1px solid #ffffff80; }
.onto-legend i.document { background:#1e4f91; border-radius:0; }
.onto-legend i.entity { background:#12645d; border-radius:4px; }
.onto-legend i.event { background:#80521b; border-radius:50%; }
.onto-legend i.observation { background:#66468d; clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%); }
.onto-legend i.risk { background:#923a4b; }
.onto-node.document { --node-fill:#1e4f91; }
.onto-node.entity { --node-fill:#12645d; }
.onto-node.event { --node-fill:#80521b; }
.onto-node.observation { --node-fill:#66468d; }
.onto-node.risk { --node-fill:#923a4b; }
.onto-node :is(rect,circle,polygon),.onto-node.focus :is(rect,circle,polygon) { fill:var(--node-fill); }
.onto-node text,.onto-node .onto-node-type { fill:#fff; }
.onto-node.focus :is(rect,circle,polygon) { stroke:var(--color-accent-400); stroke-width:4; }
.knowledge-expansion-badges{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:5}
.knowledge-expand-badge{position:absolute;pointer-events:auto;min-width:30px;min-height:30px;padding:3px 7px;border:2px solid var(--color-neutral-900,#171211);border-radius:16px;background:var(--color-accent-600,#a02030);color:#fff;font:700 12px system-ui;cursor:pointer;box-shadow:0 2px 5px #0006}
.knowledge-expand-badge:focus-visible{outline:3px solid var(--color-accent-400,#ffaaaa);outline-offset:3px}
.onto-expansion-label{fill:var(--color-accent-400,#ffaaaa)!important;font-size:16px!important;font-weight:800;cursor:pointer}
