:root{--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-header: "Outfit", "Inter", sans-serif;--bg-main: #0b0c0e;--bg-panel: #131519;--bg-card: #171a1f;--bg-hover: #1e2229;--bg-input: #1a1d24;--border-color: #23272f;--border-focus: #384252;--text-primary: #ffffff;--text-secondary: #8e94a5;--text-muted: #5b6171;--accent-green: #00ffcc;--accent-green-hover: #33ffd6;--accent-orange: #ff9f43;--accent-blue: #3867d6;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .5);--shadow-md: 0 4px 20px rgba(0, 0, 0, .7)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-primary);font-family:var(--font-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.app-container{max-width:1200px;margin:0 auto;padding:24px 16px;min-height:100vh;display:flex;flex-direction:column;gap:20px}.tg-dot{width:8px;height:8px;border-radius:50%;display:inline-block;box-shadow:0 0 8px currentColor}.tg-dot.active{color:var(--accent-green);background-color:var(--accent-green)}.tg-dot.warning{color:var(--accent-orange);background-color:var(--accent-orange)}.wallet-manager{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:12px;padding:20px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:16px}.wallet-manager-title{font-family:var(--font-header);font-size:1.1rem;font-weight:700;color:var(--text-primary)}.wallet-manager-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}.wallet-list-section,.wallet-add-section{display:flex;flex-direction:column;gap:10px}.section-subtitle{font-family:var(--font-header);font-size:.82rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.wallet-cards-container{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding-right:4px}.wallet-card-item{display:flex;justify-content:space-between;align-items:center;background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .15s ease}.wallet-card-item:hover{background:var(--bg-hover);border-color:var(--border-focus)}.wallet-card-item.active{background:#00ffcc0a;border-color:var(--accent-green)}.wallet-card-left{display:flex;align-items:center;gap:12px}.wallet-card-address{font-family:var(--font-header);font-weight:600;font-size:.92rem;color:var(--text-primary)}.wallet-card-tag{background:#8e94a51a;color:var(--text-secondary);font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:20px;display:inline-flex;align-items:center}.wallet-card-item.active .wallet-card-tag{background:#00ffcc1a;color:var(--accent-green)}.wallet-card-delete{background:transparent;border:none;cursor:pointer;font-size:1rem;opacity:.5;transition:opacity .15s ease,transform .15s ease;display:flex;align-items:center;justify-content:center;padding:4px}.wallet-card-delete:hover{opacity:1;transform:scale(1.1)}.no-wallets-alert{background:var(--bg-card);border:1px dashed var(--border-color);border-radius:8px;padding:24px;text-align:center;color:var(--text-secondary);font-size:.88rem}.wallet-add-form{display:flex;flex-direction:column;gap:10px}.form-group{width:100%}.wallet-form-input{width:100%;background:var(--bg-input);border:1px solid var(--border-color);border-radius:8px;padding:10px 14px;color:var(--text-primary);font-family:var(--font-primary);font-size:.88rem;transition:all .2s ease}.wallet-form-input:focus{outline:none;border-color:var(--border-focus)}.wallet-submit-btn{background:var(--text-primary);color:var(--bg-main);border:none;border-radius:8px;padding:10px 16px;font-family:var(--font-header);font-weight:700;font-size:.88rem;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:6px}.wallet-submit-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.wallet-submit-btn:disabled{opacity:.4;cursor:not-allowed}.meteora-header-card{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:12px 12px 0 0;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-sm);border-bottom:none}.brand-wrapper{display:flex;align-items:center;gap:10px}.brand-icon{font-size:1.5rem}.brand-name{font-family:var(--font-header);font-size:1.4rem;font-weight:700;letter-spacing:-.02em}.portfolio-total-usd{font-family:var(--font-header);font-size:1.4rem;font-weight:700}.meteora-sub-banner{background:var(--bg-card);border:1px solid var(--border-color);border-top:none;padding:14px 24px;display:flex;justify-content:space-between;align-items:center;font-size:.88rem;color:var(--text-secondary)}.sub-left{display:flex;align-items:center;gap:12px;font-weight:600}.badge-dlmm{background:#00ffcc1a;color:var(--accent-green);font-size:.72rem;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase}.sub-right{display:flex;gap:20px;align-items:center}.metric-item{display:flex;gap:6px}.metric-label{color:var(--text-muted)}.metric-value{color:var(--text-primary);font-weight:600}.metric-value.green{color:var(--accent-green)}.dashboard-content{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:0 0 12px 12px;overflow:hidden;box-shadow:var(--shadow-md)}.table-responsive{width:100%;overflow-x:auto}.positions-table{width:100%;border-collapse:collapse;text-align:left}.positions-table th{padding:16px 24px;font-family:var(--font-header);font-size:.8rem;font-weight:600;text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.positions-table td{padding:18px 24px;vertical-align:top;border-bottom:1px solid rgba(35,39,47,.5);font-size:.95rem}.positions-table tbody tr{transition:background-color .15s ease}.positions-table tbody tr:hover{background-color:var(--bg-hover)}.col-pool{min-width:200px}.col-liquidity,.col-fees{min-width:250px;text-align:right}.col-apy{width:150px;text-align:right}.positions-table th.col-liquidity,.positions-table th.col-fees,.positions-table th.col-apy{text-align:right}.pool-cell{display:flex;align-items:center;gap:10px}.pool-icons{display:flex;align-items:center;gap:6px}.pool-name{font-family:var(--font-header);font-weight:600;font-size:1.05rem}.icon-link{color:var(--text-muted);text-decoration:none;font-size:.85rem;transition:color .15s ease}.icon-link:hover{color:var(--text-primary)}.icon-warning{color:var(--accent-orange);font-size:.95rem;cursor:help}.value-stack{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.stack-total{font-weight:700;font-size:1.05rem;color:var(--text-primary)}.stack-sub{font-size:.82rem;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.stack-token-dot{width:6px;height:6px;border-radius:50%}.dot-sol{background-color:#9945ff}.dot-usdc{background-color:#2775ca}.dot-generic{background-color:var(--text-muted)}.apy-value{color:var(--accent-green);font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#00ffcc4d;cursor:pointer;transition:color .15s ease}.apy-value:hover{color:var(--accent-green-hover)}.loading-state,.error-state,.empty-state{padding:60px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-green);border-radius:50%;animation:spin 1s linear infinite}.status-icon{font-size:2.5rem}.status-msg{font-size:1.05rem;color:var(--text-secondary);max-width:400px;line-height:1.5}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:650px){.app-container{padding:12px 6px;gap:14px}.wallet-manager-grid{grid-template-columns:1fr;gap:16px}.wallet-cards-container{max-height:150px}.meteora-header-card{padding:14px 16px;border-radius:10px 10px 0 0}.brand-name,.portfolio-total-usd{font-size:1.2rem}.meteora-sub-banner{padding:12px 16px;flex-direction:column;align-items:flex-start;gap:10px}.sub-right{width:100%;justify-content:space-between;gap:8px;font-size:.8rem}.table-responsive{width:100%;overflow-x:hidden}.positions-table thead{display:none}.positions-table,.positions-table tbody,.positions-table tr,.positions-table td{display:block}.positions-table,.positions-table tbody{display:flex;flex-direction:column;width:100%!important}.col-pool,.col-liquidity,.col-fees,.col-apy{min-width:0!important;width:auto!important}.positions-table tbody tr{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;margin:8px 12px;padding:16px;display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"pool apy" "liq liq" "fees fees";gap:14px;box-shadow:var(--shadow-sm);transition:background-color .15s ease}.positions-table tbody tr:hover{background-color:var(--bg-hover)}.positions-table td{padding:0!important;border:none!important;vertical-align:middle}.positions-table td:nth-child(1){grid-area:pool;display:flex;align-items:center;justify-content:flex-start}.positions-table td:nth-child(2){grid-area:liq;text-align:left;display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,.05)!important;padding-top:12px!important}.positions-table td:nth-child(3){grid-area:fees;text-align:left;display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,.05)!important;padding-top:12px!important}.positions-table td:nth-child(4){grid-area:apy;display:flex;align-items:center;justify-content:flex-end}.positions-table td:nth-child(2):before{content:"Your Liquidity";display:block;font-size:.65rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;margin-bottom:6px;letter-spacing:.05em}.positions-table td:nth-child(3):before{content:"Claimable Fees";display:block;font-size:.65rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;margin-bottom:6px;letter-spacing:.05em}.positions-table td:nth-child(2) .value-stack,.positions-table td:nth-child(3) .value-stack{align-items:flex-start}.stack-total{font-size:.95rem}.stack-sub{font-size:.76rem}}.app-nav-bar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:600px;background:#131519d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border-color);display:flex;justify-content:space-around;padding:10px 0 calc(10px + env(safe-area-inset-bottom,0px));z-index:1000;box-shadow:0 -4px 20px #00000080}.nav-item{background:transparent;border:none;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-muted);cursor:pointer;transition:all .15s ease;width:45%}.nav-item:hover{color:var(--text-secondary)}.nav-item.active{color:var(--accent-green)}.nav-icon{font-size:1.25rem}.nav-label{font-family:var(--font-header);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.app-container{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}
