:root{--bg-primary: #0d0d14;--bg-secondary: #1e1e2e;--text-primary: #e2e8f0;--text-secondary: #cbd5e1;--text-tertiary: #94a3b8;--text-muted: #475569;--text-accent: #f1f5f9;--border: #1e1e2e;--accent: #a78bfa;--accent-light: #c4b5fd;--accent-dark: #4c3882;--color-cost: #f87171;--color-profit: #4ade80;--color-volume: #67e8f9;--color-secondary-text: #64748b;--warning-bg: #1a2332;--warning-text: #f97316;--table-header-bg: #13131f;--table-row-hover-bg: #13131f;--table-top3-bg: #0f0f1f;--table-row-border: #1a1a2e;--badge-bg: #1e1e2e;--badge-color: #94a3b8;--badge-rank1-bg: #713f12;--badge-rank1-color: #fde68a;--badge-rank2-bg: #1c2637;--badge-rank2-color: #93c5fd;--badge-rank3-bg: #1c1917;--badge-rank3-color: #d6a87a;--vol-bz-bg: #1a2e2e;--vol-bz-text: #67e8f9;--vol-bz-border: #164e6380;--vol-ah-bg: #2a1f2e;--vol-ah-text: #c084fc;--vol-ah-border: #6b21a880;--status-connected-bg: #14532d;--status-connected-text: #4ade80;--status-connecting-bg: #1c1917;--status-connecting-text: #a8a29e;--status-disconnected-bg: #450a0a;--status-disconnected-text: #f87171;--status-offline-bg: #1c1917;--status-offline-text: #78716c;--filter-bg: #13131f;--filter-input-bg: #0d0d14;--filter-input-border: #2e2e4e;--load-more-btn-bg: #13131f;--load-more-btn-border: #2e2e4e}[data-theme=light]{--bg-primary: #f8f8f8;--bg-secondary: #f0f0f0;--text-primary: #1a1a1a;--text-secondary: #333333;--text-tertiary: #555555;--text-muted: #888888;--text-accent: #0d0d14;--border: #d0d0d0;--accent: #7c3aed;--accent-light: #6d28d9;--accent-dark: #e9d5ff;--color-cost: #dc2626;--color-profit: #16a34a;--color-volume: #0891b2;--color-secondary-text: #6b7280;--warning-bg: #fef3c7;--warning-text: #d97706;--table-header-bg: #f3f4f6;--table-row-hover-bg: #f9fafb;--table-top3-bg: #fef3c7;--table-row-border: #e5e7eb;--badge-bg: #e5e7eb;--badge-color: #6b7280;--badge-rank1-bg: #fed7aa;--badge-rank1-color: #92400e;--badge-rank2-bg: #bfdbfe;--badge-rank2-color: #1e40af;--badge-rank3-bg: #dbeafe;--badge-rank3-color: #92400e;--vol-bz-bg: #d1fae5;--vol-bz-text: #047857;--vol-bz-border: #10b98180;--vol-ah-bg: #e9d5ff;--vol-ah-text: #7c3aed;--vol-ah-border: #d946ef80;--status-connected-bg: #dcfce7;--status-connected-text: #166534;--status-connecting-bg: #f3f4f6;--status-connecting-text: #6b7280;--status-disconnected-bg: #fee2e2;--status-disconnected-text: #991b1b;--status-offline-bg: #f3f4f6;--status-offline-text: #6b7280;--filter-bg: #f3f4f6;--filter-input-bg: #ffffff;--filter-input-border: #d1d5db;--load-more-btn-bg: #f3f4f6;--load-more-btn-border: #d1d5db}*{transition:background .3s,color .3s,border-color .3s}header[data-v-f818487f]{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.25rem;border-bottom:1px solid var(--border);margin-bottom:1.5rem}.header-left[data-v-f818487f]{display:flex;flex-direction:column;gap:.2rem}h1[data-v-f818487f]{font-size:1.6rem;font-weight:700;letter-spacing:-.02em;color:var(--accent)}.version[data-v-f818487f]{font-size:.75rem;color:var(--text-muted);margin-left:.5rem}.subtitle[data-v-f818487f]{font-size:.8rem;color:var(--color-secondary-text)}.header-right[data-v-f818487f]{display:flex;align-items:center;gap:1.5rem}.meta-info[data-v-f818487f]{display:flex;flex-direction:column;gap:.3rem;align-items:flex-end}.meta-info>span[data-v-f818487f]{font-size:.75rem;color:var(--text-muted)}.theme-switch-container[data-v-f818487f]{display:flex;align-items:center}.theme-switch[data-v-f818487f]{position:relative;display:inline-block;width:2.5rem;height:1.4rem;cursor:pointer}.theme-switch input[data-v-f818487f]{opacity:0;width:0;height:0}.slider[data-v-f818487f]{position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--text-muted);border-radius:34px;transition:all .3s ease;display:flex;align-items:center;padding:0 .2rem}.slider[data-v-f818487f]:before{content:"🌙";position:absolute;height:1rem;width:1rem;left:.2rem;bottom:.2rem;background-color:var(--bg-primary);border-radius:50%;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:.6rem}.theme-switch input:checked+.slider[data-v-f818487f]{background-color:var(--accent)}.theme-switch input:checked+.slider[data-v-f818487f]:before{content:"☀️";transform:translate(1.1rem)}.status[data-v-f818487f]{font-size:.72rem;font-weight:600;padding:.25rem .7rem;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.status.connected[data-v-f818487f]{background:var(--status-connected-bg);color:var(--status-connected-text)}.status.connecting[data-v-f818487f]{background:var(--status-connecting-bg);color:var(--status-connecting-text)}.status.disconnected[data-v-f818487f]{background:var(--status-disconnected-bg);color:var(--status-disconnected-text)}.status.offline[data-v-f818487f]{background:var(--status-offline-bg);color:var(--status-offline-text)}footer[data-v-eaf2189c]{display:flex;justify-content:center;padding:2rem 0 1.5rem;margin-top:2rem;border-top:1px solid var(--border);transition:border-color .3s}.footer-link[data-v-eaf2189c]{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.78rem;text-decoration:none;transition:color .15s}.footer-link[data-v-eaf2189c]:hover{color:var(--accent)}.github-icon[data-v-eaf2189c]{width:1.1rem;height:1.1rem;flex-shrink:0}.filter-panel[data-v-e54b8ad5]{flex:0 0 13rem;background:var(--filter-bg);border:1px solid var(--border);border-radius:.75rem;padding:1rem 1rem .75rem;position:sticky;top:1rem}.filter-grid[data-v-e54b8ad5]{display:flex;flex-direction:column;gap:.85rem;margin-bottom:.75rem}.filter-field[data-v-e54b8ad5]{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem}.filter-controls[data-v-e54b8ad5]{display:flex;align-items:center;gap:.4rem}.filter-label[data-v-e54b8ad5]{color:var(--text-tertiary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.filter-field select[data-v-e54b8ad5]{background:var(--filter-input-bg);border:1px solid var(--filter-input-border);border-radius:.35rem;color:var(--text-primary);padding:.25rem .4rem;font-size:.8rem;cursor:pointer;transition:all .2s}.filter-field select[data-v-e54b8ad5]:focus{outline:none;border-color:var(--accent)}.cost-input[data-v-e54b8ad5]{width:100%;max-width:7rem;background:var(--filter-input-bg);border:1px solid var(--filter-input-border);border-radius:.35rem;color:var(--text-primary);padding:.25rem .4rem;font-size:.8rem;text-align:center;transition:all .2s}.cost-input[data-v-e54b8ad5]:focus{outline:none;border-color:var(--accent)}.cost-input[data-v-e54b8ad5]:disabled{opacity:.2;cursor:not-allowed}.no-budget-label[data-v-e54b8ad5]{display:flex;align-items:center;gap:.35rem;color:var(--color-secondary-text);font-size:.78rem;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.no-budget-label input[type=checkbox][data-v-e54b8ad5]{accent-color:var(--accent);cursor:pointer;width:.85rem;height:.85rem}.filter-max[data-v-e54b8ad5]{color:var(--text-muted);font-size:.75rem;white-space:nowrap}.filter-reset[data-v-e54b8ad5]{background:none;border:1px solid var(--filter-input-border);border-radius:.4rem;color:var(--color-secondary-text);font-size:.75rem;padding:.25rem .75rem;cursor:pointer;transition:color .15s,border-color .15s}.filter-reset[data-v-e54b8ad5]:hover{color:var(--color-cost);border-color:var(--color-cost)}.tracker-layout[data-v-b8e73506]{display:flex;align-items:flex-start;gap:1.25rem}.tracker-content[data-v-b8e73506]{flex:1;min-width:0}.search-bar-wrapper[data-v-b8e73506]{margin-bottom:1rem}.search-bar[data-v-b8e73506]{width:100%;padding:.65rem 1rem;background:var(--filter-input-bg);border:1px solid var(--filter-input-border);border-radius:.5rem;color:var(--text-primary);font-size:.9rem;transition:border-color .15s,background .15s}.search-bar[data-v-b8e73506]::placeholder{color:var(--text-muted)}.search-bar[data-v-b8e73506]:focus{outline:none;border-color:var(--accent);background:var(--bg-primary)}.waiting[data-v-b8e73506]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2rem;padding:6rem 0;color:var(--text-muted)}.spinner[data-v-b8e73506]{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin-b8e73506 .9s linear infinite}@keyframes spin-b8e73506{to{transform:rotate(360deg)}}.early-warning[data-v-b8e73506]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--warning-bg);border-left:3px solid var(--warning-text);border-radius:6px;color:var(--text-secondary);font-size:.8rem;margin-bottom:1rem}.guide-link[data-v-b8e73506]{margin-left:auto;background:none;border:1px solid var(--warning-text);color:var(--warning-text);border-radius:4px;padding:.25rem .65rem;font-size:.75rem;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.guide-link[data-v-b8e73506]:hover{background:var(--warning-text);color:var(--bg-primary)}.table-wrap[data-v-b8e73506]{overflow-x:auto;border-radius:.75rem;border:1px solid var(--border)}table[data-v-b8e73506]{width:100%;border-collapse:collapse;font-size:.8rem}thead tr[data-v-b8e73506]{background:var(--table-header-bg)}th[data-v-b8e73506]{padding:.65rem .6rem;text-align:left;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);white-space:normal;line-height:1.25}.th-num[data-v-b8e73506]{text-align:right}.th-center[data-v-b8e73506]{text-align:center}th.sortable[data-v-b8e73506]{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}th.sortable[data-v-b8e73506]:hover{color:var(--text-tertiary)}th.sortable.active[data-v-b8e73506]{color:var(--accent)}.sort-arrow[data-v-b8e73506]{display:inline-block;width:.8em;font-style:normal;color:var(--text-muted)}th.sortable.active .sort-arrow[data-v-b8e73506]{color:var(--accent)}tbody tr[data-v-b8e73506]{border-top:1px solid var(--table-row-border);transition:background .15s}tbody tr[data-v-b8e73506]:hover{background:var(--table-row-hover-bg)}tbody tr.top3[data-v-b8e73506]{background:var(--table-top3-bg)}td[data-v-b8e73506]{padding:.55rem .6rem;vertical-align:top}.rank[data-v-b8e73506]{width:3rem;text-align:center}.badge[data-v-b8e73506]{display:inline-block;width:1.6rem;height:1.6rem;line-height:1.6rem;border-radius:50%;text-align:center;font-size:.75rem;font-weight:700;background:var(--badge-bg);color:var(--badge-color)}.badge.rank-1[data-v-b8e73506]{background:var(--badge-rank1-bg);color:var(--badge-rank1-color)}.badge.rank-2[data-v-b8e73506]{background:var(--badge-rank2-bg);color:var(--badge-rank2-color)}.badge.rank-3[data-v-b8e73506]{background:var(--badge-rank3-bg);color:var(--badge-rank3-color)}.name[data-v-b8e73506]{font-weight:500;color:var(--text-accent);white-space:normal;max-width:10rem}.number[data-v-b8e73506]{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.cost[data-v-b8e73506]{color:var(--color-cost)}.sell[data-v-b8e73506]{color:var(--text-tertiary)}.profit[data-v-b8e73506]{color:var(--color-profit);font-weight:600}.pph[data-v-b8e73506]{color:var(--accent);font-weight:600}.volume[data-v-b8e73506]{color:var(--color-volume)}.range-cell[data-v-b8e73506]{text-align:center;white-space:nowrap;color:var(--text-secondary)}.vol-source[data-v-b8e73506]{display:inline-block;margin-left:.35rem;padding:.05rem .35rem;border-radius:.25rem;font-size:.65rem;font-weight:700;line-height:1;vertical-align:middle;letter-spacing:.04em}.vol-bz[data-v-b8e73506]{background:var(--vol-bz-bg);color:var(--vol-bz-text);border:1px solid var(--vol-bz-border)}.vol-ah[data-v-b8e73506]{background:var(--vol-ah-bg);color:var(--vol-ah-text);border:1px solid var(--vol-ah-border)}.recipe[data-v-b8e73506]{color:var(--color-secondary-text);font-size:.78rem;line-height:1.8;max-width:16rem}.ingredient[data-v-b8e73506]{display:block;white-space:normal;word-break:break-word}.load-more[data-v-b8e73506]{display:flex;justify-content:center;padding:1rem;border-top:1px solid var(--border)}.load-more button[data-v-b8e73506]{background:var(--load-more-btn-bg);color:var(--accent);border:1px solid var(--load-more-btn-border);border-radius:.5rem;padding:.5rem 1.25rem;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.load-more button[data-v-b8e73506]:hover{background:var(--border);border-color:var(--accent)}.warning-box[data-v-5df12766]{background:var(--warning-bg);padding:1rem;border-radius:6px;margin:1rem 0;border-left:3px solid var(--warning-text)}.warning-title[data-v-5df12766]{color:var(--warning-text)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh}.content-page{line-height:1.8;color:var(--text-secondary)}.content-page h2{font-size:1.3rem;font-weight:700;color:var(--text-accent);margin-bottom:1.25rem}.content-page h3{font-size:.95rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;margin-top:1.75rem;margin-bottom:.5rem}.content-page p{color:var(--text-tertiary);margin-bottom:.75rem}.content-page ul{list-style:none;padding:0;margin-bottom:.75rem}.content-page ul li{color:var(--text-tertiary);padding:.2rem 0 .2rem 1.25rem;position:relative}.content-page ul li:before{content:"–";position:absolute;left:0;color:var(--text-muted)}.content-page strong{color:var(--text-primary);font-weight:600}.content-page a{color:var(--accent);text-decoration:underline;text-decoration-color:var(--accent-dark);text-underline-offset:2px;transition:color .15s,text-decoration-color .15s}.content-page a:hover{color:var(--accent-light);text-decoration-color:var(--accent)}.content-page em{color:var(--accent);font-style:normal}.content-page code{background:var(--bg-secondary);color:var(--accent);padding:.1rem .4rem;border-radius:.25rem;font-size:.82rem}.app[data-v-4cb0068c]{width:90%;margin:0 auto;padding:1.5rem 0;transition:all .3s}.tabs[data-v-4cb0068c]{display:flex;gap:.25rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border);padding-bottom:0;transition:border-color .3s}.tabs button[data-v-4cb0068c]{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:.85rem;font-weight:600;padding:.6rem 1rem;cursor:pointer;margin-bottom:-1px;transition:color .15s,border-color .15s}.tabs button[data-v-4cb0068c]:hover{color:var(--text-tertiary)}.tabs button.active[data-v-4cb0068c]{color:var(--accent);border-bottom-color:var(--accent)}
