.holdings-summary{display:flex;justify-content:space-between;gap:2rem;align-items:center}.holdings-total{font-size:clamp(2.4rem,5vw,4rem);font-variant-numeric:tabular-nums}.holdings-security{text-align:right;font-size:.9rem;color:var(--muted,#526b76)}.holdings-security p{margin:.35rem 0}.holdings-sources{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.3rem 0}.holdings-sources .surface{margin:0}.holdings-sources h2{display:flex;justify-content:space-between;align-items:center;gap:1rem}.holdings-source-value{font-size:1.8rem;font-weight:700;display:block;margin:1rem 0;font-variant-numeric:tabular-nums}.holdings-status{display:inline-block;font:600 .78rem system-ui;padding:.3rem .6rem;border-radius:3px;background:#e3f1ed;color:#146953}.holdings-status.warn{background:#fff0db;color:#86500b}.holdings-filter{display:flex;align-items:center;gap:.6rem;font-size:.9rem}.holdings-filter select{width:auto;margin:0}.holdings-table th,.holdings-table td{padding:14px 10px;vertical-align:middle}.holdings-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.holdings-table small{display:block;color:#637784;margin-top:4px}.holdings-table .asset-code{font-weight:700}.holdings-table .token-id{max-width:170px;overflow-wrap:anywhere;font-size:.7rem}.holdings-checks{display:flex;gap:.5rem;flex-wrap:wrap;padding-bottom:1rem}.holdings-checks span{font-size:.85rem;border:1px solid #ccd9db;padding:.4rem .65rem}.holdings-sources p{font-size:.9rem;line-height:1.5}#checks details{border-bottom:1px solid #ccd9db;padding:1rem 0}#checks summary{font-weight:700;cursor:pointer}#checks li{margin:.7rem 0}.holdings-error{color:#a64327}@media(max-width:750px){.holdings-sources{grid-template-columns:1fr}.holdings-summary{display:block}.holdings-security{text-align:left;margin-top:1.5rem}.holdings-filter{display:block}.section-title{flex-wrap:wrap}.holdings-table{min-width:850px}}
.holdings-chart-controls{display:flex;gap:20px;margin:18px 0}.holdings-chart-controls label{display:flex;align-items:center;gap:10px;font-size:.9rem}.holdings-chart-controls select{width:auto;margin:0}.holdings-chart-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:20px 0}.holdings-chart-summary span{display:block;font-size:.85rem;color:#526b76}.holdings-chart-summary strong{display:block;font-size:1.45rem;margin-top:8px;font-variant-numeric:tabular-nums}.holdings-axis{fill:#526b76;font:12px system-ui}#holdings-chart{min-height:160px;width:100%;outline-offset:4px}#holdings-chart svg{display:block}#holdings-chart-hover{min-height:1.5em;font-variant-numeric:tabular-nums}.holdings-performance .segmented{flex-wrap:wrap}@media(max-width:750px){.holdings-chart-summary{grid-template-columns:1fr 1fr}.holdings-chart-controls{flex-wrap:wrap;gap:12px}.holdings-chart-controls label{display:block}.holdings-performance .section-title{display:block}.holdings-performance .segmented{margin-top:16px;display:flex;width:fit-content}#holdings-chart-hover{min-height:3em}}
/* Private exchange history: compact rows and independently scrollable table. */
.holdings-transactions .holdings-table td{padding:10px 12px;font-size:14px;vertical-align:middle}
.holdings-transactions .holdings-table{min-width:850px}
#transactions-chart svg{display:block;width:100%;max-height:260px;min-height:160px}
.transactions-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0}
#transactions-coverage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px}
#transactions-coverage p{margin:0;padding:7px 0;border-bottom:1px solid var(--line,#d7e2e5)}
@media(max-width:700px){#transactions-coverage{grid-template-columns:1fr}.transactions-pagination{font-size:13px}#transactions-chart svg{min-width:600px}#transactions-chart{overflow-x:auto}}

.history-binance{color:#00858b}.history-kraken{color:#8054b7}
.holdings-transactions .table-wrap{max-height:520px;overflow:auto}
/* Local SVG pies; private allocations never leave the authenticated page. */
.allocation-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin:20px 0}.allocation-card{min-width:0}.allocation-card+ .allocation-card{border-left:1px solid var(--line,#d7e2e5);padding-left:30px}.allocation-card h3{font-size:23px;margin:0 0 8px}.allocation-body{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);gap:16px;align-items:start;margin-top:22px}.allocation-figure svg{display:block;width:100%;max-width:240px;margin:auto}.allocation-center-label{fill:var(--muted,#526b76);font:14px system-ui}.allocation-center-value{fill:var(--ink,#152e38);font:600 20px system-ui;font-variant-numeric:tabular-nums}.allocation-segment{transition:stroke-width .15s}.allocation-segment.is-highlighted{stroke-width:36}.allocation-legend{min-width:0}.allocation-item{display:grid;grid-template-columns:minmax(60px,1fr) 54px 90px;gap:10px;align-items:center;border:0;border-bottom:1px solid var(--line,#d7e2e5);border-radius:0;padding:10px 0;width:100%;background:transparent;font:14px system-ui;color:inherit;text-align:left;min-height:40px}.allocation-item:hover,.allocation-item:focus-visible{background:rgba(8,127,131,.07)}.allocation-name{display:flex;gap:8px;align-items:center;min-width:0}.allocation-name span{overflow-wrap:anywhere}.allocation-name svg{flex-shrink:0}.allocation-percent,.allocation-amount{text-align:right;font-variant-numeric:tabular-nums}.allocation-percent{color:var(--muted,#526b76)}
@media(max-width:1250px){.allocation-body{grid-template-columns:1fr}.allocation-figure svg{max-width:220px}.allocation-item{grid-template-columns:minmax(70px,1fr) 60px 105px}}
@media(max-width:700px){.allocation-grid{grid-template-columns:1fr;gap:26px}.allocation-card+ .allocation-card{border-left:0;border-top:1px solid var(--line,#d7e2e5);padding-left:0;padding-top:24px}.allocation-body{margin-top:10px}.allocation-item{font-size:14px;grid-template-columns:minmax(60px,1fr) 55px 100px}}
