.app{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#0f0f23,#1a1a3e,#0f0f23)}.loading-container,.error-container,.not-connected{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:16px;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-icon{width:64px;height:64px;border-radius:50%;background:#ef44441a;border:2px solid var(--error);color:var(--error);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700}.error-container h2,.not-connected h2{color:var(--text-primary);font-size:20px}.error-container p,.not-connected p{color:var(--text-secondary);font-size:14px}.swap-container{width:100%;max-width:480px;background:var(--bg-card);border-radius:24px;padding:24px;border:1px solid var(--border-color);box-shadow:0 8px 32px #0000004d}.swap-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.header-left{display:flex;flex-direction:column;gap:6px}.swap-header h1{font-size:20px;font-weight:600;color:var(--text-primary)}.party-id-badge{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#8b5cf61a;border:1px solid rgba(139,92,246,.2);border-radius:8px;cursor:pointer;transition:all .2s}.party-id-badge:hover{background:#8b5cf626;border-color:#8b5cf64d}.party-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.party-value{font-size:11px;font-family:monospace;color:var(--primary-light)}.settings-btn{width:36px;height:36px;border-radius:12px;border:none;background:var(--bg-hover);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.settings-btn:hover,.settings-btn.active{background:var(--border-color);color:var(--primary)}.settings-btn svg{width:20px;height:20px}.settings-panel{background:var(--bg-dark);border-radius:16px;padding:16px;margin-bottom:16px;border:1px solid var(--border-color)}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.settings-row:not(:last-child){border-bottom:1px solid var(--border-color);padding-bottom:12px;margin-bottom:8px}.settings-row>span{font-size:13px;color:var(--text-secondary)}.slippage-options{display:flex;gap:8px;align-items:center}.slippage-btn{padding:6px 12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all .2s}.slippage-btn:hover{border-color:var(--primary);color:var(--text-primary)}.slippage-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.slippage-custom{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px}.slippage-custom input{width:50px;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:13px;text-align:right}.slippage-custom span{color:var(--text-secondary);font-size:13px}.deadline-input{display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px}.deadline-input input{width:40px;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:13px;text-align:right}.deadline-input span{color:var(--text-secondary);font-size:12px}.swap-input-container{background:var(--bg-dark);border-radius:16px;padding:16px;position:relative}.swap-input-header{display:flex;justify-content:space-between;font-size:13px;color:var(--text-secondary);margin-bottom:8px}.balance{cursor:pointer;transition:color .2s;display:flex;align-items:center;gap:6px}.balance:hover{color:var(--primary)}.max-btn{padding:2px 6px;background:var(--primary);border:none;border-radius:4px;color:#fff;font-size:10px;font-weight:600;cursor:pointer;opacity:.8;transition:opacity .2s}.max-btn:hover{opacity:1}.swap-input-row{display:flex;align-items:center;gap:12px}.swap-amount-input{flex:1;background:transparent;border:none;font-size:28px;font-weight:500;color:var(--text-primary);outline:none;min-width:0}.swap-amount-input::placeholder{color:var(--text-secondary);opacity:.5}.swap-amount-input::-webkit-outer-spin-button,.swap-amount-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.swap-amount-input[type=number]{-moz-appearance:textfield}.usd-value{font-size:13px;color:var(--text-secondary);margin-top:8px}.quote-error{font-size:13px;color:var(--error);margin-top:8px;padding:8px 12px;background:#ef44441a;border-radius:8px;border:1px solid rgba(239,68,68,.2)}.quote-route-info{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:10px 12px;background:#8b5cf614;border-radius:10px;border:1px solid rgba(139,92,246,.15)}.quote-route-info.loading{justify-content:center;background:#3b82f614;border-color:#3b82f626}.quote-route-info .loading-text{font-size:13px;color:var(--text-secondary);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.route-provider{display:flex;align-items:center;gap:10px}.provider-badge{font-size:12px;font-weight:600;color:#fff;padding:4px 10px;background:linear-gradient(135deg,#8b5cf6,#6366f1);border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.route-path{font-size:13px;color:var(--text-secondary)}.route-time{font-size:12px;color:var(--text-secondary);background:#ffffff0d;padding:4px 8px;border-radius:6px}.swap-amount-input.loading{opacity:.7;cursor:wait}.token-select-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;color:var(--text-primary);font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.token-select-btn:hover{background:var(--bg-hover);border-color:var(--primary)}.token-select-btn svg{width:16px;height:16px;color:var(--text-secondary)}.token-select-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.token-chain-badge{font-size:10px;padding:2px 6px;background:var(--bg-hover);border-radius:4px;color:var(--text-secondary);font-weight:500}.token-chain-info{display:flex;align-items:center;margin-left:auto;margin-right:12px}.token-chain{font-size:11px;padding:3px 8px;background:var(--bg-hover);border-radius:4px;color:var(--text-secondary);font-weight:500}.token-item-wrapper{display:flex;flex-direction:column}.token-list-item.has-chains{cursor:pointer}.token-multichain-indicator{display:flex;align-items:center;gap:8px;margin-left:auto}.chain-count{font-size:12px;color:var(--primary);font-weight:500}.expand-icon{width:16px;height:16px;color:var(--text-secondary);transition:transform .2s ease}.expand-icon.expanded{transform:rotate(180deg)}.chain-submenu{display:flex;flex-direction:column;background:var(--bg-hover);border-radius:8px;margin:4px 0 8px 48px;overflow:hidden}.chain-option{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;cursor:pointer;transition:background .2s}.chain-option:hover{background:var(--bg-card)}.chain-option.selected{background:#8b5cf626}.chain-name{font-size:13px;font-weight:500;color:var(--text-primary)}.chain-balance-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.chain-balance{font-size:13px;font-weight:500;color:var(--text-primary)}.chain-usd{font-size:11px;color:var(--text-secondary)}.token-icon{border-radius:50%}.token-list{position:absolute;top:100%;left:0;right:0;margin-top:8px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:12px;z-index:100;max-height:400px;overflow-y:auto;box-shadow:0 8px 32px #0006}.token-search{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-dark);border:1px solid var(--border-color);border-radius:12px;margin-bottom:12px}.token-search svg{width:18px;height:18px;color:var(--text-secondary)}.token-search input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:14px}.token-search input::placeholder{color:var(--text-secondary)}.token-list-section{margin-bottom:8px}.token-list-empty{display:flex;align-items:center;justify-content:center;padding:32px 16px;color:var(--text-secondary);font-size:14px}.token-list-empty p{margin:0}.section-label{display:block;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:8px 12px 4px}.token-list-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;cursor:pointer;transition:all .2s}.token-list-item:hover{background:var(--bg-hover)}.token-list-item.selected{background:#8b5cf626;border:1px solid var(--primary)}.token-info{flex:1;display:flex;flex-direction:column;gap:2px}.token-symbol{font-weight:600;font-size:15px}.token-name{font-size:12px;color:var(--text-secondary)}.token-balance-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.token-balance{font-size:14px;font-weight:500}.token-usd{font-size:12px;color:var(--text-secondary)}.token-chain{font-size:11px;color:var(--text-secondary);padding:2px 8px;background:var(--bg-dark);border-radius:6px}.swap-direction{display:flex;justify-content:center;margin:-8px 0;position:relative;z-index:10}.swap-direction-btn{width:40px;height:40px;border-radius:12px;border:4px solid var(--bg-card);background:var(--bg-dark);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.swap-direction-btn:hover{background:var(--bg-hover);color:var(--primary)}.swap-direction-btn svg{width:20px;height:20px}.swap-info{margin:16px 0;padding:12px;background:var(--bg-dark);border-radius:12px}.exchange-rate,.pool-info{display:flex;justify-content:space-between;font-size:13px;padding:4px 0}.rate-label,.pool-label{color:var(--text-secondary)}.rate-value{color:var(--text-primary);font-weight:500}.pool-value{color:var(--text-secondary);font-size:12px}.swap-btn{width:100%;padding:18px;border:none;border-radius:16px;font-size:18px;font-weight:600;cursor:pointer;transition:all .2s;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;margin-top:8px}.swap-btn:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 4px 20px #8b5cf666}.swap-btn:disabled{background:var(--bg-hover);color:var(--text-secondary);cursor:not-allowed}.swap-btn.loading{pointer-events:none}.swap-btn.warning{background:linear-gradient(135deg,#f59e0b,#ef4444)}.swap-btn.error{background:linear-gradient(135deg,#6b7280,#4b5563);cursor:not-allowed}.btn-spinner{width:24px;height:24px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.swap-result{margin-top:16px;padding:12px 16px;border-radius:12px;font-size:14px;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px}.swap-result.success{background:#10b9811a;color:var(--success);border:1px solid var(--success)}.swap-result.error{background:#ef44441a;color:var(--error);border:1px solid var(--error)}.result-icon{font-size:18px;font-weight:700}.swap-details{margin-top:16px;padding:16px;background:var(--bg-dark);border-radius:12px}.detail-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:6px 0}.detail-row span:first-child{color:var(--text-secondary);display:flex;align-items:center;gap:4px}.detail-value{color:var(--text-primary)}.detail-value.highlight{color:var(--success);font-weight:500}.detail-value.warning{color:var(--error)}.detail-value.caution{color:#f59e0b}.detail-value.route{font-family:monospace;font-size:12px}.warning-badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:var(--error);color:#fff;border-radius:50%;font-size:10px;font-weight:700}.token-list::-webkit-scrollbar{width:6px}.token-list::-webkit-scrollbar-track{background:transparent}.token-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.token-list::-webkit-scrollbar-thumb:hover{background:var(--primary)}@media(max-width:520px){.swap-container{border-radius:0;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.app{padding:0}.swap-amount-input{font-size:24px}.slippage-options{flex-wrap:wrap}.settings-row{flex-direction:column;align-items:flex-start;gap:8px}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #8b5cf6;--primary-light: #a78bfa;--primary-dark: #7c3aed;--secondary: #ec4899;--bg-dark: #0f0f23;--bg-card: #1e1e3f;--bg-hover: rgba(139, 92, 246, .1);--border-color: rgba(139, 92, 246, .2);--text-primary: #e4e4e7;--text-secondary: #a1a1aa;--success: #10b981;--error: #ef4444}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:var(--bg-dark);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}
