/* Light-only technical canvas, retaining the existing diagram and animation. */
html:root body .system-card .energy-core{cursor:pointer!important}
html:root body .system-card .energy-core:focus-visible{outline:3px solid var(--kp-accent,#75c5ff)!important;outline-offset:8px!important}
html:root[data-theme=light] body .system-card .energy-core:focus-visible{outline-color:var(--kp-light-accent,#176eb5)!important}
.kei-core-hint{position:absolute;left:12px;right:12px;bottom:44px;text-align:center;font-size:11px;line-height:1.4;color:#a6bfd5;pointer-events:none}
html[data-theme=light] .kei-core-hint{color:#456781}
html body .kei-core-dialog{width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:24px;border:1px solid var(--kp-line,#34546d);border-radius:18px;background:var(--kp-dark,#102438);color:var(--kp-text,#edf6ff);overflow-y:auto;box-shadow:0 28px 80px #0006}
html body .kei-core-dialog::backdrop{background:#07111fa6;backdrop-filter:blur(4px)}
.kei-core-dialog-head{display:flex;align-items:center;gap:12px;justify-content:space-between}
html body .kei-core-dialog h2{font-family:Manrope,Arial,sans-serif;margin:0;font-size:24px;line-height:1.25;color:inherit}
html body .kei-core-dialog>p{font-size:14px;line-height:1.6;margin:12px 0 18px;color:inherit;opacity:.85}
html body .kei-core-close{flex:0 0 44px;width:44px;height:44px;border:1px solid var(--kp-line,#34546d);border-radius:10px;background:transparent;color:inherit;font-size:28px;line-height:1;cursor:pointer}
.kei-core-actions{display:grid;gap:10px}
html body .kei-core-actions>a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:72px;padding:14px 16px;border:1px solid var(--kp-line,#34546d);border-radius:12px;background:var(--kp-surface,#173249);color:inherit}
.kei-core-actions>a>span:first-child{min-width:0;display:flex;flex-direction:column;gap:4px}
.kei-core-actions strong{font-size:16px;line-height:1.4}.kei-core-actions small{font-size:13px;line-height:1.45;opacity:.85}.kei-core-arrow{font-size:24px;color:var(--kp-accent,#75c5ff)}
html body .kei-core-actions>a:focus-visible,html body .kei-core-close:focus-visible{outline:3px solid var(--kp-accent,#75c5ff);outline-offset:3px}
html[data-theme=light] body .kei-core-dialog{background:var(--kp-light,#f8fbff);color:var(--kp-ink,#142b40);border-color:var(--kp-light-line,#c4d7e8)}
html[data-theme=light] body .kei-core-actions>a{background:var(--kp-light-surface,#ffffff);border-color:var(--kp-light-line,#c4d7e8)}
html[data-theme=light] body .kei-core-arrow{color:var(--kp-light-accent,#176eb5)}
html[data-theme=light] body .kei-core-close{border-color:var(--kp-light-line,#c4d7e8)}
@media(hover:hover) and (pointer:fine){html body .kei-core-actions>a:hover{border-color:var(--kp-accent,#75c5ff)}html[data-theme=light] body .kei-core-actions>a:hover{border-color:var(--kp-light-accent,#176eb5)}}
@media(max-width:760px){html body .kei-core-dialog{width:calc(100% - 32px);padding:20px 16px;max-height:calc(100dvh - 32px)}html body .kei-core-dialog h2{font-size:22px}.kei-core-hint{font-size:10px;bottom:40px}}
@media(prefers-reduced-motion:no-preference){html body .kei-core-dialog[open]{animation:kei-core-open .18s ease-out}@keyframes kei-core-open{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}

html:root body .system-card .energy-core[data-kei-core-inactive]{cursor:default!important}
