.collect-page{width:min(var(--max-width),calc(100vw - (var(--page-pad) * 2)));margin:18px auto 0;padding:0 0 80px}.collect-backup-banner button,.collect-import-actions button,.collect-cloud-panel button,.collect-cloud-dialog button,.collect-confirm-dialog button{min-height:32px;padding:0 10px;border:1px solid var(--sand-18);border-radius:var(--radius-sm);color:var(--text-faint);font-family:var(--font-head);font-size:12px;font-weight:900;letter-spacing:0.04em;transition:opacity var(--motion-fast),transform var(--motion-fast)}.collect-backup-banner button:hover,.collect-backup-banner button:focus-visible,.collect-import-actions button:hover,.collect-import-actions button:focus-visible,.collect-cloud-panel button:hover,.collect-cloud-panel button:focus-visible,.collect-cloud-dialog button:hover,.collect-cloud-dialog button:focus-visible,.collect-confirm-dialog button:hover,.collect-confirm-dialog button:focus-visible{transform:translateY(-1px);border-color:var(--bid);color:var(--bid);background:var(--accent-soft)}.collect-cloud-panel button:disabled,.collect-cloud-dialog button:disabled{opacity:0.55;cursor:wait;transform:none}.collect-open-add{min-width:40px;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;border:1px solid var(--bid);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--bid);font-family:var(--font-head);font-size:12px;font-weight:900;letter-spacing:0.04em;line-height:1;cursor:pointer;transition:opacity var(--motion-fast),transform var(--motion-fast)}.collect-open-add > span{font-size:22px;line-height:1}.collect-open-add strong{font:inherit}.collect-open-add:hover,.collect-open-add:focus-visible{transform:translateY(-1px);background:color-mix(in srgb,var(--bid) 18%,transparent)}.collect-backup-banner,.collect-import-panel,.collect-cloud-panel{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;padding:12px 14px;border:1px solid var(--sand-18);border-radius:var(--radius-sm);background:var(--pitch-50);color:var(--text)}.collect-backup-banner[hidden],.collect-import-panel[hidden],.collect-cloud-panel[hidden]{display:none}.collect-backup-banner span,.collect-import-panel strong{color:var(--text);font-family:var(--font-head);font-size:12px;font-weight:900;letter-spacing:0}.collect-backup-banner em{display:inline-block;margin-left:8px;color:var(--text-faint);font-family:var(--font-sans);font-size:12px;font-style:normal;font-weight:700}.collect-backup-banner > div,.collect-cloud-panel > div:not(.collect-cloud-copy),.collect-import-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.collect-import-panel{align-items:flex-start}.collect-import-panel p{margin:0;color:var(--text-faint);font-size:12px;font-weight:700;line-height:1.45}.collect-import-panel[data-status="error"]{border-color:color-mix(in srgb,var(--ask) 44%,transparent);background:color-mix(in srgb,var(--ask) 10%,transparent)}.collect-import-panel[data-status="ok"]{border-color:color-mix(in srgb,var(--bid) 36%,transparent)}.collect-cloud-panel{align-items:center}.collect-cloud-panel .collect-cloud-copy{display:grid;gap:4px;min-width:0}.collect-cloud-copy span{display:inline-flex;align-items:center;gap:8px;color:var(--text);font-family:var(--font-head);font-size:12px;font-weight:900;letter-spacing:0}.collect-cloud-copy i{width:8px;height:8px;border-radius:999px;background:var(--text-disabled);box-shadow:none}.collect-cloud-copy p{max-width:620px;margin:0;color:var(--text-faint);font-size:12px;font-weight:700;line-height:1.35}.collect-cloud-panel[data-status="ok"] .collect-cloud-copy i{background:var(--bid);box-shadow:none}.collect-cloud-panel[data-status="syncing"] .collect-cloud-copy i{background:var(--bid);animation:none}.collect-cloud-panel[data-status="error"]{border-color:color-mix(in srgb,var(--ask) 44%,transparent);background:color-mix(in srgb,var(--ask) 10%,transparent)}.collect-cloud-panel[data-status="error"] .collect-cloud-copy i{background:var(--ask);box-shadow:none}.collect-cloud-modal,.collect-confirm-modal{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:18px;background:var(--pitch-78)}.collect-cloud-modal[hidden],.collect-confirm-modal[hidden]{display:none}.collect-cloud-dialog,.collect-confirm-dialog{position:relative;width:min(440px,100%);border:1px solid var(--surface-edge-strong);border-radius:var(--radius);background:var(--bg-panel);padding:24px;box-shadow:none}.collect-confirm-modal{z-index:120}.collect-cloud-dialog h2,.collect-confirm-dialog h2{margin:0 0 8px;font-family:var(--font-head);font-size:22px;letter-spacing:0}.collect-cloud-dialog p,.collect-confirm-dialog p{margin:0 0 16px;color:var(--text-muted);font-size:14px;line-height:1.45}.collect-confirm-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.collect-confirm-actions button:first-child{border-color:var(--sand-30);color:var(--text)}.collect-confirm-actions button.is-destructive{border-color:color-mix(in srgb,var(--ask) 54%,transparent);color:var(--ask)}.collect-confirm-actions button.is-destructive:hover,.collect-confirm-actions button.is-destructive:focus-visible{border-color:var(--ask);background:color-mix(in srgb,var(--ask) 12%,transparent);color:var(--ask)}.collect-cloud-dialog form{display:grid;gap:12px}.collect-cloud-dialog label{display:grid;gap:6px;color:var(--text-faint);font-family:var(--font-head);font-size:12px;font-weight:900;letter-spacing:0.04em}.collect-cloud-dialog input{min-height:42px;border:1px solid var(--sand-18);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:14px/1.2 var(--font-sans);padding:0 12px}.collect-cloud-close{position:absolute;top:12px;right:12px;width:32px;padding:0}.collect-cloud-result{margin-top:14px !important}.collect-cloud-result[data-kind="error"]{color:var(--ask)}.collect-total-primary > strong:not(.collect-total-delta){margin-top:6px;color:var(--text);font-family:var(--font-mono);font-size:var(--fs-2xl);line-height:0.95;letter-spacing:-0.01em;font-variant-numeric:tabular-nums;white-space:nowrap;overflow-wrap:normal;word-break:normal}.collect-chart{position:relative;width:100%;min-height:260px;height:260px}.collect-chart-note{position:absolute;left:16px;right:16px;bottom:10px;margin:0;color:var(--text-faint);font-size:12px;line-height:1.35}.collect-page.is-empty .collect-chart{min-height:270px;height:270px;opacity:0}.collect-holdings-count{color:var(--text-faint);font-weight:700;font-family:var(--font-mono)}.collect-holdings-total{color:var(--text);font-family:var(--font-mono);font-size:14px;font-weight:900;letter-spacing:0.02em;font-variant-numeric:tabular-nums}.collect-holdings-total:empty{display:none}.collect-holdings-total[data-direction="up"]{color:var(--bid)}.collect-holdings-total[data-direction="down"]{color:var(--ask)}.collect-holdings-total[data-direction="flat"]{color:var(--text-muted)}.collect-empty-state{display:grid;place-items:center;min-height:260px;border:1px dashed var(--sand-18);background:var(--pitch-32);padding:34px 22px;text-align:center}.collect-empty-state[hidden]{display:none}.collect-holdings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}.collect-holdings-grid[hidden]{display:none}.collect-trash-panel[hidden]{display:none}.collect-trash-panel{border:1px solid var(--sand-18);border-radius:var(--radius-sm);background:var(--pitch-32)}.collect-trash-toggle{width:100%;min-height:38px;padding:0 12px;color:var(--text-faint);font-family:var(--font-head);font-size:11px;font-weight:900;letter-spacing:0.04em;text-align:left}.collect-trash-list{display:grid;gap:8px;padding:0 12px 12px}.collect-trash-list[hidden]{display:none}.collect-trash-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--sand-10)}.collect-trash-row span{display:grid;gap:2px;min-width:0}.collect-trash-row strong{color:var(--text);font-size:13px}.collect-trash-row em{color:var(--text-faint);font-size:12px;font-style:normal}.collect-trash-row button,.collect-trash-purge{min-height:30px;padding:0 10px;border:1px solid var(--sand-18);border-radius:var(--radius-sm);color:var(--text-faint);font-family:var(--font-head);font-size:12px;font-weight:900;letter-spacing:0.04em}.collect-trash-row button:hover,.collect-trash-row button:focus-visible{border-color:var(--bid);color:var(--bid);background:var(--accent-soft)}.collect-trash-purge{justify-self:end;color:var(--ask);border-color:color-mix(in srgb,var(--ask) 36%,transparent)}.collect-toast-region{position:fixed;z-index:160;left:50%;bottom:24px;width:min(520px,calc(100vw - 32px));transform:translateX(-50%);pointer-events:none}.collect-toast-region[hidden]{display:none}.collect-toast{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 12px 14px;border:1px solid var(--sand-18);border-radius:var(--radius-sm);background:var(--bg-deep);box-shadow:none;color:var(--text);pointer-events:auto;animation:collectToastIn var(--duration-panel) var(--ease) both}.collect-toast[data-kind="error"]{border-color:color-mix(in srgb,var(--ask) 48%,transparent)}.collect-toast span{min-width:0;color:var(--text);font-size:13px;font-weight:800;line-height:1.35}.collect-toast button{flex:0 0 auto;min-height:28px;padding:0 8px;border:1px solid var(--sand-18);border-radius:var(--radius-sm);color:var(--bid);font-family:var(--font-head);font-size:12px;font-weight:900;letter-spacing:0.04em}.collect-toast button:hover,.collect-toast button:focus-visible{background:var(--accent-soft);border-color:var(--bid)}@keyframes collectToastIn{from{opacity:0;transform:translateY(8px) scale(0.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:620px){.primary-nav{justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch}.collect-page{width:min(var(--max-width),calc(100vw - (var(--page-pad) * 2)));margin-top:0;padding-top:10px}.collect-open-add{padding:0 12px}.collect-open-add strong{display:inline;max-width:6ch;overflow:hidden;text-overflow:clip;white-space:nowrap}.collect-backup-banner,.collect-import-panel,.collect-cloud-panel{width:100%}.collect-backup-banner,.collect-import-panel,.collect-cloud-panel{flex-direction:column;align-items:flex-start}.collect-cloud-panel > div:not(.collect-cloud-copy){flex-wrap:wrap;justify-content:flex-start}.collect-chart{min-height:260px;height:260px}.collect-holdings-grid{grid-template-columns:1fr}}@media (max-width:1100px){:root{--page-pad:32px}}@media (max-width:700px){:root{--page-pad:18px;--header-h:56px}}@media (max-width:620px){:root{--header-h:56px}}