/* My Portfolio (web/my_portfolio.html). Tokens from the site frame's style.css; the
   table follows the performance page's Deals table (dense, tabular figures). */
.md-page{font-family:var(--font,'Inter',system-ui,sans-serif);color:var(--color-text,#111827);font-size:13px;line-height:1.45;max-width:1180px;margin:0 auto;padding:18px 16px 40px;font-variant-numeric:tabular-nums}
.md-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 14px}
.md-head h1{font-size:22px;letter-spacing:-.2px;margin:0 0 4px}
.md-sub{margin:0;color:var(--color-muted,#5b6472);font-size:12.5px}
.md-actions{display:flex;gap:8px;flex-shrink:0}
.md-btn{font:inherit;font-size:12px;font-weight:600;padding:6px 11px;border:1px solid var(--color-border,#dde2ed);border-radius:6px;background:#fff;color:var(--color-text,#111827);cursor:pointer}
.md-btn:hover{border-color:var(--color-brand,#0034A5);color:var(--color-brand,#0034A5)}
.md-btn:focus-visible,.md-rule select:focus-visible,.md-rule input:focus-visible,.md-link:focus-visible{outline:2px solid var(--color-accent-pill,#2563eb);outline-offset:1px}
.md-btn-quiet{color:var(--color-muted,#5b6472);border-color:transparent}
.md-btn-primary{background:var(--color-brand,#0034A5);border-color:var(--color-brand,#0034A5);color:#fff}
.md-btn-primary:hover{color:#fff;background:#002a85}

/* since your last visit */
.md-since{border:1px solid var(--color-border,#dde2ed);border-left:3px solid var(--color-brand,#0034A5);border-radius:8px;background:#fff;padding:12px 16px;margin:0 0 16px}
.md-since h2{font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:var(--color-muted,#5b6472);margin:0 0 8px;font-weight:600}
.md-since h2 span{text-transform:none;letter-spacing:0;font-weight:500}
.md-since ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2px 28px}
.md-since li{display:flex;gap:10px;padding:4px 0;border-bottom:1px solid var(--color-border-soft,#f0f0f0);align-items:baseline;min-width:0}
.md-since .x{min-width:0}
.md-since .d{color:var(--color-muted,#5b6472);font-size:11.5px;min-width:46px;font-variant-numeric:tabular-nums}
.md-since .t{font-weight:600;white-space:nowrap} .md-since .t a{border:0} .md-since .t a:hover{border-bottom:1px solid var(--color-brand,#0034A5)} .md-since .x{color:var(--color-muted,#5b6472)}
.md-since .breach{color:#b4232c;font-weight:700}
.md-since .quiet{color:var(--color-muted,#5b6472);margin:0}
.md-since a{color:inherit;text-decoration:none;border-bottom:1px solid #b9c6d8} .md-since a:hover{border-bottom-color:var(--color-brand,#0034A5)}

/* groups and table */
.md-group{background:#fff;border:1px solid var(--color-border,#dde2ed);border-radius:10px;margin:0 0 14px;overflow:hidden}
.md-group h2{font-size:13px;margin:0;padding:10px 14px;border-bottom:1px solid var(--color-border,#dde2ed);display:flex;justify-content:space-between;align-items:baseline}
.md-group h2 .n{font-weight:500;color:var(--color-muted,#5b6472);font-size:12px}
.md-scroll{overflow-x:auto}
table.md{width:100%;border-collapse:collapse;font-size:12.5px}
.md th{text-align:left;padding:8px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--color-muted,#5b6472);border-bottom:2px solid var(--color-border,#dde2ed);vertical-align:bottom;white-space:nowrap}
.md th .basis{display:block;font-size:10px;font-weight:500;text-transform:none;letter-spacing:0;margin-top:1px}
.md td{padding:8px 12px;border-bottom:1px solid var(--color-border,#dde2ed);vertical-align:middle;white-space:nowrap}
.md tbody tr:last-child td{border-bottom:none}
.md tbody tr:hover{background:var(--color-row-hover,#f0f7ff)}
.md td.num,.md th.num{text-align:right}
.md td.name{white-space:normal;min-width:180px}
.md td.name a{font-weight:600;color:inherit;text-decoration:none;border-bottom:1px solid #b9c6d8} .md td.name a:hover{border-bottom-color:var(--color-brand,#0034A5)}
.md td.name .sub{display:block;font-size:11px;color:var(--color-muted,#5b6472);font-weight:400;margin-top:1px}
.md td.when{color:var(--color-muted,#5b6472);font-size:12px}
.md .up{color:#b4232c} .md .dn{color:#1f7a4d} .md .flat{color:var(--color-muted,#5b6472)}
.md .delta{font-size:11.5px;margin-left:4px}
.md td.rule{min-width:150px}
.md .md-pill{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;padding:2px 6px;border-radius:3px;vertical-align:1px}
.md .md-pill.new{color:#1e40af;background:#dbeafe} .md .md-pill.breach{color:#fff;background:#b4232c} .md .md-pill.basis{color:var(--color-muted,#5b6472);background:#f1f5f9;font-weight:600;text-transform:none}
.md .md-pill.state{color:var(--color-muted,#5b6472);background:#f1f5f9}
.md-link{font:inherit;font-size:12px;color:var(--color-brand,#0034A5);background:none;border:0;padding:0;cursor:pointer;font-weight:600}
.md-link:hover{text-decoration:underline}
.md-rule{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.md-rule select,.md-rule input{font:inherit;font-size:12px;padding:3px 5px;border:1px solid var(--color-border,#dde2ed);border-radius:4px;background:#fff;color:inherit}
.md-rule input{width:64px;text-align:right}
.md-rule .ok{font-weight:600}

/* issuers you follow: a list, no figures */
.md-follow{list-style:none;margin:0;padding:0 6px}
.md-follow li{display:flex;align-items:center;gap:10px;padding:8px 8px;border-bottom:1px solid var(--color-border,#dde2ed)}
.md-follow li:last-child{border-bottom:none}
.md-follow .who{flex:1;min-width:0}
.md-follow .who a{font-weight:600;color:inherit;text-decoration:none;border-bottom:1px solid #b9c6d8} .md-follow .who a:hover{border-bottom-color:var(--color-brand,#0034A5)}
.md-follow .sub{display:block;font-size:11px;color:var(--color-muted,#5b6472);margin-top:1px}
.md-follow .x{font-size:12px;white-space:nowrap} .md-follow .x a{color:var(--color-brand,#0034A5);text-decoration:none;font-weight:600}
.md-none{margin:0;padding:12px 14px;color:var(--color-muted,#5b6472);font-size:12.5px}

/* states */
.md-state{background:#fff;border:1px solid var(--color-border,#dde2ed);border-radius:10px;padding:28px 20px;text-align:center;color:var(--color-muted,#5b6472)}
.md-state.error{border-color:#f3c6c9;background:#fff7f7;color:#8a1c23}
.md-empty h2{font-size:17px;margin:0 0 6px;color:var(--color-text,#111827)}
.md-empty p{max-width:560px;margin:0 auto 14px}
.md-empty .where{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.md-empty .where a{font-size:12.5px;font-weight:600;color:var(--color-brand,#0034A5);text-decoration:none;border:1px solid var(--color-border,#dde2ed);border-radius:6px;padding:7px 12px;background:#fff}
.md-empty .where a:hover{border-color:var(--color-brand,#0034A5)}
.md-empty .demo{display:inline-flex;align-items:center;gap:6px;margin-top:14px;color:var(--color-muted,#5b6472);font-size:12px}
.md-spin{display:inline-block;width:14px;height:14px;border:2px solid var(--color-border,#dde2ed);border-top-color:var(--color-brand,#0034A5);border-radius:50%;animation:mdspin .8s linear infinite;vertical-align:-2px;margin-right:6px}
@keyframes mdspin{to{transform:rotate(360deg)}}
.md-foot{color:var(--color-muted,#5b6472);font-size:11.5px;margin:4px 2px 0}

/* phones: the table becomes stacked cards */
@media (max-width:640px){
  .md-page{padding:12px 12px 32px}
  .md-head{flex-direction:column;gap:8px}
  .md-since ul{grid-template-columns:1fr}
  .md thead{display:none}
  .md,.md tbody,.md tr,.md td{display:block;white-space:normal}
  .md tr{padding:8px 12px;border-bottom:1px solid var(--color-border,#dde2ed)}
  .md td{padding:2px 0;border:0;display:flex;justify-content:space-between;gap:12px}
  .md td.num::before,.md td.when::before,.md td.rule::before{content:attr(data-l);color:var(--color-muted,#5b6472);font-size:11px;text-transform:uppercase;letter-spacing:.3px}
  .md td.name{display:block;min-width:0;padding:0 36px 4px 0}
  .md td[data-l="Type"]{display:block;padding:0 0 4px} .md td[data-l="Type"] .md-pill{display:inline-block}
  .md td.star{position:absolute;right:10px;top:6px;padding:0} .md tr{position:relative}
  .md td .vd{white-space:nowrap}
  .md td.num{text-align:right}
}
@media (prefers-reduced-motion:reduce){.md-spin{animation:none}}
