:root{--color-black: #000000;--color-white: #FFFFFF;--color-accent: #FFA500;--color-accent-dark: #FF8C00;--color-positive: #32CD32;--color-negative: #FF4500;--bg-primary: var(--color-black);--bg-secondary: rgba(255, 165, 0, .1);--text-primary: var(--color-white);--text-secondary: rgba(255, 255, 255, .8);--text-muted: rgba(255, 255, 255, .6);--border-color: rgba(255, 165, 0, .3);--card-bg: rgba(255, 165, 0, .05);--card-shadow: rgba(255, 165, 0, .2);--gradient-start: var(--color-accent);--gradient-end: var(--color-accent-dark);--color-orange: var(--color-accent);--color-dark-orange: var(--color-accent-dark);--accent-shadow-light: rgba(255, 165, 0, .15);--accent-shadow-med: rgba(255, 165, 0, .3);--accent-shadow-heavy: rgba(255, 165, 0, .4)}:root.theme-eth{--color-accent: #627EEA;--color-accent-dark: #4A6AD8;--bg-secondary: rgba(98, 126, 234, .1);--border-color: rgba(98, 126, 234, .3);--card-bg: rgba(98, 126, 234, .05);--card-shadow: rgba(98, 126, 234, .2);--accent-shadow-light: rgba(98, 126, 234, .15);--accent-shadow-med: rgba(98, 126, 234, .3);--accent-shadow-heavy: rgba(98, 126, 234, .4)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;background:var(--bg-primary);min-height:100vh;color:var(--text-primary);transition:background .15s ease,color .15s ease;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wrapper{display:flex;flex-direction:column;min-height:100vh}main{flex:1}.container{max-width:1200px;margin:0 auto;padding:0 20px}.main-header{background:var(--bg-primary);padding:21px 0 20px;position:sticky;top:0;z-index:1000;border-bottom:1px solid transparent;transition:border-bottom .3s ease}.main-header.scrolled{border-bottom:1px solid var(--border-color)}.header-content{display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center;gap:10px}.logo{font-size:1.8rem;font-weight:800;text-decoration:none;background:linear-gradient(90deg,var(--gradient-start),var(--gradient-end));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:center}.header-logo-img{height:15px;vertical-align:middle}.asset-toggle{display:flex;align-items:center;position:relative;width:56px;height:28px;touch-action:manipulation;background:linear-gradient(180deg,#0d0d0d,#1a1a1a);border-radius:14px;cursor:pointer;box-shadow:inset 0 2px 5px #000c,inset 0 -1px 2px #ffffff0a,0 1px 3px #0006,0 0 0 1px #ffffff1a;flex-shrink:0}.asset-toggle-thumb{position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:linear-gradient(180deg,#3a3a3a,#252525);box-shadow:0 2px 6px #0009,0 1px 2px #0006,inset 0 1px 1px #ffffff26;transition:left .15s cubic-bezier(.4,0,.2,1);z-index:2}.asset-toggle-thumb.eth{left:30px}.toggle-btn{position:absolute;top:0;width:50%;height:100%;background:transparent;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;line-height:0}.toggle-btn[data-asset=btc]{left:0}.toggle-btn[data-asset=eth]{right:0;left:auto}.toggle-logo{width:18px;height:18px;border-radius:50%;display:block;transition:filter .3s ease,opacity .3s ease,box-shadow .3s ease;filter:grayscale(100%) brightness(.8);opacity:.6;box-shadow:0 0 0 2px #ffffff1f}.toggle-btn.active[data-asset=btc] .toggle-logo{filter:none;opacity:1;animation:pulse-ring-btc 1.2s ease-in-out infinite}.toggle-btn.active[data-asset=eth] .toggle-logo{filter:none;opacity:1;animation:pulse-ring-eth 1.2s ease-in-out infinite}@keyframes pulse-ring-btc{0%,to{box-shadow:0 0 0 2.5px #c8780040}50%{box-shadow:0 0 0 2.5px #e68c00f2}}@keyframes pulse-ring-eth{0%,to{box-shadow:0 0 0 2.5px #465ac840}50%{box-shadow:0 0 0 2.5px #5069dcf2}}section{padding:10px 0 0}.stocks-section{background:var(--bg-primary);padding-top:0;padding-bottom:0}.dashboard-line{display:flex;flex-wrap:wrap;justify-content:space-around;align-items:center;background:transparent;padding:8px 0;margin-bottom:30px;overflow:hidden;position:relative}.scrolling-wrapper{display:flex;width:max-content;animation:scroll-left 278s linear infinite}.scrolling-wrapper:hover{animation-play-state:paused}.scrolling-item{display:flex;align-items:center;gap:3px;padding:6px 8px;flex-shrink:0;white-space:nowrap}.scrolling-item .metric-label{font-family:JetBrains Mono,monospace;font-size:.98rem;font-weight:500;color:var(--text-muted);display:flex;align-items:center;flex-direction:row;line-height:normal;letter-spacing:.05em}.scrolling-item .metric-value{font-family:JetBrains Mono,monospace;font-size:1.12rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;line-height:normal}.scrolling-item .metric-change{font-family:JetBrains Mono,monospace;font-size:.98rem;font-weight:500;display:flex;align-items:center;line-height:normal}.scrolling-item .metric-value-change{display:flex;align-items:center;gap:4px}.circular-logo{width:16px;height:16px;min-width:16px;min-height:16px;background-color:transparent;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;aspect-ratio:1 / 1}.circular-logo-img-inner{width:100%;height:100%;object-fit:contain;border-radius:50%;display:block}.metric-label{font-size:.85rem;font-weight:500;color:var(--text-secondary);white-space:nowrap}.metric-value-change{display:flex;align-items:center;gap:4px}.metric-value{font-size:.95rem;font-weight:700;color:var(--text-primary);white-space:nowrap}.metric-change{font-size:.85rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.metric-change.positive{color:#22c55e}.metric-change.negative{color:#ef4444}.metric-change.neutral{color:var(--text-muted)}@keyframes scroll-left{0%{transform:translate(0)}to{transform:translate(calc(-1 * var(--single-set-width, 100%)))}}@media(max-width:768px){.dashboard-line{padding:6px 0;margin-bottom:20px}.scrolling-item{padding:5px 7px;gap:3px}.circular-logo{width:18px;height:18px;min-width:18px;min-height:18px}.scrolling-item .metric-label{font-size:.9rem}.scrolling-item .metric-value{font-size:1rem}.scrolling-item .metric-change{font-size:.9rem}}@media(max-width:480px){.dashboard-line{padding:4px 0;margin-bottom:10px}.scrolling-item{padding:4px 6px;gap:3px}.circular-logo{width:15px;height:15px;min-width:15px;min-height:15px}.scrolling-item .metric-label,.scrolling-item .metric-value,.scrolling-item .metric-change{font-size:.85rem}}.stocks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px;margin-bottom:0}.category-header{grid-column:1 / -1;font-size:.8rem;font-weight:700;color:var(--color-orange);text-transform:uppercase;letter-spacing:.1em;padding:8px 0 4px;border-bottom:1px solid var(--accent-shadow-light)}.category-header.list-category{padding:12px 0 6px;margin-top:18px}.stock-list>.category-header.list-category:first-child{margin-top:0}.stock-card{background:var(--card-bg);border-radius:20px;padding:30px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);transition:transform .3s ease,box-shadow .3s ease,background .3s ease;display:flex;flex-direction:column}.stock-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px var(--card-shadow)}.stock-header{display:flex;align-items:center;gap:15px;margin-bottom:25px}.stock-logo{background:var(--bg-secondary);padding:0;border-radius:50%;width:60px;height:60px;min-width:60px;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;aspect-ratio:1 / 1}.stock-logo-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.stock-info{display:flex;flex-direction:column;gap:1px}.stock-name{font-size:1.1rem;color:var(--text-secondary);font-weight:600;line-height:1.1}.stock-ticker{font-size:1rem;color:var(--color-orange);font-weight:700;line-height:1.1}.stock-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;margin-left:auto}.btc-holdings{font-size:.9rem;font-weight:800;color:#f7931a}.eth-holdings{font-size:.9rem;font-weight:800;color:#627eea}.header-price-group{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.header-price-group .current-price{font-size:2.25rem;font-weight:700;line-height:1}.header-change-row{display:flex;align-items:center;gap:6px}.change-amount{font-size:.85rem;font-weight:600;color:var(--text-muted)}.change-amount.positive{color:var(--color-positive)}.change-amount.negative{color:var(--color-negative)}.change-amount.neutral{color:var(--text-muted)}.header-price-group .change-percent{font-size:.85rem;font-weight:700;padding:2px 6px;border-radius:4px}.market-status{display:flex;align-items:center;gap:6px;font-size:.6rem;font-weight:600;text-transform:uppercase}.market-status.open{background:transparent;color:var(--color-positive)}.market-status.closed{background:transparent;color:var(--text-muted)}.market-status.pre,.market-status.post{background:transparent;color:var(--color-orange)}.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.market-status.open .status-dot{animation:pulse-dot 1.5s infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.current-price{font-size:2.5rem;font-weight:700}.change-percent{font-size:1.1rem;font-weight:1000;padding:3px 10px;border-radius:6px;background:#ffffff0d}.change-percent.positive{color:#fff;background:#16a34a}.change-percent.negative{color:#fff;background:#dc2626}.change-percent.neutral{color:var(--text-muted);background:#ffffff0f}.stock-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;padding-top:10px;margin-top:auto}.metric{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#ffffff0f;border-radius:10px;transition:background .3s ease}.metric-label{color:var(--text-muted);font-size:.85rem;font-weight:500;display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}.metric-value{font-weight:700;font-size:.95rem;color:var(--text-primary)}.loading{animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes blink-update{0%,to{opacity:1}50%{opacity:.5}}.blink-effect{animation:blink-update .6s ease-out}.error-message{background:#ef444433;border:1px solid rgba(239,68,68,.5);border-radius:10px;padding:15px;text-align:center;color:var(--color-negative)}.page-tabs{display:flex;gap:0;position:relative;align-self:flex-end}.page-tabs-indicator{position:absolute;bottom:0;height:2.25px;border-radius:1px;background:var(--text-secondary);transition:none;will-change:left,width}.page-tab{background:transparent;border:none;color:var(--text-muted);font-size:.7rem;touch-action:manipulation;font-weight:600;letter-spacing:.06em;text-transform:uppercase;width:auto;padding:2px 10px 3px;cursor:pointer;position:relative;transition:color .15s ease;display:flex;align-items:center;justify-content:center;text-align:center}.page-tab:hover{color:var(--text-secondary)}.swipe-container{display:flex;align-items:flex-start;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;gap:60px}.swipe-container::-webkit-scrollbar{display:none}.swipe-page{flex:0 0 100%;width:100%;min-width:0;scroll-snap-align:start;padding-bottom:24px}.stock-list{display:flex;flex-direction:column}.stock-list-item{padding:20px 5px;border-bottom:1px solid var(--accent-shadow-light);background:transparent}.stock-list-item:last-child{border-bottom:none}.list-item-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.list-item-left{display:flex;align-items:center;gap:12px}.list-logo{width:42px;height:42px;min-width:42px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}.list-logo-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.list-info{display:flex;flex-direction:column;gap:2px}.list-name-row{display:flex;align-items:center;gap:8px}.list-stock-name{font-size:1rem;font-weight:600;color:var(--text-secondary)}.list-stock-ticker{font-size:.95rem;font-weight:700;color:var(--color-orange)}.list-btc-holdings{font-size:.9rem;font-weight:800;color:#f7931a}.list-eth-holdings{font-size:.9rem;font-weight:800;color:#627eea}.list-item-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.list-price{font-size:1.4rem;font-weight:700;color:var(--text-primary)}.list-change-row{display:flex;align-items:center;gap:6px}.list-change-amount{font-size:.8rem;font-weight:600;color:var(--text-muted)}.list-change-amount.positive{color:var(--color-positive)}.list-change-amount.negative{color:var(--color-negative)}.list-change-amount.neutral{color:var(--text-muted)}.list-change-percent{font-size:.8rem;font-weight:700;padding:2px 6px;border-radius:4px;background:#ffffff0d}.list-change-percent.positive{color:#fff;background:#16a34a}.list-change-percent.negative{color:#fff;background:#dc2626}.list-change-percent.neutral{color:var(--text-muted);background:#ffffff0d}.list-item-metrics{display:flex;gap:12px;padding-left:54px;align-items:center}.list-metric{display:flex;align-items:baseline;gap:4px}.list-metric-label{font-size:.75rem;font-weight:500;color:var(--text-muted)}.list-metric-value{font-size:.8rem;font-weight:700;color:var(--text-primary)}@media(max-width:768px){.page-tab{font-size:.65rem;padding:2px 8px 3px}.list-item-metrics{padding-left:54px;gap:10px}}@media(max-width:480px){.page-tab{font-size:.6rem;padding:2px 7px 3px}.stock-list-item{padding:16px 2px}.list-logo{width:36px;height:36px;min-width:36px}.list-stock-name{font-size:.9rem}.list-price{font-size:1.2rem}.list-item-metrics{padding-left:48px;gap:8px}.list-metric-label{font-size:.7rem}.list-metric-value{font-size:.75rem}}.main-footer{background:var(--bg-primary);position:sticky;bottom:0;z-index:2500;border-top:1px solid var(--border-color);padding:8px 0;padding-bottom:max(8px,env(safe-area-inset-bottom))}.footer-nav{display:flex;justify-content:space-around;align-items:center;max-width:500px;margin:0 auto}.footer-nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;color:var(--text-muted);font-size:.6rem;padding:4px 12px;transition:color .2s ease;-webkit-tap-highlight-color:transparent}.footer-nav-item.active{color:#fff;font-weight:700;text-shadow:0 0 8px rgba(255,255,255,.6)}.footer-nav-item.active .footer-icon{stroke:#fff}.footer-nav-item.active .home-door{fill:#ffffffd9}.footer-nav-item[data-nav=search].active{color:#4a9eff;text-shadow:0 0 8px currentColor}.footer-nav-item:hover{color:var(--text-primary)}.footer-nav-item.active:hover,.footer-nav-item[data-nav=search].active:hover{color:#fff}.footer-icon{width:22px;height:22px}.sub-text{font-size:.7em;opacity:.7;margin-top:2px}.search-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1999;background:#00000080;opacity:0;pointer-events:none;transition:opacity .3s ease}.search-backdrop.active{opacity:1;pointer-events:auto}.search-overlay{position:fixed;bottom:0;left:0;right:0;z-index:2000;background:var(--bg-primary);border-top:1px solid rgba(255,255,255,.18);border-radius:16px 16px 0 0;box-shadow:0 -8px 40px #0006;display:flex;flex-direction:column;align-items:center;max-height:70vh;overflow:hidden;transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);pointer-events:none}.search-overlay.active{transform:translateY(0);pointer-events:auto}.search-handle{width:36px;height:4px;border-radius:2px;background:#4a9eff;opacity:.5;margin:10px auto 0;flex-shrink:0}.search-input-area{width:100%;max-width:500px;padding:16px 20px;flex-shrink:0}.search-input{width:100%;padding:14px 18px;font-size:1rem;font-family:inherit;font-weight:600;color:var(--text-primary);background:#ffffff0a;border:1.5px solid rgba(255,255,255,.15);border-radius:14px;outline:none;transition:border-color .3s ease,box-shadow .3s ease}.search-input::placeholder{color:var(--text-muted);font-weight:500}.search-input:focus{border-color:#4a9eff;box-shadow:0 0 0 3px #4a9eff26,0 0 20px #4a9eff1a}.search-result{width:100%;max-width:500px;padding:0 20px;padding-bottom:max(20px,env(safe-area-inset-bottom));flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.search-result .stock-card{margin:0}.search-result .stock-card:hover{transform:none}.search-error{text-align:center;color:var(--color-negative);font-size:.9rem;font-weight:500;padding:20px 0}.search-loading{text-align:center;color:var(--text-muted);font-size:.9rem;font-weight:500;padding:20px 0;animation:pulse 1.5s infinite}.search-watchlist-btn{width:100%;padding:14px;margin-top:15px;border:none;border-radius:10px;background:var(--color-positive);color:#000;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .2s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent;position:relative;z-index:10}.search-watchlist-btn:hover,.search-watchlist-btn:active{opacity:.85}.search-watchlist-btn:active{transform:scale(.97)}.search-watchlist-btn.in-watchlist{background:transparent;border:1.5px solid var(--color-negative);color:var(--color-negative)}.search-watchlist-btn.in-watchlist:hover,.search-watchlist-btn.in-watchlist:active{background:var(--color-negative);color:#000}.watchlist-empty{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;gap:14px;min-height:calc(100vh - 160px)}.watchlist-empty-text{color:var(--text-muted);font-size:1.08rem;font-weight:400}.watchlist-empty-text .char,.watchlist-add-more-btn .char{display:inline-block;color:var(--text-muted);animation:char-type .375s ease-out forwards}@keyframes char-type{0%{color:var(--text-muted);text-shadow:none}50%{text-shadow:0 0 8px rgba(255,255,255,.4)}to{color:#fff;text-shadow:none}}.watchlist-add-btn{width:48px;height:48px;border-radius:50%;border:none;background:transparent;color:var(--text-muted);font-size:1.5rem;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;position:relative}.watchlist-add-btn .plus-char{opacity:0;animation:plus-finale 1.8s ease-out forwards;color:var(--text-muted)}@keyframes plus-finale{0%{opacity:0;transform:scale(.3)}12%{opacity:1;transform:scale(1.3);text-shadow:0 0 16px rgba(74,158,255,1),0 0 32px rgba(74,158,255,.5);color:#fff}32%{transform:scale(.88);text-shadow:0 0 8px rgba(74,158,255,.3)}50%{transform:scale(1.08);text-shadow:0 0 4px rgba(74,158,255,.15)}68%{transform:scale(.97);text-shadow:none}82%{transform:scale(1.02)}to{opacity:1;transform:scale(1);text-shadow:none;color:#fff}}.watchlist-add-btn svg{position:absolute;top:0;left:0;width:100%;height:100%}.watchlist-add-btn .dash-seg{fill:none;stroke-width:1.5;stroke-linecap:round;stroke-opacity:0;animation:dash-sweep .5s ease-out var(--sweep-delay, 0s) forwards,dash-flash .6s ease-out var(--flash-delay, 0s) forwards}@keyframes dash-sweep{0%{stroke-opacity:0;stroke:var(--color-accent);filter:drop-shadow(0 0 8px rgba(74,158,255,.9))}35%{stroke-opacity:1;stroke:var(--color-accent);filter:drop-shadow(0 0 8px rgba(74,158,255,.9))}to{stroke-opacity:1;stroke:#ffffff80;filter:none}}@keyframes dash-flash{0%{stroke:#ffffff80;filter:none}40%{stroke:var(--color-accent);filter:drop-shadow(0 0 10px rgba(74,158,255,1))}to{stroke:#ffffff80;filter:none}}.watchlist-add-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.search-suggestion-item{padding:14px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.08);transition:background .15s ease}.search-suggestion-item:last-child{border-bottom:none}.search-suggestion-item:hover,.search-suggestion-item:active{background:#ffffff0d}.suggestion-ticker{font-weight:700;font-size:.95rem;color:var(--text-primary);min-width:55px}.suggestion-ticker.ticker-btc{color:orange}.suggestion-ticker.ticker-eth{color:#627eea}.suggestion-name{color:var(--text-muted);font-size:.82rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.watchlist-add-more{grid-column:1 / -1;display:flex;justify-content:center;padding:14px 0 4px}.stocks-grid>.watchlist-add-more{margin-top:-16px}.watchlist-add-more-btn{padding:10px 28px;border:1.5px dashed var(--border-color);border-radius:12px;background:transparent;color:var(--text-muted);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.watchlist-add-more-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.stock-logo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;color:var(--color-accent);border-radius:50%}.wl-theme-btc{--color-accent: #FFA500;--color-accent-dark: #FF8C00;--border-color: rgba(255, 165, 0, .3);--card-bg: rgba(255, 165, 0, .05);--card-shadow: rgba(255, 165, 0, .2);--accent-shadow-light: rgba(255, 165, 0, .15);--accent-shadow-med: rgba(255, 165, 0, .3);--accent-shadow-heavy: rgba(255, 165, 0, .4);--color-orange: #FFA500}.wl-theme-eth{--color-accent: #627EEA;--color-accent-dark: #4A6AD8;--border-color: rgba(98, 126, 234, .3);--card-bg: rgba(98, 126, 234, .05);--card-shadow: rgba(98, 126, 234, .2);--accent-shadow-light: rgba(98, 126, 234, .15);--accent-shadow-med: rgba(98, 126, 234, .3);--accent-shadow-heavy: rgba(98, 126, 234, .4);--color-orange: #627EEA}.watchlist-header-row{display:flex;align-items:center;justify-content:space-between}.watchlist-edit-toggle{background:none;border:none;color:var(--text-muted);font-size:.75rem;font-weight:600;cursor:pointer;padding:2px 8px;border-radius:6px;transition:color .2s ease}.watchlist-edit-toggle.active{color:var(--color-accent)}.watchlist-card,.watchlist-list-item{position:relative;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.watchlist-delete-btn,.watchlist-list-delete-btn{display:none;position:absolute;top:50%;left:-12px;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;border:none;background:var(--color-negative);color:#fff;font-size:.9rem;font-weight:700;cursor:pointer;align-items:center;justify-content:center;line-height:1;padding:0;z-index:2;box-shadow:0 1px 4px #0000004d}.edit-mode .watchlist-delete-btn,.edit-mode .watchlist-list-delete-btn{display:flex}#watchlist-dashboard.edit-mode,#watchlist-list-view.edit-mode{padding-left:14px}.edit-mode .watchlist-card,.edit-mode .watchlist-list-item,.edit-mode .swipe-delete-container{animation:wiggle .3s ease-in-out infinite alternate;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}.edit-mode .watchlist-card.dragging,.edit-mode .watchlist-list-item.dragging,.edit-mode .swipe-delete-container.dragging{cursor:grabbing}.edit-mode.is-dragging .watchlist-card,.edit-mode.is-dragging .watchlist-list-item,.edit-mode.is-dragging .swipe-delete-container{animation:none}.edit-mode.is-dragging .watchlist-card.dragging,.edit-mode.is-dragging .watchlist-list-item.dragging,.edit-mode.is-dragging .swipe-delete-container.dragging{z-index:10;position:relative;box-shadow:0 10px 40px #0006}@keyframes wiggle{0%{transform:rotate(-.3deg)}to{transform:rotate(.3deg)}}body.watchlist-mode .main-footer{border-top-color:#ffffff1f}body.watchlist-mode .footer-nav-item.active,body.watchlist-mode .footer-nav-item.active:hover{color:var(--text-primary)}body.watchlist-mode .page-tabs-indicator{background:var(--text-primary)}body.watchlist-mode .watchlist-category-header{color:#ffffffb3;border-bottom-color:#ffffff26}body.watchlist-mode .watchlist-edit-toggle{color:#ffffff80}body.watchlist-mode .watchlist-edit-toggle.active{color:var(--text-primary)}body.watchlist-mode .watchlist-add-more-btn{border-color:#fff3;color:#ffffff80}body.watchlist-mode .watchlist-add-more-btn:hover{border-color:var(--text-primary);color:var(--text-primary)}body.watchlist-mode .watchlist-empty-text{color:#fff6}body.watchlist-mode .watchlist-add-btn{border-color:#fff3}body.watchlist-mode .watchlist-add-btn:hover{border-color:var(--text-primary);color:var(--text-primary)}body.watchlist-mode .main-header.scrolled{border-bottom-color:#ffffff14}@media(max-width:768px){.main-header{padding:3px 0 5px}.header-content{justify-content:space-between;gap:10px}.stocks-grid{grid-template-columns:1fr}.stock-card{padding:25px}.stock-card:hover{transform:none;box-shadow:none}}@media(max-width:480px){.logo{font-size:1.5rem}.stock-card{padding:22px}.stock-header{gap:10px;margin-bottom:18px}.header-price-group .current-price{font-size:1.7rem}.stock-logo{width:44px;height:44px;min-width:44px}.stock-name{font-size:.9rem}.stock-ticker{font-size:.78rem}.btc-holdings,.eth-holdings{font-size:.8rem}.change-amount,.header-price-group .change-percent{font-size:.75rem}.market-status{font-size:.55rem}.stock-metrics{gap:10px;padding-top:8px}.metric{padding:9px 11px;border-radius:8px}.metric-label{font-size:.73rem}.metric-value{font-size:.85rem}}.stock-card:active,.stock-list-item:active{transform:scale(.97);opacity:.7}.swipe-delete-container .watchlist-card:active,.swipe-delete-container .watchlist-list-item:active{transform:scale(.97);opacity:1}.edit-mode .watchlist-card:active,.edit-mode .watchlist-list-item:active{transform:none;opacity:1}.footer-nav-item:active{transform:scale(.92);opacity:.7}.watchlist-edit-toggle:active,.watchlist-add-more-btn:active{opacity:.5}.watchlist-delete-btn:active,.watchlist-list-delete-btn:active{transform:translateY(-50%) scale(.85)}.page-tab:active{opacity:.5}.swipe-delete-container{position:relative;overflow:hidden;border-radius:20px;touch-action:pan-y}.edit-mode .swipe-delete-container{overflow:visible;touch-action:none}.stock-list .swipe-delete-container{border-radius:0}.swipe-delete-container>.watchlist-card,.swipe-delete-container>.watchlist-list-item{position:relative;z-index:1;background:var(--bg-primary);will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.swipe-delete-action{position:absolute;right:0;top:0;bottom:0;width:100px;padding-left:20px;z-index:0;background:var(--color-negative);color:#fff;display:flex;align-items:center;justify-content:center;border-radius:0 12px 12px 0;cursor:pointer;visibility:hidden}.swipe-delete-container.swiping .swipe-delete-action{visibility:visible}.stock-list .swipe-delete-action{border-radius:0}.pull-refresh{text-align:center;overflow:hidden;height:0;transition:height .3s cubic-bezier(.25,1,.5,1)}.pull-refresh.visible{height:50px}.pull-refresh-spinner{width:24px;height:24px;margin:13px auto;border:2.5px solid var(--border-color);border-top-color:var(--color-accent);border-radius:50%;animation:ptr-spin .8s linear infinite;opacity:0;transition:opacity .2s}.pull-refresh.visible .pull-refresh-spinner{opacity:1}@keyframes ptr-spin{to{transform:rotate(360deg)}}.fetch-status{text-align:center;font-size:.75rem;font-weight:600;color:var(--color-negative);padding:4px 0;opacity:0;transition:opacity .3s ease;pointer-events:none}.fetch-status.visible{opacity:1}.menu-section{padding:40px 0;min-height:calc(100vh - 160px)}.menu-content{max-width:400px;margin:0 auto}.menu-profile{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px}.menu-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color)}.menu-avatar-placeholder{width:72px;height:72px;border-radius:50%;background:var(--bg-secondary);border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:700;color:var(--text-secondary)}.menu-name{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.menu-email{font-size:.85rem;color:var(--text-muted);word-break:break-all;text-align:center}.menu-signout-btn{margin-top:12px;padding:10px 32px;border:1.5px solid rgba(255,255,255,.2);border-radius:10px;background:transparent;color:var(--text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.menu-signout-btn:hover{border-color:var(--color-negative);color:var(--color-negative)}.menu-signout-btn:active{opacity:.6;transform:scale(.97)}.menu-delete-wrap{text-align:center;padding:8px 0 0}.menu-delete-btn{padding:8px 24px;border:none;border-radius:8px;background:transparent;color:var(--text-muted);font-size:.75rem;cursor:pointer;-webkit-tap-highlight-color:transparent}.menu-delete-btn:active{opacity:.6}.menu-change-pw-link{color:var(--color-accent);text-decoration:none;font-size:.85rem}.menu-pw-form{display:flex;flex-direction:column;gap:10px;padding:0 0 12px}.menu-hint-sep{color:var(--text-muted);margin:0 8px}.menu-forgot-link{color:var(--text-muted);text-decoration:none;font-size:.8rem}.menu-login{display:flex;flex-direction:column;align-items:center;padding:60px 24px}.google-signin-btn{display:flex;align-items:center;gap:10px;padding:14px 28px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:#ffffff0f;color:var(--text-primary);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.google-signin-btn:hover{background:#ffffff1a;border-color:#ffffff40}.google-signin-btn:active{transform:scale(.97);opacity:.8}.google-icon{flex-shrink:0}.menu-welcome{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 0 28px}.menu-welcome-logo{height:40px}.menu-welcome-text{font-size:1.2rem;font-weight:700;color:var(--text-primary)}.menu-auth-buttons{display:flex;flex-direction:column;gap:10px}.google-btn-wrapper{position:relative;overflow:hidden;border-radius:12px}.google-btn-overlay{position:absolute;top:0;left:0;width:100%;height:100%;opacity:.01;z-index:1;cursor:pointer}.google-btn-overlay iframe{width:100%!important;height:100%!important}.menu-auth-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 20px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:#ffffff0f;color:var(--text-primary);font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.menu-auth-btn:hover{background:#ffffff1a;border-color:#ffffff40}.menu-auth-btn:active{transform:scale(.97);opacity:.8}.menu-auth-icon{flex-shrink:0}.menu-divider{display:flex;align-items:center;gap:16px;padding:24px 0}.menu-divider-line{flex:1;height:1px;background:#ffffff1f}.menu-divider-text{font-size:.8rem;font-weight:500;color:var(--text-muted);text-transform:lowercase}.menu-email-form{display:flex;flex-direction:column;gap:10px}.menu-email-input{width:100%;padding:14px 18px;font-size:.95rem;font-family:inherit;font-weight:500;color:var(--text-primary);background:#ffffff0a;border:1px solid rgba(255,255,255,.15);border-radius:12px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.menu-email-input::placeholder{color:var(--text-muted)}.menu-email-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--accent-shadow-light)}.menu-email-btn{width:100%;padding:14px;border:none;border-radius:12px;background:var(--color-accent);color:#000;font-size:.95rem;font-weight:700;font-family:inherit;cursor:pointer;transition:opacity .2s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.menu-email-btn:hover{opacity:.9}.menu-email-btn:active{transform:scale(.97)}.menu-email-btn:disabled{opacity:.5;cursor:not-allowed}.menu-email-status{font-size:.82rem;font-weight:500;text-align:center;min-height:1.2em}.menu-email-status.error{color:var(--color-negative)}.menu-email-status.success{color:var(--color-positive)}.menu-hint{text-align:center;font-size:.8rem;color:var(--text-muted);padding:8px 0 0}.menu-auth-toggle{color:var(--color-accent);text-decoration:none;font-weight:600}.menu-auth-toggle:active{opacity:.6}.menu-legal{text-align:center;font-size:.7rem;color:var(--text-muted);padding:12px 0 0}.menu-legal a{color:var(--text-muted);text-decoration:underline}.menu-settings,.menu-about{margin-top:20px;padding:16px 20px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px}.menu-section-title{font-size:.7rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.menu-setting-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0}.menu-setting-row+.menu-setting-row{border-top:1px solid rgba(255,255,255,.06)}.menu-setting-label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.menu-setting-value{font-size:.85rem;font-weight:600;color:var(--text-muted)}.menu-asset-toggle{display:flex;border:1px solid rgba(255,255,255,.15);border-radius:8px;overflow:hidden}.menu-asset-btn{padding:6px 16px;border:none;background:transparent;color:var(--text-muted);font-size:.8rem;font-weight:700;font-family:inherit;cursor:pointer;transition:all .15s ease;-webkit-tap-highlight-color:transparent}.menu-asset-btn.active{background:var(--color-accent);color:#000}.menu-signout-wrap{display:flex;justify-content:center;padding:28px 0 0}
