@import"https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400;500&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--font-mono: "Roboto Mono", monospace;--bg-color: #0c0a18;--grid-color: rgba(68, 83, 132, .2);--text-primary: #ebebff;--text-secondary: #8490c0;--accent-color: #00bfff;--glow-subtle: rgba(0, 191, 255, .1);--glow-medium: rgba(0, 191, 255, .25);--glow-strong: rgba(0, 191, 255, .6);--border-color: rgba(0, 191, 255, .3);--border-hover-color: var(--accent-color);--interactive-bg: rgba(0, 191, 255, .08)}*{box-sizing:border-box}@keyframes pan-grid{0%{background-position:0% 0%}to{background-position:100% 100%}}html,body,.container,main{overscroll-behavior-y:contain}body{margin:0;padding:0;background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-mono);overflow-y:auto;justify-content:center;text-align:center;background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:3rem 3rem;animation:pan-grid 120s linear infinite}.container{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:4rem 1.5rem}main{width:100%;max-width:650px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}@keyframes fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.fade-in{opacity:0;animation:fade-in 1s ease-out forwards}@keyframes grow-down{0%{height:0}to{height:40px}}.causal-chain{display:flex;flex-direction:column;align-items:center;width:100%}.chain-node{background:var(--glow-subtle);border:1px solid var(--border-color);padding:1rem 1.5rem;border-radius:8px;margin:0;width:100%;transition:all .5s ease-out}.chain-node p{margin:0;line-height:1.6;font-size:1.1rem}.chain-node.inactive{background:transparent;border-color:#44538480;color:var(--text-secondary)}.chain-node.active{box-shadow:0 0 25px var(--glow-medium);transform:scale(1.02)}.connector{width:2px;height:40px;background:var(--accent-color);opacity:.8;animation:grow-down .5s ease-out}.interaction-zone{width:100%;margin-top:40px}.prompt-text{color:var(--text-secondary);font-size:1rem;margin-bottom:1.5rem;animation:fade-in .5s forwards}.button-group{display:flex;flex-direction:column;gap:.8rem}input[type=text]{background:transparent;border:1px solid var(--border-color);color:var(--text-primary);font-size:1.1rem;font-family:var(--font-mono);padding:.8rem 1rem;width:100%;border-radius:8px;text-align:center;transition:all .3s ease}input[type=text]::placeholder{color:var(--text-secondary);opacity:.6}input[type=text]:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 15px var(--glow-medium);background-color:var(--interactive-bg)}button{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);font-family:var(--font-mono);font-size:1rem;padding:.9rem 1.5rem;border-radius:8px;cursor:pointer;width:100%;transition:all .2s ease-out}button:hover:not(:disabled){border-color:var(--accent-color);color:var(--text-primary);background-color:var(--interactive-bg);transform:translateY(-2px)}button:disabled{opacity:.4;cursor:not-allowed}.user-input-area{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.user-input-area button{margin-top:1rem}.final-screen h2{color:var(--accent-color);text-shadow:0 0 20px var(--accent-color);font-size:1.8rem;margin-bottom:2rem}.final-text{font-size:1.1rem;line-height:1.7;margin:2rem 0;color:var(--text-secondary)}.restart-button{font-size:1.1rem;border-color:var(--accent-color);color:var(--accent-color)}.restart-button:hover{color:var(--bg-color);background-color:var(--accent-color)}.error-message{color:#ff8e8e;border:1px solid #ff8e8e;padding:1rem;border-radius:8px;margin-top:1rem}
