:root{font-family:IBM Plex Mono,Space Mono,Consolas,SFMono-Regular,monospace;line-height:1.6;font-weight:400;color:#e8fff2;background-color:#030c08;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-height:100vh;height:100vh;overflow:hidden;background-color:#030c08}#root{min-height:100vh;height:100vh}.app-shell{position:relative;height:100vh;min-height:100vh;display:flex;flex-direction:column;color:#e7fff1;background:radial-gradient(circle at 10% 20%,rgba(9,41,33,.7),transparent 50%),radial-gradient(circle at 90% 0,rgba(19,69,52,.5),transparent 45%),#030c08;overflow:hidden}.app-body{flex:1;min-height:0;overflow-y:auto;padding:2rem;display:flex;flex-direction:column;gap:1.25rem}.top-panels{position:sticky;top:0;z-index:5;display:flex;flex-direction:column;gap:1rem;padding-bottom:1rem;background:#030f0bf0;border-bottom:1px solid rgba(45,115,90,.35);box-shadow:0 18px 40px #020a0799;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.metric-card{padding:1rem;border:1px solid #1b362b;background:#030f0bd9;border-radius:8px;box-shadow:inset 0 0 12px #2e8c6926}.metric-card.warning{border-color:#3f3520;box-shadow:inset 0 0 12px #f7b95540}.metric-card.danger{border-color:#4a1d2c;box-shadow:inset 0 0 22px #f45c8f59}.metric-label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#7e9b8b}.metric-label--hint{position:relative;cursor:help;outline:none}.metric-label--hint:after{content:attr(data-tooltip);position:absolute;left:0;top:130%;min-width:180px;max-width:220px;padding:.35rem .5rem;border-radius:6px;background:#03140ef2;border:1px solid rgba(94,231,181,.4);color:#c8ffe7;font-size:.7rem;text-transform:none;letter-spacing:0;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .16s ease,transform .16s ease;z-index:15}.metric-label--hint:hover:after,.metric-label--hint:focus-visible:after{opacity:1;transform:translateY(0)}.metric-value{display:block;font-size:1.8rem;margin-top:.35rem;letter-spacing:.08em}.metric-bar{height:4px;margin-top:.75rem;background:#14241de6;border-radius:999px;overflow:hidden}.metric-bar span{display:block;height:100%;width:0;background:#62e8b5;transition:width .32s ease,background .32s ease}.metric-card.danger .metric-bar span{background:#f45c8f}.metric-card.warning .metric-bar span{background:#f7b955}.seed-bar span{width:100%;background:linear-gradient(90deg,#0f4f37,#1a855d);opacity:.35}.scan-feed{border:1px solid rgba(45,115,90,.4);border-radius:12px;padding:1rem;width:100%;background:#020c09c7;box-shadow:inset 0 0 30px #0e41314d}.scan-feed__header{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.75rem}.scan-feed__cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.scan-card{margin:0;padding:.75rem;border:1px solid rgba(66,122,104,.35);border-radius:8px;background:#03120dd9;color:#bfffe3;font-family:IBM Plex Mono,Space Mono,Consolas,monospace;font-size:.72rem;line-height:1.4;white-space:pre-wrap}.scan-feed__empty{margin:0;color:#6fa08c}.knowledge-controls{display:flex;justify-content:flex-end}.knowledge-toggle{border:1px solid rgba(94,231,181,.6);background:transparent;color:#7debc8;padding:.4rem .8rem;border-radius:6px;cursor:pointer;font-family:inherit}.knowledge-panel{border:1px solid rgba(45,115,90,.4);border-radius:10px;padding:1rem;background:#010906cc;box-shadow:inset 0 0 30px #0b2c2166}.knowledge-panel h3{margin-top:0;letter-spacing:.12em;text-transform:uppercase;color:#5ee7b5}.knowledge-panel ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.knowledge-panel li{border-left:2px solid rgba(94,231,181,.4);padding-left:.6rem}.knowledge-panel strong{display:block;color:#c3ffe6}.knowledge-panel p{margin:.2rem 0 0;color:#9ec6b5;font-size:.85rem}.knowledge-empty{margin:0;color:#7e9b8b}.main-panel{flex:1;min-height:0;display:flex;flex-direction:column}.terminal-panel{flex:1;display:flex;flex-direction:column;min-height:0;height:100%;padding:1.5rem;border-radius:12px;border:1px solid rgba(45,115,90,.5);background:#010705d9;box-shadow:0 0 80px #0e413173,inset 0 0 120px #09282199}.log-surface{flex:1;min-height:0;overflow-y:auto;font-family:IBM Plex Mono,Space Mono,Consolas,monospace;font-size:.95rem;padding-right:.25rem;margin-bottom:1rem}.log-line{display:flex;gap:.75rem;margin:.35rem 0;color:#c6f6d5}.log-timestamp{flex-shrink:0;width:70px;color:#3e7560}.log-text{flex:1;word-break:break-word}.log-system .log-text{color:#bdfae1}.log-event .log-text{color:#7fe0ff}.log-warning .log-text{color:#f7b955}.log-core .log-text{color:#ff8fb7}.log-input .log-text{color:#74f1d3}.command-form{display:flex;align-items:center;border-top:1px solid rgba(66,122,104,.35);padding-top:1rem;gap:.75rem}.prompt{color:#62e8b5;font-family:IBM Plex Mono,Space Mono,Consolas,monospace;font-size:1.1rem}.command-input{flex:1;background:transparent;border:none;color:#e8fff2;font-family:IBM Plex Mono,Space Mono,Consolas,monospace;font-size:1rem;padding:.35rem 0}.command-input:focus{outline:none;border-bottom:1px solid rgba(117,236,189,.5)}.command-input::placeholder{color:#7ba2908c}.command-input:disabled{opacity:.5;cursor:not-allowed}.command-hints{margin-top:1.25rem;border-top:1px solid rgba(37,74,65,.5);padding-top:.9rem;font-size:.85rem;color:#9ec6b5}.command-hints p{margin:.4rem 0;color:#c3ffe6}.hint-label{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:#5ee7b5}.hint-sub{display:block;color:#6a9f88}.tutorial-overlay{position:fixed;inset:0;background:#030806ed;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:20}.tutorial-card{max-width:520px;width:100%;border:1px solid rgba(94,231,181,.4);border-radius:16px;padding:1.25rem 1.5rem;background:#000b07f2;box-shadow:0 0 60px #00000059,inset 0 0 60px #1b5c4540}.tutorial-card h2{margin:.5rem 0 .75rem;letter-spacing:.08em}.tutorial-card ul{padding-left:1.2rem;color:#c1ffe5}.tutorial-card button{margin-top:1rem;padding:.65rem 1rem;border:none;border-radius:6px;background:linear-gradient(90deg,#1a855d,#3ac79b);color:#02160f;font-weight:600;cursor:pointer}.tutorial-card small{display:block;margin-top:.5rem;color:#6fa08c;letter-spacing:.08em}@media(max-width:720px){.app-body{padding:1.25rem}.terminal-panel{padding:1rem}.scan-feed__cards{grid-template-columns:1fr}.log-timestamp{width:60px}}
