:root{--bg:#0f172a;--card:#111827;--text:#e5e7eb;--muted:#9ca3af;--primary:#22d3ee;--accent:#60a5fa;--success:#34d399;--danger:#f87171;--border:#1f2937;--table-pinned-header-bg:#2a394b;--table-row-hover-bg:#2a394b}[data-theme=light]{--bg:#f0f9ff;--card:#fff;--text:#0c4a6e;--muted:#64748b;--primary:#0ea5e9;--accent:#3b82f6;--success:#10b981;--danger:#ef4444;--border:#bae6fd;--table-pinned-header-bg:#e0f2fe;--table-row-hover-bg:#e0f2fe}*{box-sizing:border-box}html,body{height:100%;overflow-x:hidden}body{background:var(--bg);color:var(--text);margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;position:relative}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(140% 140% at 10% -10%,#60a5fa14 0%,#60a5fa09 35%,#60a5fa03 55%,#0000 72%),radial-gradient(140% 140% at 90% 0,#22d3ee12 0%,#22d3ee08 38%,#22d3ee02 58%,#0000 75%);position:fixed;inset:0}[data-theme=light] body:before{background:radial-gradient(120% 120% at 10% -10%,#0ea5e926 0%,#0ea5e90d 40%,#0000 70%),radial-gradient(120% 120% at 90% 0,#3b82f61a 0%,#3b82f608 45%,#0000 70%)}.container{width:1200px;max-width:100%;margin:0 auto;padding:24px}.page-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.page-width-slider{appearance:none;background:#94a3b866;border-radius:3px;outline:none;width:100%;height:6px}.page-width-slider::-webkit-slider-thumb{appearance:none;background:var(--primary);cursor:pointer;border:2px solid #ffffff4d;border-radius:50%;width:16px;height:16px;transition:transform .15s;box-shadow:0 2px 6px #0003}.page-width-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.page-width-slider::-moz-range-thumb{background:var(--primary);cursor:pointer;border:2px solid #ffffff4d;border-radius:50%;width:16px;height:16px;box-shadow:0 2px 6px #0003}.glass{border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#ffffff0f,#ffffff05);border-radius:16px;box-shadow:0 8px 30px #00000040}[data-theme=light] .glass{border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#ffffffeb,#ffffffd9);box-shadow:0 4px 24px #0000000f}[data-theme=light] .button{color:#fff;background:linear-gradient(#0ea5e9,#0891b2);border-color:#0891b266;box-shadow:0 2px 8px #0891b233}[data-theme=light] .button:hover{box-shadow:0 6px 20px #0891b259}[data-theme=light] .button.secondary{border-color:var(--border);color:var(--text);background:#fff}[data-theme=light] .button.secondary:hover{border-color:var(--muted);background:#f1f5f9}[data-theme=light] .icon-button{border-color:var(--border);color:var(--muted);background:#fff}[data-theme=light] .icon-button:hover{border-color:var(--accent);color:var(--text);background:#f8fafc}[data-theme=light] .icon-button.danger{color:#fff;background:linear-gradient(#ef4444,#dc2626);border-color:#dc262666}[data-theme=light] .icon-button.danger:hover{box-shadow:0 6px 16px #dc262640}[data-theme=light] .github-icon-wrap img{filter:brightness(.4)}[data-theme=light] .icon-button[aria-busy=true]{box-shadow:0 0 0 3px #2563eb33}[data-theme=light] .badge,[data-theme=light] .badge-v{border-color:var(--border);background:#fff}[data-theme=light] .sticky-toggle-btn:hover{background:#0000000f}[data-theme=light] .user-menu-item:hover{background:#0000000d}[data-theme=light] .user-menu-item.danger:hover{background:#dc262614}[data-theme=light] .fund-chip{background:#0891b21f;border-color:#0891b259}[data-theme=light] .remove-chip:hover{background:#0891b22e}[data-theme=light] .input{border-color:var(--border);color:var(--text);background:#fff}[data-theme=light] .input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}[data-theme=light] .navbar-add-fund .input{background:#fffffff2;border:none}[data-theme=light] .navbar-input-field{color:var(--text)}[data-theme=light] .search-dropdown{border:1px solid var(--border);box-shadow:0 8px 24px #0000001a;background:#fffffffa!important}[data-theme=light] .search-item:hover:not(.added){background:#0000000d}[data-theme=light] .search-item.selected{background:#0891b21f;border:1px solid #0891b24d}[data-theme=light] .search-spinner{border-color:#0000001a;border-top-color:var(--primary)}[data-theme=light] .filter-bar{border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;box-shadow:0 2px 12px #0000000a}[data-theme=light] .tab{color:var(--muted)}[data-theme=light] .tab.active{color:var(--primary);background:#0891b226}[data-theme=light] .tabs-nav-btn{border-color:var(--border);color:var(--muted);background:#ffffffe6}[data-theme=light] .tabs-nav-btn:hover{color:var(--primary);border-color:var(--primary);background:#fff}[data-theme=light] .group-summary-sticky{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom-color:var(--border);background:#ffffffeb}[data-theme=light] .group-selector-popup{border:1px solid var(--border);box-shadow:0 10px 25px -5px #00000014,0 8px 10px -6px #0000000f;background:#fffffffa!important}@media (max-width:640px){[data-theme=light] .filter-bar,[data-theme=light] .group-summary-sticky{border-bottom-color:var(--border);background:#fffffff2}}.chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip{border:1px solid var(--border);color:var(--muted);cursor:pointer;white-space:nowrap;background:#ffffff0d;border-radius:999px;outline:none;justify-content:center;align-items:center;padding:6px 14px;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.chip:hover{color:var(--text);border-color:var(--muted);background:#ffffff1a;transform:translateY(-1px)}.chip:active{transform:translateY(0)}.chip.active{border-color:var(--primary);color:var(--primary);background:#22d3ee26;font-weight:600;box-shadow:0 0 12px #22d3ee33}[data-theme=light] .view-toggle{background:#0000000f!important}[data-theme=light] .view-toggle .icon-button.active{color:#fff!important}[data-theme=light] .chip{border-color:var(--border);color:var(--muted);background:#fff;box-shadow:0 1px 2px #0000000d}[data-theme=light] .chip:hover{border-color:var(--accent);color:var(--primary);background:#f8fafc;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}[data-theme=light] .chip.active{color:#fff;background:linear-gradient(#0ea5e9,#0891b2);border-color:#0000;box-shadow:0 4px 12px #0891b24d}[data-theme=light] .table-header-row{border-bottom-color:var(--border);background:#e2e8f0}[data-theme=light] .table-header-row-scroll,[data-theme=light] .table-header-cell-fixed{border-bottom-color:var(--border);background:#0000000a}[data-theme=light] .table-row:hover,[data-theme=light] .table-row-scroll:hover,[data-theme=light] .table-row-scroll.row-hovered,[data-theme=light] .table-fixed-row.row-hovered{background:#e2e8f0}[data-theme=light] .pc-fund-table .table-header-row-scroll{background:#cbd5e1}[data-theme=light] .pc-fund-table .table-header-row-scroll .table-header-cell{color:#0f172a;background:#cbd5e1!important}[data-theme=light] .pc-fund-table .resizer:hover:after{box-shadow:0 0 0 2px #0891b240}[data-theme=light] .pc-fund-table .table-row.empty-row{border:1px solid var(--border);background:#00000005}[data-theme=light] .list .item{border-color:var(--border);background:#fff}[data-theme=light] .list .item .name{color:var(--text)}[data-theme=light] .list .item .weight{color:var(--accent)}[data-theme=light] .trend-range-bar{border:1px solid var(--border);background:#0000000f}[data-theme=light] .trend-range-btn{color:var(--muted)}[data-theme=light] .trend-range-btn:hover{color:var(--primary);background:#0891b214}[data-theme=light] .trend-range-btn.active{color:var(--primary);background:#0891b226}.chart-overlay{z-index:10;background:#ffffff05;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}[data-theme=light] .chart-overlay{background:#00000008}.theme-transition-overlay{z-index:99999;pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.theme-transition-circle{background:var(--primary);opacity:.5;transform-origin:50%;border-radius:50%;width:120px;height:120px}.card .title{letter-spacing:.2px;align-items:center;gap:12px;font-weight:700;display:flex}.card .title span:first-child{white-space:normal;word-break:break-word;text-overflow:clip;word-break:break-word;max-width:none;overflow:visible}.muted{color:var(--muted)}.grid{grid-template-columns:repeat(12,1fr);gap:16px;display:grid}.col-12{grid-column:span 12}.col-6{grid-column:span 6}.col-4{grid-column:span 4}.col-3{grid-column:span 3}@media (max-width:1024px){.col-6,.col-4,.col-3{grid-column:span 12}}.navbar{z-index:50;box-sizing:border-box;justify-content:space-between;align-items:center;gap:16px;min-height:52px;padding:8px 16px;display:flex;position:fixed;top:0;left:16px;right:16px}.brand{flex:none;align-items:center;gap:8px;min-width:0;font-weight:600;transition:flex .4s cubic-bezier(.16,1,.3,1);display:flex}.brand.search-focused-sibling{flex:none}.navbar-add-fund{width:100%;min-width:260px;max-width:280px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;flex:0 auto;margin-left:auto;padding:0;transition:max-width .4s cubic-bezier(.16,1,.3,1)}.navbar-add-fund.search-focused{flex:1;min-width:320px;max-width:800px}.navbar-add-fund .form{width:100%}.navbar-add-fund .search-input-wrapper{flex:1;position:relative}.navbar-add-fund .input{background:#0b1220e6;border-radius:999px;width:100%}.navbar-search-icon{color:var(--muted);pointer-events:none;z-index:2;justify-content:center;align-items:center;display:inline-flex;position:absolute;left:14px}.navbar-input-shell{z-index:1;flex-wrap:wrap;align-items:center;gap:8px;height:auto;min-height:44px;padding-left:40px;padding-right:12px;display:flex;position:relative;padding-top:6px!important;padding-bottom:6px!important}@media (min-width:641px){.navbar-add-fund.search-focused .search-input-wrapper{flex-wrap:nowrap!important}.navbar-add-fund.search-focused .navbar-input-shell{min-width:0;flex-wrap:nowrap!important}}@media (max-width:640px){.navbar-add-fund{opacity:0;pointer-events:none;border:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden;flex:0 0 0!important;width:0!important;min-width:0!important;margin:0!important;padding:0!important}.mobile-search-btn{display:inline-flex!important}.brand{opacity:1;white-space:nowrap;width:auto;transition:all .3s cubic-bezier(.4,0,.2,1);transform:translate(0)}.brand.search-focused-sibling{opacity:0;pointer-events:none;overflow:hidden;transform:translate(-20px);width:0!important;margin:0!important;padding:0!important}.actions{opacity:1;white-space:nowrap;width:auto;transition:all .3s cubic-bezier(.4,0,.2,1);transform:translate(0)}.actions.search-focused-sibling{opacity:0;pointer-events:none;overflow:hidden;transform:translate(20px);width:0!important;margin:0!important;padding:0!important}.navbar-add-fund.search-focused{opacity:1;pointer-events:auto;flex:1!important;width:100%!important;max-width:100%!important;margin-top:0!important;display:flex!important;overflow:visible!important}}.mobile-search-btn{display:none}.navbar-input-field{min-width:120px;height:24px;color:var(--text);background:0 0;border:none;outline:none;flex:1;margin-left:20px;font-size:14px}.navbar-input-field::placeholder{color:var(--muted)}.navbar-add-fund .button{display:none}@media (max-width:640px){.content{padding-top:140px;overflow-x:hidden}.navbar{border-top:none;border-left:none;border-right:none;border-radius:0;flex-wrap:wrap;gap:12px;padding-left:12px;padding-right:4px;top:0;left:0;right:0}.navbar-add-fund{order:3;width:100%;min-width:0;max-width:none;margin-top:8px}.navbar-add-fund .button{display:inline-flex}}.form{align-items:center;gap:12px;display:flex}.input{border:1px solid var(--border);height:auto;min-height:44px;color:var(--text);background:#0b1220;border-radius:12px;outline:none;flex:1;padding:0 14px;font-size:14px;transition:border-color .2s,box-shadow .2s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #60a5fa33}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.button{border:1px solid var(--border);color:#05263b;cursor:pointer;background:linear-gradient(#0ea5e9,#22d3ee);border-radius:12px;height:44px;padding:0 16px;font-weight:600;transition:transform .15s,box-shadow .2s}.button:hover{transform:translateY(-1px);box-shadow:0 10px 20px #22d3ee40}.button:active{transform:translateY(0)}.card{padding:16px}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.badge{border:1px solid var(--border);background:#0b1220;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:inline-flex}.badge-v{border:1px solid var(--border);background:#0b1220;border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:4px 10px;font-size:12px;display:inline-flex}.badge-v span{color:var(--muted);font-size:10px}.badge-v strong{font-size:11px}.stat{align-items:baseline;gap:8px;display:flex}.stat .label{color:var(--muted);font-size:12px}.stat .value{font-size:20px;font-weight:700}.stat .badge{padding:4px 8px;font-size:12px}@media (max-width:640px){.input,.navbar-input-field{font-size:16px}.container{width:100%;max-width:100%;padding:12px;overflow-x:hidden}.grid{gap:12px}.card{padding:12px}.stat{flex-direction:column;gap:4px;min-width:0}.stat .label{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.stat .value{white-space:nowrap;font-size:15px;line-height:1.2}.stat .badge{width:fit-content;padding:2px 6px;font-size:13px}.card .title{flex-wrap:wrap}.item .name{max-width:100px;font-size:14px}.item .badge{padding:2px 4px;font-size:14px}}.up{color:var(--danger)}.down{color:var(--success)}.list{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (max-width:640px){.list{grid-template-columns:1fr}}.item{border:1px solid var(--border);background:#0b1220;border-radius:10px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.item .name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.modal .item .name{white-space:normal;text-overflow:clip;word-break:break-word;max-width:none;overflow:visible}.item .weight{color:var(--accent);font-weight:600}.trend-range-bar{background:#0003;border-radius:8px;justify-content:space-between;gap:4px;margin-top:12px;padding:4px;display:flex}.trend-range-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:6px 0;font-size:11px;font-weight:400;transition:all .2s}.trend-range-btn:hover{color:var(--primary)}.trend-range-btn.active{color:var(--primary);background:#ffffff1a;font-weight:600}.empty{text-align:center;color:var(--muted);padding:24px}.error-text{color:var(--danger);margin-top:4px;font-size:12px}.feedback-modal{max-width:420px!important}.link-button:hover{opacity:.8;color:var(--accent)!important}.footer{color:var(--muted);text-align:center;margin-top:24px;padding-bottom:60px;font-size:12px}.actions{flex:auto;justify-content:flex-end;align-items:center;gap:8px;min-width:0;transition:flex .4s cubic-bezier(.16,1,.3,1);display:inline-flex}.actions.search-focused-sibling{flex:none}.icon-button{border:1px solid var(--border);width:36px;height:36px;color:var(--muted);cursor:pointer;background:#0b1220;border-radius:10px;justify-content:center;align-items:center;transition:box-shadow .2s,border-color .2s,transform .15s,color .2s;display:inline-flex}.icon-button:hover{color:var(--text);border-color:var(--accent);transform:translateY(-1px)}.icon-button.no-hover:hover{color:inherit;border-color:var(--border);transform:none}.icon-button:active{transform:translateY(0)}.sticky-toggle-btn{cursor:pointer;transition:all .2s;display:inline-flex!important}.sticky-toggle-btn:hover{background:#ffffff1a;border-radius:4px;opacity:1!important}.icon-button.danger{color:#2b0b0b;background:linear-gradient(#ef4444,#f87171)}.icon-button.danger:hover{box-shadow:0 10px 20px #f8717140}.fav-button{color:var(--muted);background:0 0;border:none;width:auto;height:auto;margin-right:4px;padding:4px;transition:all .2s}.fav-button:hover,.fav-button.active{color:var(--accent)}.card.list-mode{padding:12px 16px;position:relative}.table-container{grid-column:span 12;padding:0;overflow:hidden}.table-pc-wrap{flex-direction:row;width:100%;min-width:0;display:flex}.table-scroll-area{scrollbar-width:thin;scrollbar-color:var(--border)var(--bg);flex:1;min-width:0;overflow-x:auto}.table-scroll-area::-webkit-scrollbar{height:8px}.table-scroll-area::-webkit-scrollbar-track{background:var(--bg);border-radius:8px}.table-scroll-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}.table-scroll-area::-webkit-scrollbar-thumb:hover{background:var(--muted)}.table-scroll-area::-webkit-scrollbar-thumb:active{background:var(--primary)}.scrollbar-y-styled{scrollbar-width:thin;scrollbar-color:var(--border)var(--bg)}.scrollbar-y-styled::-webkit-scrollbar{width:8px}.scrollbar-y-styled::-webkit-scrollbar-track{background:var(--bg);border-radius:8px}.scrollbar-y-styled::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}.scrollbar-y-styled::-webkit-scrollbar-thumb:hover{background:var(--muted)}.scrollbar-y-styled::-webkit-scrollbar-thumb:active{background:var(--primary)}.table-scroll-area-inner{min-width:900px}.table-header-row-scroll,.table-row-scroll{box-sizing:border-box;grid-template-columns:220px 100px 100px 100px 140px 140px 140px;align-items:center;gap:12px;width:100%;display:grid}.table-header-row-scroll{border-bottom:1px solid var(--border);background:#ffffff0d;padding:16px 14px}.table-header-row-scroll .table-header-cell{white-space:nowrap}.table-row-scroll .table-cell{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.table-row-scroll .profit-cell,.table-row-scroll .holding-cell{min-width:0}.table-row-scroll .profit-cell>*,.table-row-scroll .holding-cell>*{text-overflow:ellipsis;min-width:0;overflow:hidden}.table-row-scroll .name-cell .name-text{white-space:nowrap;text-overflow:ellipsis;word-break:normal;max-width:100%;display:block;overflow:hidden}.table-row-scroll .name-cell .name-cell-content{width:100%;min-width:0}.table-row-scroll .name-cell .title-text{flex:auto;min-width:0;overflow:hidden}.table-row-scroll .name-cell .name-text.show-full{white-space:normal;text-overflow:clip;word-break:break-all;overflow:visible}.table-row-scroll{box-sizing:border-box;border-bottom:1px solid var(--border);min-height:52px;padding:12px 24px!important}.table-row-scroll:hover,.table-row-scroll.row-hovered,.table-fixed-row.row-hovered{background:#ffffff14}.table-fixed-col{background:var(--bg);border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;width:60px;display:flex}.table-header-cell-fixed{border-bottom:1px solid var(--border);background:#ffffff0d;justify-content:center;align-items:center;min-height:52px;padding:16px 12px;display:flex}.table-fixed-row{box-sizing:border-box;border-bottom:none;justify-content:center;align-items:center;min-height:59px;padding:0 12px;display:flex}.table-fixed-row .table-cell{border:none}.table-row-wrapper{width:100%}.table-row{border-bottom:1px solid var(--border);grid-template-columns:2.2fr .8fr 1fr 1fr 1.2fr 1.2fr 1.2fr .5fr;align-items:center;gap:12px;display:grid;padding:12px 14px!important}.table-row:hover{background:#2a394b}.table-row:last-child{border-bottom:none}.table-header-row{border-bottom:1px solid var(--border);background:#2a394b;grid-template-columns:2.2fr .8fr 1fr 1fr 1.2fr 1.2fr 1.2fr .5fr;gap:12px;padding:16px 14px;display:grid}.table-header-cell{color:var(--text);letter-spacing:.5px;font-size:13px;font-weight:700}.table-cell{align-items:center;display:flex}.text-right{text-align:right;justify-content:flex-end}.text-center{text-align:center;justify-content:center}.name-cell{gap:8px}.title-text{flex-direction:column;gap:2px;display:flex}.name-text{white-space:normal;word-break:break-all;font-size:14px;font-weight:600;line-height:1.4}.updated-indicator{color:#22c55e;vertical-align:middle;background:#22c55e33;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;margin-left:6px;font-size:10px;display:inline-flex;transform:translateY(-1px)}.dca-indicator{color:#22d3ee;vertical-align:middle;background:#22d3ee26;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:6px;padding:0 4px;font-size:10px;font-weight:500;display:inline-flex;transform:translateY(-1px)}[data-theme=light] .dca-indicator{color:#0891b2;background:#06b6d426}.code-text{font-size:11px}@media (max-width:768px){.table-header-row{display:none}.mobile-fund-table{-webkit-overflow-scrolling:touch;overflow-x:auto}.mobile-fund-table .table-header-row{display:grid;padding-top:0!important;padding-bottom:0!important;padding-left:0!important}.mobile-fund-table .table-header-row .table-header-cell{align-items:center;min-width:0;padding-top:8px;padding-bottom:8px;display:flex;overflow:hidden}.mobile-fund-table .table-row{grid-template-areas:unset;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-bottom:1px solid #00000014;gap:12px;padding-top:0!important;padding-bottom:0!important;padding-left:0!important}.mobile-fund-table .table-header-row{border-bottom:1px solid #00000014}[data-theme=light] .mobile-fund-table .table-row,[data-theme=light] .mobile-fund-table .table-header-row{border-bottom-color:#0000000f}.mobile-fund-table .table-row .table-cell{text-overflow:ellipsis;min-width:0;padding-top:12px;padding-bottom:12px;overflow:hidden}.mobile-fund-table .table-header-cell-pin-left,.mobile-fund-table .table-cell-pin-left{z-index:2;border-bottom:none;border-right:1px solid #00000014;position:sticky;left:0;box-shadow:4px 0 10px -2px #0000001f}[data-theme=light] .mobile-fund-table .table-header-cell-pin-left,[data-theme=light] .mobile-fund-table .table-cell-pin-left{border-right-color:#0000000f;box-shadow:4px 0 10px -2px #00000014}.mobile-fund-table .table-header-cell-pin-left{background:var(--table-pinned-header-bg)}.mobile-fund-table .table-cell-pin-left,.mobile-fund-table .table-row:hover,.mobile-fund-table .table-row:hover .table-cell-pin-left{background:var(--bg)}.mobile-fund-table .table-header-cell-pin-right,.mobile-fund-table .table-cell-pin-right{z-index:2;border-left:1px solid #00000014;position:sticky;right:0;box-shadow:-4px 0 24px -4px #0000001f}[data-theme=light] .mobile-fund-table .table-header-cell-pin-right,[data-theme=light] .mobile-fund-table .table-cell-pin-right{border-left-color:#0000000f}.mobile-fund-table .table-header-cell-pin-right{background:var(--table-pinned-header-bg)}.mobile-fund-table .table-cell-pin-right,.mobile-fund-table .table-row:hover .table-cell-pin-right{background:var(--bg)}.mobile-fund-table .name-cell{grid-area:unset;align-self:stretch;padding-left:12px}.mobile-fund-table .table-header-row .table-header-cell-pin-left{padding-left:12px}.mobile-fund-table .table-row .name-cell .name-cell-content{min-height:100%}.mobile-fund-table .table-row .name-cell .name-text{-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:12px;font-weight:600;display:-webkit-box;overflow:hidden}.mobile-fund-table .table-row .name-cell .name-text.show-full{-webkit-line-clamp:unset;text-overflow:clip;overflow:visible}.mobile-fund-table .table-row .name-cell .code-text{font-size:10px}.mobile-fund-table .value-cell,.mobile-fund-table .change-cell{grid-area:unset}.mobile-fund-table .est-change-cell,.mobile-fund-table .profit-cell,.mobile-fund-table .time-cell{grid-area:unset;justify-content:flex-end}.table-row{grid-template-columns:1fr 80px 100px;grid-template-areas:"name value change""name time profit";gap:4px 12px;padding:12px!important}.name-cell{grid-area:name}.value-cell{grid-area:value}.change-cell{grid-area:change}.profit-cell{grid-area:profit}.time-cell{grid-area:time;justify-content:flex-end}.action-cell,.holding-cell,.holding-amount-cell{display:none}.mobile-fund-table .holding-amount-cell,.mobile-fund-table .holding-cell,.mobile-fund-table .action-cell{display:flex}.mobile-fund-table .action-cell .icon-button.danger{display:inline-flex}.table-cell.time-cell span{font-size:10px!important}}.stat-compact .up{color:var(--danger)}@media (max-width:768px){.action-cell .danger{display:none}.mobile-fund-table .action-cell .danger{display:inline-flex}}.swipe-action-bg{color:#2b0b0b;z-index:0;cursor:pointer;background:linear-gradient(#ef4444,#f87171);flex-direction:column;justify-content:center;align-items:center;gap:4px;width:80px;font-size:12px;font-weight:600;display:flex;position:absolute;top:1px;bottom:1px;right:0;box-shadow:inset 10px 0 20px -10px #0003}.stat-compact .down{color:var(--success)}@keyframes breathing-glow{0%{text-shadow:0 0 2px #22d3ee33}50%{text-shadow:0 0 8px #22d3ee99}to{text-shadow:0 0 2px #22d3ee33}}.breathing-text{animation:3s ease-in-out infinite breathing-glow}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{width:100%;max-height:90vh;margin:auto;position:relative;overflow-y:auto}.tabs-container{flex:1;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.tabs-scroll-area{scrollbar-width:none;-ms-overflow-style:none;flex:1;display:flex;overflow-x:auto}.tabs-scroll-area::-webkit-scrollbar{display:none}.tabs{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-radius:0;gap:8px;width:fit-content;padding:4px 0;display:flex}.tab{color:var(--muted);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#ffffff0d;border:1px solid #0000;border-radius:20px;justify-content:center;align-items:center;padding:6px 14px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.tab:hover{color:var(--text);background:#ffffff1a;transform:translateY(-1px)}.tab.active{color:var(--primary);background:#22d3ee26;border-color:#22d3ee4d;font-weight:600;box-shadow:0 2px 8px #22d3ee26}[data-theme=light] .tab{color:var(--muted);background:#0000000a}[data-theme=light] .tab:hover{color:var(--text);background:#00000014}[data-theme=light] .tab.active{color:var(--primary);background:#0ea5e91a;border-color:#0ea5e940;box-shadow:0 2px 8px #0ea5e91f}.user-menu-container{position:relative}.user-menu-dropdown{transform-origin:100% 0;z-index:100;border-radius:12px;flex-direction:column;gap:2px;min-width:180px;margin-top:8px;padding:6px;display:flex;position:absolute;top:100%;right:0}.user-menu-item{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;transition:all .2s;display:flex}.user-menu-item:hover{background:#ffffff14}.user-menu-item.danger{color:var(--danger)}.user-menu-item.danger:hover{background:#f8717126}.user-menu-header{border-bottom:1px solid var(--border);margin-bottom:4px;padding:12px 16px}.user-avatar-large{background:var(--primary);color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;font-weight:600;display:flex}.user-info{flex-direction:column;justify-content:center;display:flex}.search-container{width:100%;position:relative}.search-dropdown{z-index:100;border-radius:16px;max-height:60vh;margin-top:8px;position:absolute;top:100%;left:0;right:0;overflow:hidden auto}.search-item{cursor:pointer;justify-content:space-between;align-items:center;padding:10px 14px;transition:background .2s;display:flex}.search-item.added{opacity:.6;cursor:default}.group-selector-popup{z-index:100;border-radius:16px;flex-direction:column;gap:4px;width:280px;margin-top:8px;padding:8px;display:flex;position:absolute;top:100%;right:0}.bottom-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);z-index:100;height:60px;padding-bottom:env(safe-area-inset-bottom);background:#0f172acc;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}[data-theme=light] .bottom-nav{background:#fffc}.bottom-nav-item{color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-size:12px;text-decoration:none;transition:all .2s;display:flex}.bottom-nav-item.active{color:var(--primary)}.bottom-nav-item svg{transition:transform .2s}.bottom-nav-item:active svg{transform:scale(.9)}.app-with-bottom-nav{padding-bottom:calc(60px + env(safe-area-inset-bottom))}.market-page{padding-bottom:80px}.market-board-title{margin-bottom:16px;padding-left:4px;font-size:18px;font-weight:700}.market-board-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (max-width:640px){.market-board-grid{grid-template-columns:repeat(3,1fr);gap:8px}}.market-board-card{border:1px solid var(--border);cursor:pointer;text-align:center;min-height:100px;color:inherit;background:#ffffff0d;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:16px 8px;transition:all .2s;display:flex}.market-board-card:hover{background:#ffffff14;transform:translateY(-2px)}.market-board-name{color:var(--muted);margin-bottom:8px;font-size:14px}.market-board-value{font-size:20px;font-weight:700;line-height:1.2}.market-board-change{align-items:center;gap:4px;margin-top:4px;font-size:12px;font-weight:500;display:flex}.market-board-value.up,.market-board-change.up{color:var(--danger)}.market-board-value.down,.market-board-change.down{color:var(--success)}[data-theme=light] .market-board-card{background:#fff;box-shadow:0 2px 8px #0000000a}[data-theme=light] .market-board-card:hover{background:#f8fafc;box-shadow:0 4px 12px #00000014}.group-manage-item{border:1px solid #0000;border-radius:12px;align-items:center;margin-bottom:8px;padding:12px 16px;transition:all .2s;display:flex}.group-manage-item:hover{background:#ffffff14}.group-manage-item.selected{background:#22d3ee1a;border-color:#22d3ee4d}.checkbox-input{border:2px solid var(--border);border-radius:6px;flex-shrink:0;width:20px;height:20px;transition:all .2s;position:relative}.checkbox-input.checked{background:var(--primary);border-color:var(--primary)}.checkbox-input.checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:2px;left:6px;transform:rotate(45deg)}[data-theme=light] .group-manage-item:hover{background:#00000008}[data-theme=light] .group-manage-item.selected{background:#0ea5e914;border-color:#0ea5e933}.date-picker-trigger{border:1px solid var(--border);width:100%;height:44px;color:var(--text);cursor:pointer;background:#0b1220;border-radius:12px;justify-content:space-between;align-items:center;padding:0 14px;transition:all .2s;display:flex}[data-theme=light] .date-picker-trigger{background:#fff}.date-picker-trigger:hover{border-color:var(--accent)}.date-picker-trigger span{text-align:right;flex:1;margin-right:8px}.trade-time-slot{border:1px solid var(--border);background:#0003;border-radius:12px;padding:4px;display:flex}[data-theme=light] .trade-time-slot{background:#0000000d}.trade-time-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:6px 0;font-size:13px;font-weight:500;transition:all .2s}.trade-time-btn.active{color:var(--primary);background:#ffffff1a;font-weight:600;box-shadow:0 2px 8px #0000001a}[data-theme=light] .trade-time-btn.active{color:var(--primary);background:#fff;box-shadow:0 2px 4px #0000000d}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.select{border:1px solid var(--border);width:100%;min-height:44px;color:var(--text);appearance:none;cursor:pointer;background:#0b1220 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center no-repeat;border-radius:12px;outline:none;padding:0 40px 0 14px;font-size:14px;transition:border-color .2s,box-shadow .2s}.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #60a5fa33}[data-theme=light] .select{background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}.form-group{margin-bottom:16px}.form-group label{color:var(--muted);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.toggle-container{cursor:pointer;align-items:center;width:44px;height:24px;display:inline-flex;position:relative}.toggle-track{background:var(--border);border-radius:999px;transition:background .2s;position:absolute;inset:0}.toggle-track.checked{background:var(--primary)}.toggle-thumb{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0003}.avatar-upload-card{border:1px dashed var(--border);background:#0003;border-radius:16px;justify-content:center;align-items:center;width:100%;height:120px;margin-bottom:24px;transition:all .2s;display:flex;position:relative;overflow:hidden}[data-theme=light] .avatar-upload-card{background:#00000008}.avatar-upload-card:hover{border-color:var(--primary);background:#22d3ee0d}.avatar-upload-preview{object-fit:cover;width:100%;height:100%}.avatar-upload-empty{width:100%;height:100%;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.avatar-upload-plus{background:var(--primary);cursor:pointer;z-index:2;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin:0;padding:0;transition:transform .2s;display:flex;position:relative;box-shadow:0 4px 12px #0003;color:#fff!important}.avatar-upload-plus svg{width:24px;height:24px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff!important}.avatar-upload-plus:hover{transform:scale(1.1)}.avatar-upload-replace{width:32px;height:32px;font-size:20px;position:absolute;bottom:12px;right:12px}.avatar-upload-hint{opacity:.7;font-size:12px}.avatar-map-grid{background-image:radial-gradient(var(--muted)1px,transparent 1px);opacity:.1;pointer-events:none;background-size:16px 16px;position:absolute;inset:0}.avatar-map-pin{pointer-events:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
