:root{--primary-blue:#3b82f6;--primary-blue-hover:#2563eb;--primary-indigo:#6366f1;--primary-indigo-hover:#4f46e5;--success-green:#10b981;--success-green-light:#34d399;--error-red:#ef4444;--error-red-light:#f87171;--warning-amber:#f59e0b;--warning-amber-light:#fbbf24;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--bg-primary:#fff;--bg-secondary:var(--gray-50);--bg-tertiary:var(--gray-100);--text-primary:var(--gray-900);--text-secondary:var(--gray-600);--text-tertiary:var(--gray-500);--border-primary:var(--gray-200);--border-secondary:var(--gray-300)}body{background-color:var(--bg-secondary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.card-base{background-color:var(--bg-primary);border:1px solid var(--border-primary);border-radius:.75rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1)}.btn-primary{background-color:var(--primary-blue);color:#fff}.btn-primary:hover{background-color:var(--primary-blue-hover)}.btn-secondary{background-color:var(--gray-100);color:var(--text-primary);border:1px solid var(--border-primary)}.btn-secondary:hover{background-color:var(--gray-200)}.input-base{background-color:var(--bg-primary);border:1px solid var(--border-primary);color:var(--text-primary)}.input-base:focus{border-color:var(--primary-blue);outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.text-success{color:var(--success-green)}.text-error{color:var(--error-red)}.bg-success-light{background-color:#d1fae5}.bg-error-light{background-color:#fee2e2}button{transition:background-color .15s ease,transform .15s ease;position:relative}button:active{transform:scale(.99)}button.bg-blue-600:hover,button.bg-indigo-500:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.1)}.hover\:shadow-lg{transition:box-shadow .15s ease}input:focus,select:focus,textarea:focus{transition:border-color .1s ease}[role=tab]{transition:background-color .1s ease,color .1s ease}[role=menu]{animation:slideDown .15s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.tabular-nums{font-variant-numeric:tabular-nums}.animate-pulse{animation:pulse 2s ease-in-out infinite}html{scroll-behavior:smooth}img{transition:opacity .15s ease}a:not(button a){position:relative;transition:color .2s ease}@media (max-width:768px){a:active,button:active{transform:scale(.95)}*{transition-duration:.1s!important}}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.snowball-token-card{position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.snowball-token-card:hover{border-color:#bae6fd;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);transform:translateY(-2px)}.snowball-token-card:before{content:"";position:absolute;inset:-1px;background:linear-gradient(90deg,#60a5fa,#7dd3fc);border-radius:.75rem;opacity:0;transition:opacity .3s;z-index:-1;filter:blur(2px)}.snowball-token-card:hover:before{opacity:.3}.snowball-token-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom right,#bae6fd 2px,transparent 0) 0 0 /8px 8px,linear-gradient(to bottom left,#e0f2fe 2px,transparent 0) 100% 0 /8px 8px,linear-gradient(to top right,#7dd3fc 2px,transparent 0) 0 100% /8px 8px,linear-gradient(to top left,#60a5fa 2px,transparent 0) 100% 100% /8px 8px;background-repeat:no-repeat;pointer-events:none;opacity:0;transition:opacity .3s}.snowball-token-card:hover:after{opacity:1}@keyframes snowfall{0%{transform:translateY(-10px) translateX(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(100px) translateX(20px);opacity:0}}.snowball-token-card .snowflake{position:absolute;width:4px;height:4px;background:#e0f2fe;border-radius:50%;opacity:0;pointer-events:none}.snowball-token-card:hover .snowflake{animation:snowfall 3s linear infinite}.snowball-token-card:hover .snowflake:first-child{left:10%;animation-delay:0s}.snowball-token-card:hover .snowflake:nth-child(2){left:30%;animation-delay:.5s;background:#bae6fd}.snowball-token-card:hover .snowflake:nth-child(3){left:60%;animation-delay:1s;background:#7dd3fc}.snowball-token-image{position:relative;border-radius:.75rem;overflow:hidden}.snowball-token-image:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#e0f2fe,#f0f9ff);opacity:0;transition:opacity .3s}.snowball-token-card:hover .snowball-token-image:before{opacity:.3}.snowball-token-image:after{content:"";position:absolute;inset:-4px;background:linear-gradient(90deg,#60a5fa,#7dd3fc);border-radius:.75rem;opacity:0;filter:blur(4px);transition:opacity .3s;z-index:-1}.snowball-token-card:hover .snowball-token-image:after{opacity:.2}.snowball-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;font-size:.75rem;font-weight:500;border-radius:.375rem;border:1px solid;transition:all .2s}.snowball-badge-tier-s{background-color:#fef3c7;color:#92400e;border-color:#fef3c7}.snowball-badge-tier-a{background-color:#e0f2fe;color:#0c4a6e;border-color:#7dd3fc}.snowball-badge-tier-b{background-color:#f0f9ff;color:#1e3a8a;border-color:#60a5fa}.snowball-badge-tier-c{background-color:#bae6fd;color:#075985;border-color:#60a5fa}.snowball-badge-risk-low{background-color:#e0f2fe;color:#0c4a6e;border-color:#7dd3fc}.snowball-badge-risk-medium{background-color:#bae6fd;color:#075985;border-color:#60a5fa}.snowball-badge-risk-high{background-color:#fef3c7;color:#92400e;border-color:#fbbf24}.snowball-price-positive{background-color:#e0f2fe;color:#0c4a6e}.snowball-price-negative{background-color:#fef3c7;color:#92400e}.snowball-tech-pill{display:inline-block;padding:.125rem .375rem;font-size:.625rem;background-color:#f0f9ff;color:#1e3a8a;border:1px solid #e0f2fe;border-radius:.25rem}.snowball-token-card .token-name{transition:color .2s}.snowball-token-card:hover .token-name{color:#60a5fa}.snowball-action-button{display:inline-flex;align-items:center;gap:.25rem;font-size:.875rem;font-weight:500;color:#60a5fa;transition:all .2s}.snowball-token-card:hover .snowball-action-button{color:#7dd3fc}.snowball-action-button svg{transition:transform .2s}.snowball-token-card:hover .snowball-action-button svg{transform:translate(2px,-2px)}.snowball-skeleton{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.snowball-skeleton-ice{background:linear-gradient(90deg,#e0f2fe 25%,#bae6fd 50%,#e0f2fe 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes snowball-roll{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.snowball-rolling{animation:snowball-roll 2s linear infinite}body{color:#111827}body,main{background-color:#fff}.bg-white{background-color:#fff!important}.text-gray-900{color:#111827!important}.border-gray-200{border-color:#e5e7eb!important}.bg-indigo-500{background-color:#6366f1!important}.hover\:bg-indigo-600:hover{background-color:#4f46e5!important}input,select,textarea{background-color:#fff;color:#111827;border-color:#e5e7eb}header{background-color:hsla(0,0%,100%,.8);backdrop-filter:blur(12px)}aside{background-color:#fff}.shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,.05)!important}.shadow-md{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)!important}img{max-width:100%;height:auto;-o-object-fit:contain;object-fit:contain}.dropdown-menu img,[role=menu] img,button img{display:inline-block!important;vertical-align:middle!important}img.h-4,img.w-4{height:1rem!important;width:1rem!important;max-height:1rem!important;max-width:1rem!important}img.h-5,img.w-5{height:1.25rem!important;width:1.25rem!important;max-height:1.25rem!important;max-width:1.25rem!important}img.h-6,img.w-6{height:1.5rem!important;width:1.5rem!important;max-height:1.5rem!important;max-width:1.5rem!important}img.h-8,img.w-8{height:2rem!important;width:2rem!important;max-height:2rem!important;max-width:2rem!important}img.rounded-full{border-radius:9999px!important;overflow:hidden!important;flex-shrink:0!important}button[class*=bg-gradient-to-]{background-image:linear-gradient(to right,var(--tw-gradient-stops))!important}div:has(>img.rounded-full){display:inline-flex!important;align-items:center!important;justify-content:center!important}:root .bg-popover,:root .wallet-adapter-dropdown-list,:root .wallet-adapter-modal-wrapper,:root [data-slot=context-menu-content],:root [data-slot=dropdown-menu-content],:root [data-slot=hover-card-content],:root [data-slot=menubar-content],:root [data-slot=popover-content],:root [data-slot=select-content]{background-color:#fff!important;color:#111827!important}:root .wallet-adapter-dropdown-list-item:not([disabled]):hover{background-color:#f3f4f6!important}:root .wallet-adapter-dropdown-list{border:1px solid #e5e7eb!important;box-shadow:0 8px 20px rgba(0,0,0,.08)!important}:root .wallet-adapter-dropdown-list-item{color:#111827!important}:root .wallet-adapter-modal-wrapper{border:1px solid #e5e7eb!important;box-shadow:0 12px 32px rgba(0,0,0,.08)!important}:root .wallet-adapter-modal-title{color:#111827!important}:root .wallet-adapter-modal-wrapper .wallet-adapter-button{background-color:#fff!important;color:#111827!important;border:1px solid #e5e7eb!important}:root .wallet-adapter-modal-wrapper .wallet-adapter-button:not([disabled]):hover{background-color:#f3f4f6!important}:root .wallet-adapter-modal-button-close{background:#f3f4f6!important;border:1px solid #e5e7eb!important}:root .wallet-adapter-modal-button-close svg{fill:#6b7280!important}input:not([disabled]),input[type=number]:not([disabled]),input[type=text]:not([disabled]){pointer-events:auto!important;-moz-user-select:text!important;user-select:text!important;-webkit-user-select:text!important;touch-action:manipulation!important;cursor:text!important;position:relative!important;z-index:10!important}.bg-gray-50 input,.rounded-lg input,.swap-interface input{position:relative!important;z-index:10!important;pointer-events:auto!important}@media (max-width:768px){input{font-size:16px!important}}div:has(>input){pointer-events:auto!important}input.bg-transparent{pointer-events:auto!important;-moz-user-select:text!important;user-select:text!important;-webkit-user-select:text!important;cursor:text!important}