:root{--swap-primary:#fbbf24;--swap-primary-hover:#f59e0b;--swap-secondary:#374151;--swap-accent:#1f2937;--swap-border:#4b5563;--swap-border-hover:#fbbf24;--swap-text:#f9fafb;--swap-text-secondary:#9ca3af;--swap-success:#10b981;--swap-error:#ef4444;--swap-warning:#f59e0b;--swap-info:#3b82f6;--swap-gradient:linear-gradient(135deg,#fbbf24,#f59e0b);--swap-gradient-hover:linear-gradient(135deg,#f59e0b,#d97706);--swap-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--swap-shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--swap-glow:0 0 20px rgba(251,191,36,0.3)}.swap-button{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s}.swap-button,.swap-button:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.swap-button:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.swap-button{border:2px solid var(--swap-primary);background:var(--swap-gradient);box-shadow:var(--swap-shadow)}.swap-button:hover{background:var(--swap-gradient-hover);border-color:var(--swap-primary-hover);box-shadow:var(--swap-shadow-lg),var(--swap-glow)}.swap-button:active{transform:scale(.98)}.swap-button-secondary{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;border:2px solid var(--swap-border);background:transparent;color:var(--swap-text)}.swap-button-secondary:hover{border-color:var(--swap-border-hover);background:rgba(251,191,36,.1);box-shadow:var(--swap-shadow)}.swap-card{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s;animation-duration:.5s;background:rgba(0,0,0,.6);backdrop-filter:blur(20px);border:2px solid var(--swap-border);box-shadow:var(--swap-shadow-lg)}.swap-card:hover{border-color:var(--swap-border-hover);box-shadow:var(--swap-shadow-lg),var(--swap-glow);transform:translateY(-2px)}.swap-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(251,191,36,.1),transparent);transition:left .5s}.swap-card:hover:before{left:100%}.swap-input{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(31,41,55,.8);border:2px solid var(--swap-border);color:var(--swap-text);backdrop-filter:blur(10px)}.swap-input:focus{border-color:var(--swap-border-hover);box-shadow:0 0 0 3px rgba(251,191,36,.1);background:rgba(31,41,55,.9)}.swap-input::placeholder{color:var(--swap-text-secondary)}.swap-badge{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;border:1px solid var(--swap-primary);background:rgba(251,191,36,.1);color:var(--swap-primary);backdrop-filter:blur(10px)}.swap-badge:hover{background:rgba(251,191,36,.2);box-shadow:var(--swap-shadow)}.token-selector{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;border:2px solid var(--swap-border);background:rgba(31,41,55,.8);backdrop-filter:blur(10px)}.token-selector:hover{border-color:var(--swap-border-hover);background:rgba(31,41,55,.9);box-shadow:var(--swap-shadow)}.token-dropdown{position:absolute;z-index:50;width:100%;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(0,0,0,.95);backdrop-filter:blur(20px);border:2px solid var(--swap-border);box-shadow:var(--swap-shadow-lg)}.token-option{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s;border-bottom:1px solid var(--swap-border)}.token-option:hover{background:rgba(251,191,36,.1);border-color:var(--swap-border-hover)}.token-option:last-child{border-bottom:none}.swap-nav{position:relative;overflow:hidden;background:rgba(0,0,0,.8);backdrop-filter:blur(20px);border-bottom:2px solid var(--swap-border)}.swap-nav-link{position:relative;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;border:2px solid transparent;background:transparent;color:var(--swap-text-secondary)}.swap-nav-link:hover{color:var(--swap-primary);border-color:var(--swap-border);background:rgba(251,191,36,.1)}.swap-nav-link.active{color:var(--swap-primary);border-color:transparent;background:transparent}.swap-mode-selector{display:flex}.swap-mode-selector>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.swap-mode-selector{padding:.25rem;background:rgba(31,41,55,.8);border:2px solid var(--swap-border);border-radius:12px;backdrop-filter:blur(10px)}.swap-mode-button{display:flex;align-items:center}.swap-mode-button>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.swap-mode-button{border-radius:var(--radius);padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;border:2px solid transparent;background:transparent;color:var(--swap-text-secondary)}.swap-mode-button:hover{color:var(--swap-primary);border-color:var(--swap-border);background:rgba(251,191,36,.1)}.swap-mode-button.active{color:var(--swap-text);border-color:var(--swap-primary);background:var(--swap-gradient);box-shadow:var(--swap-shadow)}.route-info{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(31,41,55,.8);border:2px solid var(--swap-border);backdrop-filter:blur(10px)}.route-info:hover{border-color:var(--swap-border-hover);box-shadow:var(--swap-shadow)}.status-message{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;border:2px solid;backdrop-filter:blur(10px)}.status-success{background:rgba(16,185,129,.1);border-color:var(--swap-success);color:var(--swap-success)}.status-error{background:rgba(239,68,68,.1);border-color:var(--swap-error);color:var(--swap-error)}.status-warning{background:rgba(245,158,11,.1);border-color:var(--swap-warning);color:var(--swap-warning)}.status-info{background:rgba(59,130,246,.1);border-color:var(--swap-info);color:var(--swap-info)}.swap-loading{position:relative;overflow:hidden;background:rgba(31,41,55,.8);border:2px solid var(--swap-border);backdrop-filter:blur(10px)}.swap-loading:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(251,191,36,.2),transparent);animation:loading-shimmer 1.5s infinite}@keyframes loading-shimmer{0%{left:-100%}to{left:100%}}.network-selector{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(31,41,55,.8);border:2px solid var(--swap-border);backdrop-filter:blur(10px)}.network-selector:hover{border-color:var(--swap-border-hover);box-shadow:var(--swap-shadow)}.user-info{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(251,191,36,.1);border:2px solid var(--swap-primary);backdrop-filter:blur(10px);color:var(--swap-text)}.user-info:hover{background:rgba(251,191,36,.2);box-shadow:var(--swap-shadow)}.market-item{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(31,41,55,.8);border:2px solid var(--swap-border);backdrop-filter:blur(10px)}.market-item:hover{border-color:var(--swap-border-hover);box-shadow:var(--swap-shadow);transform:translateY(-1px)}.platform-stat{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;border-bottom:1px solid var(--swap-border)}.platform-stat:hover{background:rgba(251,191,36,.05)}.platform-stat:last-child{border-bottom:none}.cross-address-info{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(59,130,246,.1);border:2px solid var(--swap-info);backdrop-filter:blur(10px)}.cross-address-info:hover{background:rgba(59,130,246,.2);box-shadow:var(--swap-shadow)}.wallet-status{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(16,185,129,.1);border:2px solid var(--swap-success);backdrop-filter:blur(10px)}.wallet-status:hover{background:rgba(16,185,129,.2);box-shadow:var(--swap-shadow)}.wallet-status.disconnected{background:rgba(245,158,11,.1);border-color:var(--swap-warning)}.wallet-status.disconnected:hover{background:rgba(245,158,11,.2)}.swap-execute-button{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s}.swap-execute-button,.swap-execute-button:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.swap-execute-button:hover{--tw-scale-x:1.02;--tw-scale-y:1.02}.swap-execute-button{background:var(--swap-gradient);border:2px solid var(--swap-primary);box-shadow:var(--swap-shadow-lg)}.swap-execute-button:hover{background:var(--swap-gradient-hover);border-color:var(--swap-primary-hover);box-shadow:var(--swap-shadow-lg),var(--swap-glow)}.swap-execute-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.swap-execute-button:disabled:hover{transform:none;box-shadow:var(--swap-shadow-lg)}.swap-arrow{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s}.swap-arrow,.swap-arrow:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.swap-arrow:hover{--tw-rotate:180deg;--tw-scale-x:1.1;--tw-scale-y:1.1}.swap-arrow{background:var(--swap-gradient);border:2px solid var(--swap-primary);box-shadow:var(--swap-shadow)}.swap-arrow:hover{background:var(--swap-gradient-hover);border-color:var(--swap-primary-hover);box-shadow:var(--swap-shadow-lg),var(--swap-glow)}.settings-panel{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(0,0,0,.6);border:2px solid var(--swap-border);backdrop-filter:blur(20px)}.settings-panel:hover{border-color:var(--swap-border-hover);box-shadow:var(--swap-shadow-lg)}.settings-item{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;border:1px solid var(--swap-border);background:rgba(31,41,55,.8);backdrop-filter:blur(10px)}.settings-item:hover{border-color:var(--swap-border-hover);background:rgba(31,41,55,.9);box-shadow:var(--swap-shadow)}.slippage-button{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;border:2px solid var(--swap-border);background:transparent;color:var(--swap-text-secondary)}.slippage-button:hover{border-color:var(--swap-border-hover)}.slippage-button.active,.slippage-button:hover{background:rgba(251,191,36,.1);color:var(--swap-primary)}.slippage-button.active{border-color:var(--swap-primary)}.slippage-button:active{transform:scale(.96);filter:brightness(.95)}.slippage-percent{position:absolute;right:2px;top:50%;transform:translateY(-50%);color:#fbbf24;font-weight:700;pointer-events:none;font-size:.95em}.mev-toggle{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:var(--swap-gradient);border:2px solid var(--swap-primary);box-shadow:var(--swap-shadow)}.mev-toggle:hover{background:var(--swap-gradient-hover);border-color:var(--swap-primary-hover);box-shadow:var(--swap-shadow-lg)}.transaction-item{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s;background:rgba(31,41,55,.8);border:1px solid var(--swap-border);backdrop-filter:blur(10px)}.transaction-item:hover{border-color:var(--swap-border-hover);background:rgba(31,41,55,.9);box-shadow:var(--swap-shadow);transform:translateY(-1px)}.mobile-menu{background:rgba(0,0,0,.9);border:2px solid var(--swap-border);backdrop-filter:blur(20px)}.mobile-menu,.mobile-menu-item{position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;animation-duration:.3s}.mobile-menu-item{border:1px solid transparent;background:transparent;color:var(--swap-text-secondary)}.mobile-menu-item:hover{border-color:var(--swap-border)}.mobile-menu-item.active,.mobile-menu-item:hover{background:rgba(251,191,36,.1);color:var(--swap-primary)}.mobile-menu-item.active{border-color:var(--swap-primary)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in-up{animation:fadeInUp .6s ease-out}.animate-slide-in-right{animation:slideInRight .6s ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@media (max-width:768px){.swap-card{margin:.5rem}.swap-button{padding:.75rem 1rem;font-size:.875rem}.token-selector{padding:.5rem}}@media (max-width:480px){.swap-mode-selector{flex-direction:column;gap:.5rem}.swap-mode-button{width:100%;justify-content:center}}@media (prefers-color-scheme:dark){:root{--swap-accent:#111827;--swap-border:#374151;--swap-text-secondary:#6b7280}}@media (prefers-contrast:high){:root{--swap-primary:#ffffff;--swap-border:#ffffff;--swap-text:#000000}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}