:root{--bg-primary:#0a0a0a;--bg-secondary:#111111;--bg-card:#161616;--bg-card-hover:#1c1c1c;--bg-input:#1a1a1a;--text-primary:#ffffff;--text-secondary:#888888;--text-muted:#555555;--accent-blue:#00A3FF;--accent-purple:#A855F7;--accent-orange:#F97316;--accent-green:#22C55E;--accent-red:#EF4444;--accent-yellow:#EAB308;--market-getgems:#00A3FF;--market-portals:#A855F7;--market-tonnel:#F97316;--risk-safe:#22C55E;--risk-moderate:#EAB308;--risk-risky:#EF4444;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--transition-fast:0.15s ease;--transition-normal:0.25s ease;--transition-slow:0.4s ease;--shadow-card:0 2px 8px rgba(0, 0, 0, 0.3);--shadow-hover:0 4px 16px rgba(0, 0, 0, 0.4);--safe-area-bottom:env(safe-area-inset-bottom, 0px)}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;min-height:100vh;overflow-x:hidden}[contenteditable=true],input,textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.app-container{display:flex;flex-direction:column;min-height:100vh;max-width:480px;margin:0 auto}.main-content{flex:1;padding:var(--spacing-md);padding-bottom:calc(80px + var(--safe-area-bottom));overflow-y:auto}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:var(--spacing-xl);padding:var(--spacing-md) var(--spacing-lg);padding-bottom:calc(var(--spacing-md) + var(--safe-area-bottom));background:linear-gradient(to top,var(--bg-primary) 80%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);max-width:480px;margin:0 auto;z-index:100}.nav-item{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);text-decoration:none;color:var(--text-secondary);transition:all var(--transition-normal);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md)}.nav-item:hover{color:var(--text-primary)}.nav-item.active{color:var(--accent-blue)}.nav-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast)}.nav-item:hover .nav-icon{transform:scale(1.1)}.nav-item.active .nav-icon{transform:scale(1.15)}.nav-icon svg{width:24px;height:24px}.nav-item span{font-size:12px;font-weight:500}.nav-item.active .stats-icon{color:var(--accent-blue)}.nav-item.active .trading-icon{color:var(--accent-green)}.nav-item.active .profile-icon{color:var(--accent-purple)}.page-header{text-align:center;padding:var(--spacing-lg) 0;padding-top:calc(var(--spacing-xl) + 10px)}.app-title{font-size:24px;font-weight:700;letter-spacing:-.5px;background:linear-gradient(135deg,var(--accent-blue),var(--accent-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-subtitle{color:var(--text-secondary);font-size:14px;margin-top:var(--spacing-xs)}.credits{color:var(--text-muted);font-size:12px;margin-top:var(--spacing-sm)}.credits a{color:var(--accent-blue);text-decoration:none;transition:color var(--transition-fast)}.credits a:hover{color:var(--accent-purple)}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.stat-card{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-md);text-align:center;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.stat-card.safe .stat-value{color:var(--risk-safe)}.stat-value{font-size:20px;font-weight:700;color:var(--text-primary)}.stat-label{font-size:11px;color:var(--text-secondary);margin-top:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px}.filter-section{margin-bottom:var(--spacing-lg)}.budget-input-wrapper{margin-bottom:var(--spacing-md)}.input-label{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.budget-input-container{position:relative;display:flex;align-items:center}.budget-input{width:100%;background:var(--bg-input);border:1px solid transparent;border-radius:var(--radius-md);padding:var(--spacing-md);padding-right:60px;font-size:18px;font-weight:600;color:var(--text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);-moz-appearance:textfield}.budget-input::-webkit-inner-spin-button,.budget-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.budget-input:focus{outline:0;border-color:var(--accent-blue);box-shadow:0 0 0 3px rgba(0,163,255,.15)}.budget-input::placeholder{color:var(--text-muted);font-weight:400;font-size:14px}.input-suffix{position:absolute;right:var(--spacing-md);color:var(--text-secondary);font-size:14px;font-weight:500}.budget-presets{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.preset-btn{flex:1;min-width:70px;background:var(--bg-card);border:none;border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.preset-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);transform:translateY(-1px)}.preset-btn.active{background:var(--accent-blue);color:#fff}.filters-row{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.filter-group:first-child{flex:1 1 100%}.filter-group:nth-child(2){flex:1}.filter-group:nth-child(3){flex:0 0 auto}.filter-label{font-size:13px;color:var(--text-secondary)}.filter-pills{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.pill{background:var(--bg-card);border:none;border-radius:var(--radius-full);padding:var(--spacing-sm) var(--spacing-md);font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.pill:hover{background:var(--bg-card-hover);color:var(--text-primary)}.pill.active{background:var(--text-primary);color:var(--bg-primary)}.pill.safe.active{background:var(--risk-safe);color:#fff}.pill.moderate.active{background:var(--risk-moderate);color:var(--bg-primary)}.pill.risky.active{background:var(--risk-risky);color:#fff}.sort-dropdown{position:relative;width:100%}.sort-btn{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--bg-card);border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:14px;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.sort-btn:hover{background:var(--bg-card-hover)}.sort-arrow{width:16px;height:16px;transition:transform var(--transition-fast)}.sort-dropdown.open .sort-arrow{transform:rotate(180deg)}.sort-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-hover);opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-fast);z-index:50;overflow:hidden}.sort-dropdown.open .sort-menu{opacity:1;visibility:visible;transform:translateY(0)}.sort-option{display:block;width:100%;padding:var(--spacing-sm) var(--spacing-md);background:0 0;border:none;text-align:left;font-size:14px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.sort-option:hover{background:var(--bg-card-hover);color:var(--text-primary)}.sort-option.active{color:var(--accent-blue);background:rgba(0,163,255,.1)}.collection-btn{display:flex;align-items:center;gap:var(--spacing-sm);background:var(--bg-card);border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.collection-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.collection-btn svg{width:18px;height:18px}.results-section{margin-bottom:var(--spacing-xl)}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.results-title{font-size:18px;font-weight:600}.results-count{font-size:13px;color:var(--text-secondary)}.opportunities-grid{display:flex;flex-direction:column;gap:12px}.loading-skeleton{display:flex;flex-direction:column;gap:var(--spacing-md)}.skeleton-card{height:180px;background:linear-gradient(90deg,var(--bg-card) 25%,var(--bg-card-hover) 50%,var(--bg-card) 75%);background-size:200% 100%;border-radius:var(--radius-lg);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.opportunity-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--spacing-md);transition:transform var(--transition-fast),box-shadow var(--transition-fast);animation:fadeIn var(--transition-normal);border:1px solid rgba(255,255,255,.04);border-left:3px solid var(--accent-green)}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.opportunity-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover);border-color:rgba(255,255,255,.08);border-left-color:var(--accent-green)}.card-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.gift-image-wrapper{width:48px;height:48px;border-radius:var(--radius-md);background:var(--bg-input);overflow:hidden;flex-shrink:0}.gift-image{width:100%;height:100%;object-fit:cover}.gift-info{flex:1;min-width:0}.gift-name{font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.model-name{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.risk-badge{padding:2px 8px;border-radius:var(--radius-full);font-size:10px;font-weight:500;flex-shrink:0}.risk-badge.safe{background:rgba(34,197,94,.1);color:rgba(34,197,94,.8)}.risk-badge.moderate{background:rgba(234,179,8,.1);color:rgba(234,179,8,.8)}.risk-badge.risky{background:rgba(239,68,68,.1);color:rgba(239,68,68,.8)}.trade-flow{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:rgba(255,255,255,.03);border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.04)}.market-block{flex:1;display:flex;flex-direction:column;gap:2px}.market-block.sell{text-align:right}.market-label{font-size:10px;color:var(--text-muted);letter-spacing:.3px}.market-name{font-size:13px;font-weight:500;color:var(--text-secondary)}.market-price{font-size:15px;font-weight:700;color:var(--text-primary)}.flow-arrow{width:24px;height:24px;color:rgba(255,255,255,.3);flex-shrink:0}.flow-arrow svg{width:100%;height:100%}.card-footer{display:flex;justify-content:space-between;gap:var(--spacing-sm)}.card-footer>div{display:flex;flex-direction:column;gap:2px}.profit-label,.roi-label,.supply-label{font-size:10px;color:var(--text-muted);letter-spacing:.3px}.profit-value{font-size:16px;font-weight:700;color:var(--accent-green)}.roi-value{font-size:16px;font-weight:700;color:var(--accent-blue)}.supply-value{font-size:14px;font-weight:600;color:var(--text-secondary)}.supply-value.low{color:var(--risk-risky)}.supply-value.medium{color:var(--risk-moderate)}.load-more-btn{width:100%;background:var(--bg-card);border:none;border-radius:var(--radius-md);padding:var(--spacing-md);font-size:14px;font-weight:600;color:var(--text-secondary);cursor:pointer;margin-top:var(--spacing-md);transition:all var(--transition-fast)}.load-more-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.profile-page{padding-top:var(--spacing-md)}.page-title{font-size:28px;font-weight:700;text-align:center}.profile-header{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-lg);background:linear-gradient(180deg,var(--bg-card) 0,transparent 100%);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.profile-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--accent-blue),var(--accent-purple));display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-md);overflow:hidden;box-shadow:0 4px 20px rgba(0,163,255,.3)}.profile-avatar svg{width:40px;height:40px;color:#fff}.profile-avatar .avatar-img{width:100%;height:100%;object-fit:cover}.profile-avatar .avatar-initials{font-size:28px;font-weight:700;color:#fff}.profile-name{font-size:22px;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.profile-username{font-size:14px;color:var(--text-secondary);margin-bottom:var(--spacing-md)}.profile-stats{display:flex;gap:var(--spacing-xl)}.profile-stat{display:flex;flex-direction:column;align-items:center}.profile-stat .stat-value{font-size:20px;font-weight:700;color:var(--text-primary)}.profile-stat .stat-label{font-size:12px;color:var(--text-secondary);margin-top:2px}.profile-section{margin-bottom:var(--spacing-lg)}.profile-section h2,.section-title{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-md)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.section-header h2{margin-bottom:0}.refresh-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.refresh-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.refresh-btn.spinning svg{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.gifts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.gift-card{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);animation:fadeIn var(--transition-normal) both}.gift-card:hover{background:var(--bg-card-hover);transform:translateY(-2px)}.gift-card-image{width:60px;height:60px;border-radius:var(--radius-sm);object-fit:contain;margin-bottom:var(--spacing-sm)}.gift-card-title{font-size:11px;font-weight:500;color:var(--text-primary);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.gift-card-model{font-size:10px;color:var(--text-secondary);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.gift-card-price{font-size:10px;font-weight:600;color:var(--accent-green);margin-top:2px}.empty-gifts{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}.empty-gifts svg{color:var(--text-muted);margin-bottom:var(--spacing-md)}.empty-gifts p{font-size:14px;max-width:240px}.retry-btn{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);background:var(--accent-blue);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.retry-btn:hover{background:#0090e0}.loading-placeholder{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xl)}.spinner{width:32px;height:32px;border:3px solid var(--bg-card-hover);border-top-color:var(--accent-blue);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.loading-placeholder p{font-size:14px;color:var(--text-secondary)}.menu-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.menu-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition-fast)}.menu-item:hover{background:var(--bg-card-hover);transform:translateX(4px)}.menu-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);flex-shrink:0}.menu-icon svg{width:22px;height:22px;color:#fff}.menu-content{flex:1;min-width:0}.menu-title{display:block;font-size:15px;font-weight:600;color:var(--text-primary)}.menu-subtitle{display:block;font-size:12px;color:var(--text-secondary);margin-top:2px}.menu-arrow{width:20px;height:20px;color:var(--text-muted);flex-shrink:0}.info-card{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-md)}.info-card p{font-size:13px;color:var(--text-secondary);line-height:1.6}.info-credits{margin-top:var(--spacing-sm);font-size:12px!important;color:var(--text-muted)!important}.info-credits a{color:var(--accent-blue);text-decoration:none}.info-credits a:hover{text-decoration:underline}.info-card.warning{background:rgba(249,115,22,.1);border:1px solid rgba(249,115,22,.3)}.info-card.warning p:first-child{color:var(--accent-orange);font-size:12px}.gift-detail{display:flex;flex-direction:column;align-items:center;text-align:center}.gift-detail-image{width:120px;height:120px;border-radius:var(--radius-lg);object-fit:contain;background:var(--bg-card);margin-bottom:var(--spacing-md)}.gift-detail-title{font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.gift-detail-model{font-size:14px;color:var(--accent-blue);margin-bottom:var(--spacing-xs)}.gift-detail-backdrop{font-size:13px;color:var(--text-secondary);margin-bottom:var(--spacing-md)}.gift-detail-info{width:100%;background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.info-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--bg-input)}.info-row:last-child{border-bottom:none}.info-row span:first-child{color:var(--text-secondary);font-size:13px}.info-row span:last-child{color:var(--text-primary);font-size:13px;font-weight:500}.gift-link-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-md);background:var(--accent-blue);border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:600;text-decoration:none;transition:all var(--transition-fast)}.gift-link-btn:hover{background:#0090e0;transform:translateY(-2px)}.market-comparison{width:100%;margin:var(--spacing-md) 0}.market-comparison-title{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-sm);text-align:left}.market-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.market-comparison-item{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-md);text-align:center}.market-comparison-item.best-sell{border:1px solid var(--accent-green);background:rgba(34,197,94,.05)}.market-comparison-item.best-buy{border:1px solid var(--accent-blue);background:rgba(0,163,255,.05)}.market-comparison-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs)}.market-comparison-name{font-size:14px;font-weight:600;margin-bottom:var(--spacing-xs)}.market-comparison-price{font-size:18px;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.market-comparison-btn{display:block;width:100%;padding:var(--spacing-sm);border-radius:var(--radius-sm);font-size:12px;font-weight:600;color:#fff;text-decoration:none;transition:all var(--transition-fast)}.market-comparison-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.market-all-prices{display:flex;flex-direction:column;gap:var(--spacing-xs)}.market-price-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-card);border-radius:var(--radius-sm);font-size:13px}.market-price-row.cheapest{background:rgba(0,163,255,.1)}.market-price-row.expensive{background:rgba(34,197,94,.1)}.market-price-name{font-weight:500}.market-price-value{font-weight:600;color:var(--text-primary)}.market-prices-loading{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);color:var(--text-secondary);font-size:13px}.error-page{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:60vh;padding:var(--spacing-xl)}.error-code{font-size:72px;font-weight:700;color:var(--text-muted);line-height:1}.error-title{font-size:20px;font-weight:600;margin-top:var(--spacing-md)}.error-text{font-size:14px;color:var(--text-secondary);margin-top:var(--spacing-sm)}.error-btn{display:inline-block;background:var(--accent-blue);color:#fff;text-decoration:none;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);font-weight:600;margin-top:var(--spacing-lg);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.error-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,163,255,.3)}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}.empty-state-icon{width:64px;height:64px;margin:0 auto var(--spacing-md);color:var(--text-muted)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);z-index:200;opacity:0;visibility:hidden;transition:all var(--transition-normal)}.modal-overlay.open{opacity:1;visibility:visible}.modal-content{background:var(--bg-secondary);border-radius:var(--radius-lg);max-width:420px;width:100%;max-height:85vh;overflow-y:auto;position:relative;transform:scale(.95) translateY(20px);transition:transform var(--transition-normal)}.modal-overlay.open .modal-content{transform:scale(1) translateY(0)}.modal-close{position:absolute;top:var(--spacing-md);right:var(--spacing-md);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:none;border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);z-index:10}.modal-close:hover{background:var(--bg-card-hover);color:var(--text-primary)}.modal-close svg{width:18px;height:18px}.modal-body{padding:var(--spacing-lg)}.detail-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.detail-image{width:72px;height:72px;border-radius:var(--radius-md);background:var(--bg-card);object-fit:contain;flex-shrink:0}.detail-title{font-size:18px;font-weight:700;margin-bottom:2px}.detail-model{font-size:13px;color:var(--text-secondary)}.detail-profit-banner{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:rgba(34,197,94,.06);border:1px solid rgba(34,197,94,.12);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.detail-profit-main{display:flex;align-items:baseline;gap:var(--spacing-sm)}.detail-profit-value{font-size:20px;font-weight:700;color:var(--accent-green)}.detail-profit-roi{font-size:14px;font-weight:600;color:var(--accent-blue)}.detail-risk-badge{padding:3px 10px;border-radius:var(--radius-full);font-size:10px;font-weight:500;letter-spacing:0}.detail-risk-badge.safe{background:rgba(34,197,94,.1);color:rgba(34,197,94,.8)}.detail-risk-badge.moderate{background:rgba(234,179,8,.1);color:rgba(234,179,8,.8)}.detail-risk-badge.risky{background:rgba(239,68,68,.1);color:rgba(239,68,68,.8)}.detail-trade-card{display:flex;align-items:center;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.detail-trade-side{flex:1;display:flex;flex-direction:column;gap:2px}.detail-trade-side.right{text-align:right}.detail-trade-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.detail-trade-market{font-size:14px;font-weight:500;color:var(--text-secondary)}.detail-trade-price{font-size:17px;font-weight:700;color:var(--text-primary)}.detail-trade-arrow{padding:0 var(--spacing-sm);color:rgba(255,255,255,.3);display:flex;align-items:center}.detail-info-list{background:var(--bg-card);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);overflow:hidden}.detail-info-row{display:flex;justify-content:space-between;align-items:center;padding:10px var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.04)}.detail-info-row:last-child{border-bottom:none}.detail-info-row span:first-child{font-size:13px;color:var(--text-secondary)}.detail-info-row span:last-child{font-size:13px;font-weight:600;color:var(--text-primary)}.detail-chart-section{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-md)}.detail-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.detail-chart-title{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.detail-chart-periods{display:flex;gap:2px;background:var(--bg-input);border-radius:6px;padding:2px}.detail-chart-periods button{background:0 0;border:none;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:500;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.detail-chart-periods button:hover{color:var(--text-primary)}.detail-chart-periods button.active{background:var(--text-primary);color:var(--bg-primary)}.detail-chart-box{position:relative;height:100px;cursor:crosshair;overflow:hidden;border-radius:6px}.detail-chart-box svg{width:100%;height:100%;display:block}.detail-chart-loading{display:flex;align-items:center;justify-content:center;height:100%;font-size:11px;color:var(--text-muted)}.detail-chart-meta{display:flex;justify-content:space-between;margin-top:6px;font-size:12px;font-weight:600;color:var(--text-secondary)}.detail-chart-tooltip{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;opacity:0;transition:opacity .1s}.detail-chart-tooltip.visible{opacity:1}.detail-chart-tt-line{position:absolute;top:0;bottom:0;width:1px;background:rgba(255,255,255,.2)}.detail-chart-tt-dot{position:absolute;width:7px;height:7px;border-radius:50%;border:1.5px solid #fff;transform:translate(-50%,-50%)}.detail-chart-tt-label{position:absolute;transform:translateX(-50%);background:rgba(20,20,20,.95);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:3px 7px;font-size:11px;font-weight:600;color:#fff;white-space:nowrap;top:-6px}.chart-range{position:absolute;right:8px;top:4px;bottom:4px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none;z-index:1}.chart-range span{font-size:9px;color:rgba(255,255,255,.25);font-weight:500;text-align:right;font-variant-numeric:tabular-nums}.collections-modal-content{max-width:480px;max-height:80vh}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);padding-bottom:0}.modal-header h2{font-size:20px;font-weight:700}.modal-header .modal-close{position:static}.collections-search{padding:var(--spacing-md) var(--spacing-lg)}.collections-search input{width:100%;background:var(--bg-card);border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:14px;color:var(--text-primary)}.collections-search input:focus{outline:0;box-shadow:0 0 0 2px var(--accent-blue)}.collections-search input::placeholder{color:var(--text-muted)}.collections-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);padding:0 var(--spacing-lg) var(--spacing-lg);max-height:50vh;overflow-y:auto}.collection-item{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:2px solid transparent}.collection-item:hover{background:var(--bg-card-hover);transform:translateY(-2px)}.collection-item.selected{border-color:var(--accent-blue);background:rgba(0,163,255,.1)}.collection-item img{width:48px;height:48px;border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);object-fit:contain}.collection-item-name{font-size:12px;font-weight:500;text-align:center;color:var(--text-primary);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.collection-item-floor{font-size:11px;color:var(--text-muted);font-weight:500}.collections-actions{display:flex;align-items:center;gap:var(--spacing-sm);padding:0 var(--spacing-lg) var(--spacing-md)}#selected-count{flex:1;font-size:13px;color:var(--text-secondary)}.reset-collections-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-card);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.reset-collections-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.apply-collections-btn{padding:var(--spacing-sm) var(--spacing-lg);background:var(--accent-blue);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:600;color:#fff;cursor:pointer;transition:all var(--transition-fast)}.apply-collections-btn:hover{background:#0090e0;transform:translateY(-1px)}.detail-actions{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-md);font-size:14px;font-weight:600;color:var(--text-primary);text-decoration:none;transition:all var(--transition-fast);cursor:pointer;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}.action-btn:hover{transform:translateY(-1px);filter:brightness(1.2)}.action-btn svg{flex-shrink:0}.buy-btn{background:rgba(255,255,255,.06)}.sell-btn{background:rgba(255,255,255,.06)}.detail-warning{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:rgba(255,255,255,.04);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:12px;color:var(--text-secondary)}.detail-warning svg{flex-shrink:0}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.stats-page{padding-top:var(--spacing-md)}.stats-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-xs)}.stats-tab{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:0 0;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.stats-tab:hover{color:var(--text-primary)}.stats-tab.active{background:var(--accent-blue);color:#fff}.stats-content{display:none}.stats-content.active{display:block;animation:fadeIn var(--transition-normal)}.rate-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:linear-gradient(135deg,var(--accent-blue),var(--accent-purple));border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.rate-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.2);border-radius:var(--radius-md)}.rate-icon svg{width:24px;height:24px;color:#fff}.rate-info{display:flex;flex-direction:column}.rate-label{font-size:12px;color:rgba(255,255,255,.8)}.rate-value{font-size:24px;font-weight:700;color:#fff}.overview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.overview-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);transition:transform var(--transition-fast)}.overview-card:hover{transform:translateY(-2px)}.overview-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);flex-shrink:0}.overview-icon svg{width:22px;height:22px;color:#fff}.overview-data{display:flex;flex-direction:column;min-width:0}.overview-value{font-size:18px;font-weight:700;color:var(--text-primary)}.overview-label{font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-section{margin-bottom:var(--spacing-lg)}.stats-section .section-title{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.5px}.activity-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.activity-card{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);text-align:center}.activity-label{font-size:10px;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.activity-value{font-size:16px;font-weight:700;color:var(--accent-green)}.cap-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.cap-card{padding:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);border-left:3px solid var(--text-muted)}.cap-card.telegram{border-left-color:#08c}.cap-card.getgems{border-left-color:var(--market-getgems)}.cap-card.portals{border-left-color:var(--market-portals)}.cap-card.tonnel{border-left-color:var(--market-tonnel)}.cap-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.cap-name{font-size:12px;font-weight:600;color:var(--text-secondary)}.cap-badge{font-size:9px;padding:2px 6px;background:rgba(0,136,204,.2);color:#08c;border-radius:var(--radius-full);font-weight:600}.cap-value{display:block;font-size:15px;font-weight:700;color:var(--text-primary)}.cap-usd{display:block;font-size:11px;color:var(--text-muted)}.total-cap-card{padding:var(--spacing-md);background:linear-gradient(135deg,var(--bg-card) 0,rgba(168,85,247,.1) 100%);border-radius:var(--radius-md);text-align:center}.total-cap-label{display:block;font-size:11px;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.total-cap-value{display:block;font-size:24px;font-weight:700;color:var(--text-primary)}.total-cap-usd{display:block;font-size:14px;color:var(--accent-purple);font-weight:500}.listings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.listing-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md)}.listing-market{font-size:13px;color:var(--text-secondary)}.listing-count{font-size:14px;font-weight:600;color:var(--text-primary)}.period-selector{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-xs)}.period-btn{flex:1;padding:var(--spacing-sm);background:0 0;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.period-btn:hover{color:var(--text-primary)}.period-btn.active{background:var(--text-primary);color:var(--bg-primary)}.changes-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.change-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);animation:fadeIn var(--transition-normal) both}.change-rank{width:24px;font-size:12px;font-weight:600;color:var(--text-muted);text-align:center}.change-image{width:40px;height:40px;border-radius:var(--radius-sm);object-fit:contain;background:var(--bg-input)}.change-info{flex:1;min-width:0;display:flex;flex-direction:column}.change-title{font-size:14px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.change-floor{font-size:12px;color:var(--text-secondary)}.change-percent{font-size:14px;font-weight:700;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);min-width:60px;text-align:center}.change-percent.positive{background:rgba(34,197,94,.15);color:var(--accent-green)}.change-percent.negative{background:rgba(239,68,68,.15);color:var(--accent-red)}.change-percent.neutral{background:var(--bg-input);color:var(--text-muted)}.leaderboard-types{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);padding:var(--spacing-xs)}.lb-type-btn{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:0 0;border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.lb-type-btn:hover{color:var(--text-primary)}.lb-type-btn.active{background:var(--accent-purple);color:#fff}.leaderboard-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.lb-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-card);border-radius:var(--radius-md);animation:fadeIn var(--transition-normal) both}.lb-rank{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--text-muted);background:var(--bg-input);border-radius:var(--radius-full)}.lb-rank.gold{background:linear-gradient(135deg,gold,orange);color:#000}.lb-rank.silver{background:linear-gradient(135deg,silver,#a8a8a8);color:#000}.lb-rank.bronze{background:linear-gradient(135deg,#cd7f32,#b8860b);color:#fff}.lb-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--accent-blue),var(--accent-purple));background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#fff}.lb-info{flex:1;min-width:0;display:flex;flex-direction:column}.lb-name{font-size:14px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-username{font-size:12px;color:var(--text-secondary)}.lb-count{display:flex;flex-direction:column;align-items:flex-end}.lb-count-value{font-size:16px;font-weight:700;color:var(--accent-purple)}.lb-count-label{font-size:10px;color:var(--text-muted)}.empty-text{text-align:center;color:var(--text-secondary);padding:var(--spacing-xl);font-size:14px}@media (min-width:480px){.main-content{padding:var(--spacing-lg);padding-bottom:calc(90px + var(--safe-area-bottom))}.filters-row{flex-direction:row;align-items:flex-end}.filter-group{flex:1}}