: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{--primary-color: #1677ff;--background-color: #f5f5f5;--text-color: #333;--border-color: #ddd;--success-color: #52c41a;--error-color: #ff4d4f;--card-background: #fff;--hover-color: #e6f7ff}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--background-color);color:var(--text-color);line-height:1.6}.home-container{max-width:800px;margin:0 auto;padding:2rem}header{text-align:center;margin-bottom:2rem}header h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--primary-color)}header p{font-size:1.2rem;color:#666}.connection-status,.action-container,.signature-container{background-color:var(--card-background);border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;margin-bottom:2rem}h2{margin-bottom:1rem;color:#444}.status-indicator{display:inline-block;padding:.5rem 1rem;border-radius:4px;font-weight:700;margin-bottom:1rem}.status-indicator.connected{background-color:var(--success-color);color:#fff}.status-indicator.disconnected{background-color:#999;color:#fff}.key-info{background-color:#f9f9f9;border-radius:4px;padding:1rem;margin-top:1rem}.key-info p{margin-bottom:.5rem;word-break:break-all}button{background-color:var(--primary-color);color:#fff;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;cursor:pointer;transition:background-color .2s}button:hover{background-color:#0958d9}button:disabled{background-color:#ccc;cursor:not-allowed}.disconnect-button{background-color:#ff7875;margin-top:1rem}.disconnect-button:hover{background-color:#ff4d4f}.error-message{background-color:#fff2f0;border:1px solid #ffccc7;border-radius:4px;padding:1rem;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.error-message button{background-color:transparent;color:var(--error-color);padding:.25rem .5rem}.error-message button:hover{background-color:#fff0f0}.connect-container,.login-container{text-align:center}.connect-container p,.login-container p{margin-bottom:1.5rem}.signature-output{background-color:#f5f5f5;padding:1rem;border-radius:4px;overflow-x:auto;white-space:pre-wrap;font-family:monospace;margin-top:1rem}footer{text-align:center;margin-top:3rem;color:#666}footer a{color:var(--primary-color);text-decoration:none;margin:0 .5rem}footer a:hover{text-decoration:underline}.callback-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--background-color)}.callback-card{background-color:var(--card-background);border-radius:8px;box-shadow:0 2px 12px #0000001a;padding:2rem;width:90%;max-width:500px;text-align:center}.callback-card h2{margin-bottom:1rem}.callback-card p{margin-bottom:1.5rem}.callback-card.success h2{color:var(--success-color)}.callback-card.error h2{color:var(--error-color)}.callback-card.processing h2{color:var(--primary-color)}.settings-container{background-color:#f5f5f5;border-radius:8px;padding:16px;margin-bottom:24px;border:1px solid #e0e0e0}.domain-setting{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.domain-setting label{font-weight:600;min-width:150px}.domain-setting input{flex:1;min-width:250px;padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px}.reset-button{background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;padding:8px 12px;cursor:pointer;font-size:14px;transition:background-color .2s}.reset-button:hover{background-color:#e0e0e0}.domain-hint{margin-top:8px;color:#666;font-style:italic;padding-left:150px}
