.ticker-sidebar{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d0d0df2;border-left:2px solid #333;flex-direction:column;width:280px;height:calc(100vh - 132px);padding-right:10px;transition:width .3s;display:flex;position:fixed;top:72px;bottom:60px;right:0}.ticker-header{background:#1a1a1a;border-bottom:1px solid #222;justify-content:space-between;align-items:center;padding:12px;display:flex}.ticker-header-controls{align-items:center;gap:10px;display:flex}.ticker-toggle{color:#666;cursor:pointer;background:0 0;border:1px solid #666;border-radius:4px;padding:4px 8px;font-size:12px;transition:all .2s}.ticker-toggle:hover{color:#fff;background:#666;border-color:#666}.ticker-sidebar.collapsed{width:60px;transition:width .3s}.ticker-sidebar.collapsed .ticker-header h3{display:none}.ticker-sidebar.collapsed .ticker-header{justify-content:center;padding:12px 8px}.ticker-header h3{color:#ccc;letter-spacing:.5px;margin:0;font-size:14px;font-weight:600}.ticker-update-time{color:#666;cursor:pointer;font-size:12px;animation:30s linear infinite rotate}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ticker-loading{text-align:center;color:#666;padding:20px;font-size:12px;font-style:italic}.ticker-list{flex:1;padding:8px;position:relative;overflow-y:auto}.ticker-divider{text-align:center;margin:15px 0;padding:8px 0;position:relative}.ticker-divider:before{content:"";background:linear-gradient(90deg,#0000,#444,#0000);height:1px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.ticker-divider span{color:#666;text-transform:uppercase;letter-spacing:1px;background:#0d0d0d;padding:0 12px;font-size:11px;font-weight:600;position:relative}.ticker-item{background:#1a1a1a;border:1px solid #333;border-radius:8px;margin-bottom:10px;padding:12px;transition:all .2s;position:relative}.ticker-item.special{background:linear-gradient(135deg,#2a2a2a 0%,#333 100%);border:2px solid #555;box-shadow:0 4px 12px #5555554d}.ticker-item.special:before{content:"⭐";opacity:.8;font-size:16px;position:absolute;top:8px;right:8px}.ticker-item.gig{opacity:.95;background:#161616;border:1px solid #2a2a2a}.ticker-item.gig:hover{opacity:1;background:#1a1a1a}.ticker-item:hover{background:#222;border-color:#444;transform:translate(-2px);box-shadow:-2px 0 8px #5553}.ticker-symbol-row{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.ticker-symbol{color:#ccc;font-size:14px;font-weight:700}.ticker-change{align-items:center;gap:2px;font-size:12px;font-weight:600;display:flex}.ticker-change.positive{color:#4caf50}.ticker-change.negative{color:#f44336}.ticker-name{color:#888;white-space:nowrap;text-overflow:ellipsis;margin-bottom:8px;font-size:11px;overflow:hidden}.ticker-category{color:#666;font-size:10px;font-style:italic}.ticker-price-row{margin-bottom:4px}.ticker-price{color:#fff;letter-spacing:-.5px;font-size:18px;font-weight:700}.ticker-contract-id{color:#555;background:#1a1a1a;border:1px solid #333;border-radius:3px;margin-left:8px;padding:2px 4px;font-family:monospace;font-size:9px}.ticker-stats{border-top:1px solid #2a2a2a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding-top:4px;display:flex}.ticker-volume{color:#666;font-size:10px}.ticker-liquidity{background:#ffffff0d;border-radius:3px;padding:1px 4px;font-size:10px;font-weight:600}.ticker-holders{color:#777;font-size:10px;font-style:italic}.ticker-footer{background:#1a1a1a;border-top:1px solid #222;padding:10px}.ticker-disclaimer{color:#666;text-align:center;font-size:10px;font-style:italic}.ticker-list::-webkit-scrollbar{width:4px}.ticker-list::-webkit-scrollbar-track{background:#0d0d0d}.ticker-list::-webkit-scrollbar-thumb{background:#333;border-radius:2px}.ticker-list::-webkit-scrollbar-thumb:hover{background:#444}@media (max-width:1200px){.ticker-sidebar{display:none}}@keyframes priceUpdate{0%{background-color:#5553}to{background-color:#0000}}.ticker-item.price-updated{animation:1s ease-out priceUpdate}
.market-table-container{background:#0d0d0df2;border:1px solid #333;border-radius:12px;margin:20px 0;overflow:hidden}.market-header{background:#1a1a1a;border-bottom:1px solid #333;justify-content:space-between;align-items:flex-start;padding:24px;display:flex}.market-title h2{color:#fff;letter-spacing:-.02em}.market-title p{color:#888;font-size:14px}.market-controls{align-items:center;gap:16px;display:flex}.search-container{position:relative}.search-input{color:#fff;background:#2a2a2a;border:1px solid #444;border-radius:8px;width:200px;padding:8px 12px;font-size:14px;transition:border-color .2s}.search-input:focus{border-color:#10b981;outline:none}.search-input::placeholder{color:#666}.filter-container{color:#888;align-items:center;gap:8px;display:flex}.filter-select{color:#fff;cursor:pointer;background:#2a2a2a;border:1px solid #444;border-radius:8px;padding:8px 12px;font-size:14px}.filter-select:focus{border-color:#10b981;outline:none}.market-table-wrapper{max-height:60vh;overflow:auto}.market-table{border-collapse:collapse;width:100%;font-size:14px}.market-table th{color:#ccc;text-align:left;z-index:10;background:#222;border-bottom:2px solid #333;padding:16px 12px;font-weight:600;position:sticky;top:0}.market-table th.sortable{cursor:pointer;transition:color .2s}.market-table th.sortable:hover{color:#10b981}.market-table td{vertical-align:middle;border-bottom:1px solid #2a2a2a;padding:12px}.market-row{cursor:pointer;transition:background-color .2s}.market-row:hover{background:#10b9810d}.market-row.special-row{background:linear-gradient(90deg,#ffd7000d 0%,#10b9810d 100%);border-left:3px solid gold}.rank-cell{color:#888;width:60px;font-weight:600;position:relative}.special-star{color:gold;position:absolute;top:-2px;left:-8px}.token-cell{min-width:200px}.token-info{flex-direction:column;gap:4px;display:flex}.token-symbol{color:#fff;font-size:16px;font-weight:700}.token-name{color:#888;font-size:12px}.category-badge{text-transform:uppercase;letter-spacing:.5px;border:1px solid;border-radius:4px;width:fit-content;padding:2px 6px;font-size:10px;font-weight:600}.price-cell{color:#fff;font-family:SF Mono,Monaco,Roboto Mono,monospace;font-size:16px;font-weight:600}.change-cell{align-items:center;gap:4px;font-family:SF Mono,Monaco,Roboto Mono,monospace;font-weight:600;display:flex}.volume-cell,.marketcap-cell,.liquidity-cell{color:#ccc;font-family:SF Mono,Monaco,Roboto Mono,monospace;font-weight:500}.holders-cell,.contracts-cell{color:#888;font-size:13px}.actions-cell{align-items:center;gap:8px;display:flex}.trade-button{color:#fff;cursor:pointer;background:linear-gradient(45deg,#10b981,#06b6d4);border:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s}.trade-button:hover{transform:scale(1.05);box-shadow:0 4px 12px #10b9814d}.info-button{color:#888;cursor:pointer;background:#333;border:1px solid #444;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.info-button:hover{color:#ccc;background:#444;border-color:#555}.market-stats{background:#1a1a1a;border-top:1px solid #333;justify-content:space-around;padding:20px 24px;display:flex}.stat-item{text-align:center}.stat-label{color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:12px;display:block}.stat-value{color:#10b981;font-family:SF Mono,Monaco,Roboto Mono,monospace;font-size:18px;font-weight:700;display:block}.market-table-wrapper::-webkit-scrollbar{width:6px;height:6px}.market-table-wrapper::-webkit-scrollbar-track{background:#1a1a1a}.market-table-wrapper::-webkit-scrollbar-thumb{background:#444;border-radius:3px}.market-table-wrapper::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width:1024px){.market-header{flex-direction:column;align-items:stretch;gap:16px}.market-controls{justify-content:space-between}.search-input{width:150px}}@media (max-width:768px){.market-table{font-size:12px}.market-table th,.market-table td{padding:8px 6px}.token-symbol,.price-cell{font-size:14px}.actions-cell{flex-direction:column;gap:4px}.trade-button{padding:4px 8px;font-size:11px}.market-stats{flex-direction:column;gap:12px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.market-row{animation:.3s ease-out fadeIn}.market-table-container{animation:.5s ease-out fadeIn}@keyframes priceFlash{0%{background-color:#10b98133}to{background-color:#0000}}.price-updated{animation:1s ease-out priceFlash}
