@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;600&display=swap";.save-node-btn[data-v-e9929e73]{margin-bottom:20px}:root{--bg-main: #0b0c10;--bg-panel: rgba(31, 40, 51, .92);--text-main: #c5c6c7;--accent-1: #45a29e;--accent-2: #66fcf1;--danger: #ff4b4b}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{overflow:hidden;color:var(--text-main);background:radial-gradient(circle at 20% 20%,#111520 0%,var(--bg-main) 40%,#08090c 100%);font-family:Space Grotesk,sans-serif}button,input,textarea{font-family:inherit}.app-root{width:100%;height:100%}.graph-stage{width:100%;height:100%;position:relative}.graph-container{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2}.graph-container svg{width:100%;height:100%}.graph-container text{pointer-events:none;-webkit-user-select:none;user-select:none}.graph-hud{position:absolute;top:20px;right:20px;display:flex;flex-direction:column;gap:3px;padding:14px 16px;background:#0a0e16cc;border:1px solid rgba(102,252,241,.2);border-radius:10px}.hint{margin:0}.hint-overlay{position:absolute;left:50%;top:22px;transform:translate(-50%);z-index:26;padding:7px 11px;border-radius:999px;background:#0a0e16d9;border:1px solid rgba(102,252,241,.2)}.btn{border:1px solid var(--accent-1);background:#66fcf114;color:var(--accent-2);padding:10px 28px;border-radius:30px;font-size:1rem;cursor:pointer;transition:all .25s ease}.btn:hover{background:var(--accent-1);color:var(--bg-main);box-shadow:0 0 15px #45a29ecc}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-danger{border-color:var(--danger);color:var(--danger);background:#ff4b4b12}.btn-danger:hover{background:var(--danger);color:#190909;box-shadow:0 0 12px #ff4b4b99}.btn-small{font-size:.9rem;padding:8px 18px}.btn-block{width:100%}.floating-top-left{position:absolute;top:20px;left:20px;z-index:25}.floating-bottom-left{position:absolute;bottom:20px;left:20px;z-index:25}.landing-page{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;background:linear-gradient(180deg,#0b0c1059,#0b0c10d1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.landing-card{width:min(92vw,460px);border-radius:18px;border:1px solid rgba(69,162,158,.5);background:#0d111aad;box-shadow:0 18px 50px #00000073;padding:32px}.title{margin:0 0 8px;font-size:clamp(2rem,4vw,3rem);color:var(--accent-2);text-shadow:0 0 20px rgba(102,252,241,.45)}.subtitle{margin-top:0;margin-bottom:20px}.auth-mode-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.mode-btn{border:1px solid rgba(69,162,158,.45);background:#0a0e16a6;color:var(--text-main);border-radius:10px;padding:8px 10px;cursor:pointer}.mode-btn.active{border-color:var(--accent-2);color:var(--accent-2);box-shadow:0 0 0 1px #66fcf133 inset}.input-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.input-group input{border:1px solid rgba(69,162,158,.55);border-radius:10px;background:#080b10eb;color:#ecf3f3;padding:11px 12px;outline:none}.input-group input:focus{border-color:var(--accent-2)}.dialog{position:absolute;right:-360px;top:20px;width:min(90vw,320px);background:var(--bg-panel);border:1px solid var(--accent-1);border-radius:15px;padding:20px;z-index:30;transition:right .28s ease;box-shadow:-5px 5px 20px #0000007a}.dialog.is-open{right:20px}.dialog h2{margin-top:0;color:var(--accent-2)}.close-btn{float:right;border:0;background:transparent;color:var(--text-main);font-size:1rem;font-weight:700;cursor:pointer}.edit-controls{margin-top:12px}.edit-controls textarea{width:100%;resize:none;background:#080b10f2;color:#fff;border:1px solid var(--accent-1);border-radius:8px;padding:10px;margin-bottom:10px}.status-banner{position:absolute;left:50%;bottom:24px;transform:translate(-50%);z-index:50;background:#0c121ae6;border:1px solid rgba(102,252,241,.35);border-radius:999px;padding:8px 14px;font-size:.85rem}@media(max-width:768px){.dialog{top:auto;bottom:-460px;right:50%;transform:translate(50%);width:min(94vw,420px);transition:bottom .28s ease}.dialog.is-open{bottom:20px;right:50%}.graph-hud{top:78px;right:14px;padding:11px 12px}}
