@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;600&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";:root{--bg:#0b100f;--panel:#121916;--panel-2:#18201c;--text:#e7eee9;--muted:#8a9a92;--border:#2a3832;--accent:#2e7d6e;--warn:#d4a017;--danger:#c45c4a;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:IBM Plex Sans,system-ui,sans-serif;font-weight:400;line-height:1.4}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select{font:inherit}.mode-tabs{gap:.35rem;display:flex}.mode-tabs__btn{border:1px solid var(--border);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:.28rem .7rem;font-size:.82rem}.mode-tabs__btn:hover{color:var(--text);border-color:var(--accent)}.mode-tabs__btn.is-active{color:var(--bg);background:var(--accent);border-color:var(--accent);font-weight:600}.status-bar{border-top:1px solid var(--border);background:var(--panel-2);padding:.4rem .85rem;font-size:.85rem}.status-bar--info{color:var(--text)}.status-bar--warn{color:var(--warn)}.status-bar--error{color:var(--danger)}.lang-switch{border:1px solid var(--border);border-radius:6px;display:inline-flex;overflow:hidden}.lang-switch button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:.35rem .65rem;font-size:.8rem}.lang-switch button+button{border-left:1px solid var(--border)}.lang-switch button.is-active{background:var(--accent);color:var(--bg);font-weight:600}.help-dialog__backdrop{z-index:40;background:#060a09b8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.help-dialog{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:min(32rem,100%);max-height:min(32rem,100vh - 2rem);padding:1rem 1.1rem 1.15rem;overflow:auto;box-shadow:0 16px 40px #0006}.help-dialog__head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.65rem;display:flex}.help-dialog__head h2{margin:0;font-size:1.05rem}.help-dialog__head button{border:1px solid var(--border);background:var(--panel-2);color:var(--text);font:inherit;cursor:pointer;border-radius:6px;padding:.28rem .65rem}.help-dialog__beta{color:var(--warn);margin:0 0 .75rem;font-size:.85rem}.help-dialog ol{gap:.45rem;margin:0;padding-left:1.15rem;font-size:.88rem;display:grid}.help-dialog__note{color:var(--muted);margin:.85rem 0 0;font-size:.8rem}.palette h2,.panel h2,.dmm h2,.log h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .35rem;font-size:.74rem}.palette__note{color:var(--muted);margin:0 0 .65rem;font-size:.8rem}.palette__list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.palette__item{text-align:left;border:1px solid var(--border);background:var(--panel-2);width:100%;color:var(--text);cursor:pointer;font:inherit;border-radius:8px;align-items:center;gap:.65rem;padding:.55rem .65rem;display:flex}.palette__item:hover{border-color:var(--accent)}.palette__item strong{font-size:.9rem;display:block}.palette__item small{color:var(--muted);font-size:.75rem}.palette__type{background:color-mix(in srgb, var(--accent) 20%, transparent);width:2rem;height:2rem;color:var(--accent);border-radius:6px;place-items:center;font-size:.75rem;font-weight:700;display:grid}.canvas-wrap{grid-template-rows:auto 1fr auto;gap:.3rem;height:100%;display:grid}.canvas-wrap__toolbar{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.canvas-wrap__hint{color:var(--muted);margin:.1rem 0 0;font-size:.74rem}.canvas-wrap__actions{gap:.4rem;display:flex}.canvas-wrap__toolbar button{border:1px solid var(--border);background:var(--panel);color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:6px;padding:.28rem .6rem;font-size:.85rem}.canvas-wrap__toolbar button:hover{border-color:var(--accent)}.canvas-wrap__toolbar button:disabled{opacity:.45;cursor:default}.canvas-wrap__active{border-color:var(--accent)!important;background:color-mix(in srgb, var(--accent) 18%, var(--panel))!important}.canvas-wrap__danger{border-color:var(--danger)!important;color:var(--danger)!important}.circuit-canvas{border:1px solid var(--border);touch-action:none;background:linear-gradient(160deg,#121816,#0d1211 60%,#15120e);border-radius:10px;width:100%;height:100%;min-height:0}.canvas-wrap__footer{color:var(--muted);margin:0;font-size:.78rem}.dmm__display{border:1px solid var(--border);background:#07110f;border-radius:8px;justify-content:space-between;align-items:baseline;margin-bottom:.65rem;padding:.85rem 1rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:1.6rem;display:flex}.dmm__display span{color:var(--accent);font-size:.9rem}.dmm__modes,.dmm__probe-actions,.dmm__power-btns,.dmm__secondary{grid-template-columns:1fr 1fr;gap:.35rem;margin-bottom:.65rem;display:grid}.dmm__modes{grid-template-columns:repeat(3,1fr)}.dmm__modes button,.dmm__probe-actions button,.dmm__power-btns button,.dmm__measure,.dmm__secondary button{border:1px solid var(--border);background:var(--panel-2);color:var(--text);font:inherit;cursor:pointer;border-radius:6px;padding:.45rem}.dmm__modes button.is-active,.dmm__probe-actions button.is-active,.dmm__power-btns button.is-active{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:600}.dmm__power{color:var(--muted);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.65rem;font-size:.82rem;display:flex}.dmm__power-btns{width:7.5rem;margin:0}.dmm__probes{gap:.35rem;margin:0 0 .65rem;display:grid}.dmm__probes div{justify-content:space-between;font-size:.85rem;display:flex}.dmm__probes dt{color:var(--muted)}.dmm__probes dd{margin:0;font-family:IBM Plex Mono,ui-monospace,monospace}.dmm__measure{background:color-mix(in srgb, var(--accent) 18%, transparent);border-color:var(--accent);width:100%;margin-bottom:.5rem}.dmm__secondary{grid-template-columns:1fr}.dmm__fuse{border-color:var(--danger)!important;color:var(--danger)!important}.dmm__hint{color:var(--muted);margin:.35rem 0 0;font-size:.75rem}.log__empty{color:var(--muted);margin:0;font-size:.82rem}.log__list{gap:.45rem;max-height:220px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.log__list li{border:1px solid var(--border);background:var(--panel-2);border-radius:8px;gap:.15rem;padding:.45rem .55rem;font-size:.8rem;display:grid}.log__list span:first-child{color:var(--accent);font-weight:600}.log__list small{color:var(--warn)}.panel__empty{color:var(--muted);margin:0;font-size:.82rem}.panel__kv{gap:.35rem;margin:0;display:grid}.panel__kv div{justify-content:space-between;gap:.5rem;font-size:.85rem;display:flex}.panel__kv dt{color:var(--muted)}.panel__kv dd{margin:0;font-family:IBM Plex Mono,ui-monospace,monospace}.panel__missions{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.panel__missions button{text-align:left;border:1px solid var(--border);background:var(--panel-2);width:100%;color:var(--text);cursor:pointer;font:inherit;border-radius:8px;padding:.55rem .65rem}.panel__missions button.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, var(--panel-2))}.panel__var-grid{grid-template-columns:1fr 1fr;gap:.45rem;display:grid}.panel__compare{gap:.4rem;margin:0;display:grid}.panel__compare div{gap:.1rem;display:grid}.panel__compare dt{color:var(--muted);font-size:.75rem}.panel__compare dd{margin:0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.92rem}.panel__compare dd small{color:var(--muted);font-family:IBM Plex Sans,system-ui,sans-serif;font-size:.72rem;font-weight:400;display:block}.panel__compare dd.is-match{color:var(--accent)}.panel__compare dd.is-mismatch{color:var(--warn)}.panel__missions strong{font-size:.88rem;display:block}.panel__missions small{color:var(--muted);font-size:.75rem}.panel__mission-active,.panel__formula{border-top:1px solid var(--border);gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:grid}.panel__mission-active p,.panel__formula p{margin:0;font-size:.85rem}.panel__mission-active button{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:.4rem .6rem}.panel__hint{color:var(--warn)!important}.panel__formula code{border:1px solid var(--border);background:#07110f;border-radius:6px;padding:.5rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.8rem;display:block}.panel__editor{gap:.65rem;display:grid}.panel__field{color:var(--muted);gap:.3rem;font-size:.82rem;display:grid}.panel__field input,.panel__field select{border:1px solid var(--border);background:var(--panel-2);color:var(--text);font:inherit;border-radius:6px;padding:.4rem .55rem}.panel__danger{border:1px solid color-mix(in srgb, var(--danger) 50%, var(--border));color:var(--danger);font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:.4rem .6rem}.panel__danger:hover{background:color-mix(in srgb, var(--danger) 12%, transparent)}.panel__checklist{color:var(--muted);font-size:.8rem}.panel__checklist ol{margin:.35rem 0 0;padding-left:1.1rem}.panel__checklist li{margin:.15rem 0}.panel__repair{border:1px solid var(--accent)!important;background:color-mix(in srgb, var(--accent) 18%, transparent)!important}.panel__mission-active button:disabled{opacity:.45;cursor:not-allowed}.app-shell{background:radial-gradient(ellipse 80% 50% at 10% -10%, #2e7d6e2e, transparent), radial-gradient(ellipse 60% 40% at 100% 0%, #b478281f, transparent), var(--bg);min-height:100vh;color:var(--text);grid-template-rows:auto 1fr auto;display:grid}.app-shell__header{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--panel) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:1rem;padding:.4rem .85rem;display:flex}.app-shell__brand{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.app-shell__logo{background:var(--accent);width:2rem;height:2rem;color:var(--bg);letter-spacing:.02em;border-radius:6px;place-items:center;font-size:.78rem;font-weight:800;display:grid}.app-shell__brand h1{letter-spacing:-.02em;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;font-size:.95rem;font-weight:700;display:flex}.app-shell__beta{letter-spacing:.04em;text-transform:uppercase;color:var(--bg);background:var(--warn);border-radius:999px;padding:.12rem .4rem;font-size:.65rem;font-weight:700}.app-shell__brand p{color:var(--muted);margin:0;font-size:.72rem}.app-shell__help{color:var(--muted);font-size:.85rem;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:none}.app-shell__actions{align-items:center;gap:.75rem;display:flex}.app-shell__help:hover{color:var(--accent)}.app-shell__body{grid-template-columns:240px 1fr 280px;min-height:0;display:grid}.app-shell__left,.app-shell__right{border-right:1px solid var(--border);background:var(--panel);flex-direction:column;gap:.65rem;padding:.5rem .7rem;display:flex;overflow:auto}.app-shell__right{border-right:none;border-left:1px solid var(--border)}.app-shell__canvas{min-width:0;min-height:0;padding:.4rem .55rem .5rem}@media (width<=1023px){.app-shell__body{grid-template-rows:auto 1fr auto;grid-template-columns:1fr}.app-shell__left,.app-shell__right{border:none;border-bottom:1px solid var(--border);max-height:280px}.app-shell__header{flex-wrap:wrap}}
