: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;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{--primary: #2c5aa0;--primary-dark: #1e3d6f;--success: #2d8659;--error: #c24444;--bg-dark: #1a1d29;--bg-panel: #24283a;--text: #e8e8e8;--border: #4a5568;--accent: #5b7fb5}*{margin:0;padding:0;box-sizing:border-box;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}body{background:#0f1419;color:var(--text);font-family:Courier New,Courier,monospace;min-height:100vh}.App{max-width:1400px;margin:0 auto;padding:2rem;position:relative}.wallet-toggle{position:fixed;top:1rem;right:1rem;z-index:1000}.wallet-toggle button{background:var(--primary);color:#fff;border:3px solid var(--border);padding:.6rem 1.2rem;font-family:Courier New,monospace;font-size:.9rem;cursor:pointer;font-weight:700;box-shadow:4px 4px #0000004d}.wallet-toggle button:hover{background:var(--primary-dark);transform:translate(2px,2px);box-shadow:2px 2px #0000004d}.wallet-toggle button:active{transform:translate(4px,4px);box-shadow:none}.wallet-toggle .connected{background:var(--success);border-color:var(--success)}.app-header{text-align:center;margin-bottom:3rem;padding-top:3rem;border-bottom:4px solid var(--border);padding-bottom:2rem}.app-header h1{font-size:3rem;margin-bottom:1rem;color:var(--primary);letter-spacing:.1em;text-shadow:3px 3px 0 rgba(0,0,0,.3)}.app-header .tagline{font-size:1.1rem;margin-bottom:.5rem;color:var(--accent);font-weight:700}.app-header .subtitle{font-size:.95rem;opacity:.8;margin-bottom:.3rem}.connect-btn{background:var(--primary);color:#fff;border:3px solid var(--border);padding:.75rem 2rem;font-size:1rem;cursor:pointer;font-family:Courier New,monospace;font-weight:700;box-shadow:4px 4px #0000004d}.connect-btn:hover{background:var(--primary-dark);transform:translate(2px,2px);box-shadow:2px 2px #0000004d}.connect-btn:active{transform:translate(4px,4px);box-shadow:none}.wallet-info{background:var(--bg-panel);border:3px solid var(--primary);padding:.75rem 1.5rem;display:inline-flex;align-items:center;gap:1rem;font-family:Courier New,monospace}.disconnect-btn{background:var(--error);border:2px solid var(--border);color:#fff;padding:.4rem .8rem;cursor:pointer;font-size:.9rem;font-family:Courier New,monospace;font-weight:700}.disconnect-btn:hover{opacity:.8}.mode-selector{display:flex;gap:1rem;justify-content:center;margin:2rem 0}.mode-btn{background:var(--bg-panel);border:3px solid var(--border);color:var(--text);padding:.75rem 1.5rem;cursor:pointer;font-size:1rem;font-family:Courier New,monospace;font-weight:700;min-width:200px;box-shadow:3px 3px #0000004d}.mode-btn:hover{background:var(--bg-dark);border-color:var(--primary)}.mode-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:inset 2px 2px 4px #0000004d}.main-container{max-width:800px;margin:0 auto}.info-box{background:var(--bg-panel);border:3px solid var(--primary);padding:1rem;margin-bottom:1.5rem;text-align:center}.info-box p{margin:0}.token-output{background:var(--bg-panel);border:3px solid var(--success);padding:1rem;margin-top:1.5rem}.token-box{background:var(--bg-dark);border:2px solid var(--border);padding:1rem;max-height:300px;overflow-y:auto;margin:.5rem 0}.token-box pre{margin:0;font-size:.85rem;color:var(--text);white-space:pre-wrap;word-break:break-all}.copy-btn{width:100%;background:var(--success);color:#fff;border:3px solid var(--border);padding:.75rem;cursor:pointer;font-size:1rem;margin-top:.5rem;font-family:Courier New,monospace;font-weight:700;box-shadow:3px 3px #0000004d}.copy-btn:hover{opacity:.9;transform:translate(1px,1px);box-shadow:2px 2px #0000004d}.copy-btn:active{transform:translate(3px,3px);box-shadow:none}.hint{font-size:.9rem;opacity:.7;margin-top:.5rem;text-align:center}.button-group{display:flex;gap:.5rem;margin-top:.5rem}.action-btn.secondary{background:var(--bg-panel);border:3px solid var(--border)}.action-btn.secondary:hover:not(:disabled){background:var(--bg-dark)}.reset-btn{width:100%;background:var(--bg-panel);border:3px solid var(--border);color:var(--text);padding:.75rem;cursor:pointer;margin-top:1rem;font-family:Courier New,monospace;font-weight:700;box-shadow:2px 2px #0000004d}.reset-btn:hover{background:var(--bg-dark);transform:translate(1px,1px);box-shadow:1px 1px #0000004d}.placeholder-text{text-align:center;opacity:.5;padding:1rem;font-style:italic}.error ul{margin:.5rem 0;padding-left:1.5rem}.error li{margin:.25rem 0;font-family:monospace}.panels-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:2rem;margin-bottom:2rem}.panel{background:var(--bg-panel);border:4px solid var(--border);padding:2rem;box-shadow:6px 6px #0000004d}.panel h2{font-size:1.5rem;margin-bottom:1.5rem;color:var(--primary);border-bottom:3px solid var(--border);padding-bottom:.5rem}.section{margin-bottom:1.5rem}.section label{display:block;margin-bottom:.5rem;font-weight:600}textarea,input[type=text]{width:100%;background:var(--bg-dark);border:3px solid var(--border);color:var(--text);padding:.75rem;font-family:Courier New,monospace;font-size:.95rem}textarea:focus,input:focus{outline:none;border-color:var(--primary);box-shadow:inset 2px 2px 4px #0000004d}.wallet-input{display:flex;gap:.5rem;margin-bottom:1rem}.wallet-input input{flex:1}.wallet-input button{background:var(--success);color:#fff;border:3px solid var(--border);padding:.5rem 1rem;cursor:pointer;font-family:Courier New,monospace;font-weight:700;box-shadow:2px 2px #0000004d}.wallet-input button:hover{opacity:.9;transform:translate(1px,1px);box-shadow:1px 1px #0000004d}.wallet-list{display:flex;flex-direction:column;gap:.5rem}.wallet-item{background:var(--bg-dark);padding:.5rem 1rem;border:2px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-family:Courier New,monospace}.wallet-item button{background:var(--error);border:2px solid var(--border);color:#fff;padding:.2rem .5rem;cursor:pointer;font-size:.8rem;font-family:Courier New,monospace;font-weight:700}.action-btn{width:100%;background:var(--primary);color:#fff;border:3px solid var(--border);padding:1rem;font-size:1rem;font-weight:700;cursor:pointer;margin-top:1rem;font-family:Courier New,monospace;box-shadow:4px 4px #0000004d}.action-btn:hover:not(:disabled){transform:translate(2px,2px);box-shadow:2px 2px #0000004d}.action-btn:active:not(:disabled){transform:translate(4px,4px);box-shadow:none}.action-btn:disabled{opacity:.5;cursor:not-allowed}.status{margin-top:1rem;padding:.75rem;border:3px solid var(--border);text-align:center;font-weight:700;font-family:Courier New,monospace}.placeholder{text-align:center;padding:3rem 1rem;opacity:.6}.placeholder .hint{font-size:.9rem;margin-top:.5rem}.token-info{background:var(--bg-dark);padding:1rem;border:2px solid var(--border);font-size:.9rem;font-family:Courier New,monospace}.token-info div{margin-bottom:.5rem}.success{background:var(--bg-panel);border:3px solid var(--success);padding:1rem}.error{background:var(--bg-panel);border:3px solid var(--error);padding:1rem}.decrypted-message{background:var(--bg-dark);padding:1rem;border:2px solid var(--border);margin-top:.5rem;font-size:1.1rem;font-weight:700;font-family:Courier New,monospace}.app-footer{text-align:center;padding:2rem;opacity:.6;font-size:.9rem;border-top:3px solid var(--border);margin-top:3rem}.app-footer a{color:var(--accent);text-decoration:none;font-weight:700}.app-footer a:hover{text-decoration:underline}@media(max-width:768px){.panels-container{grid-template-columns:1fr}.app-header h1{font-size:1.8rem}}
