.treasury-public{padding-bottom:55px}
.tp-hero{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:38px;align-items:center;padding:62px 0 42px}
.tp-heading h1{font-size:clamp(40px,4.1vw,68px);line-height:1.08;letter-spacing:-2px;margin:12px 0 17px}
.tp-heading .lead{max-width:950px;font-size:clamp(17px,1.4vw,22px)}
.tp-hero-note{max-width:910px;color:#5c6e85;font-size:14px;line-height:1.65}
.tp-date-panel{background:linear-gradient(135deg,#0e2f55,#14518a);border-radius:20px;color:#fff;padding:25px;box-shadow:0 12px 30px rgba(20,61,110,.17)}
.tp-date-panel>span{display:block;letter-spacing:.09em;font-size:11px;font-weight:900;color:#add4fc}
.tp-date-panel strong{display:block;font-size:22px;margin-top:12px;line-height:1.25}
.tp-date-panel p{font-size:12px;color:#c7deef;line-height:1.55}
.tp-date-panel button{background:#fff;border:0;color:#153f6c;cursor:pointer}
.tp-error{padding:14px 18px;border:1px solid #e7bbbb;background:#fff1f1;color:#962a2a;border-radius:12px;margin-bottom:15px}
.tp-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px}
.tp-kpis article{background:#fff;border:1px solid #dae5f2;border-radius:17px;padding:22px;box-shadow:0 8px 25px rgba(25,55,98,.04)}
.tp-kpis small{color:#677e9a;text-transform:uppercase;font-weight:900;letter-spacing:.055em;font-size:11px}
.tp-kpis strong{display:block;color:#123e70;font-size:clamp(26px,2.6vw,36px);letter-spacing:-1px;margin:10px 0 6px;font-variant-numeric:tabular-nums}
.tp-kpis span{font-size:12px;color:#68788f}
.tp-positive{color:#b24437!important}.tp-negative{color:#126e61!important}
.tp-card{background:#fff;border:1px solid #dce6f3;border-radius:20px;box-shadow:0 8px 28px rgba(21,55,99,.05);overflow:hidden;margin-bottom:22px}
.tp-panel-title{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:27px 28px 20px}
.tp-panel-title h2{font-size:clamp(23px,2vw,32px);margin:6px 0 5px;letter-spacing:-.8px}
.tp-panel-title p{color:#64758c;font-size:13px;line-height:1.55;margin:0}
.tp-legend{display:flex;flex-wrap:wrap;gap:18px;font-size:12px;color:#4f617b}
.tp-legend span{display:flex;align-items:center;gap:8px}
.tp-legend i{width:22px;border-top:3px solid #1468cc;display:inline-block}
.tp-legend i.tp-dot-previous{border-color:#9daac0;border-top-style:dashed}
.tp-chart{height:315px;margin:0 18px 18px;padding:0 8px}
.tp-chart svg{width:100%;height:100%;display:block}
.tp-empty{display:grid;place-items:center;height:100%;color:#68788f;font-size:14px}
.tp-table-wrap{overflow-x:auto}
.tp-table{border-collapse:collapse;width:100%;min-width:1100px;font-size:14px}
.tp-table th{background:#f5f8fc;text-transform:uppercase;letter-spacing:.055em;font-size:11px;color:#607794;padding:16px 14px;text-align:left;white-space:nowrap}
.tp-table th:not(:first-child),.tp-table td:not(:first-child){text-align:right}
.tp-table td{padding:16px 14px;border-top:1px solid #edf1f6;color:#25415d;white-space:nowrap;font-variant-numeric:tabular-nums}
.tp-table tbody tr:hover{background:#f9fbff}
.tp-table td:first-child{font-weight:900;font-size:16px;color:#10385f}
.tp-table .tp-mainrate{font-weight:900;font-size:16px;color:#1259ad}
.tp-table .tp-id{font-family:ui-monospace,Consolas,monospace;font-size:12px}
.tp-table .tp-empty-row{text-align:center!important;padding:40px 20px;color:#6b7a90}
.tp-source-label{border:1px solid #dce7f3;background:#f5f9fd;border-radius:999px;padding:9px 13px;font-size:12px;color:#54708a;white-space:nowrap}
.tp-foot-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:25px 0}
.tp-explainer{padding:25px;background:#f9fbfe;border:1px solid #dde7f2;border-radius:17px}
.tp-explainer h3{margin:0 0 11px;font-size:19px;color:#16395e}
.tp-explainer p{color:#5a6b82;line-height:1.7;margin:0;font-size:14px}
.tp-disclosure{padding:19px 22px;border:1px solid #d9e7f2;background:#edf4fb;border-radius:15px;font-size:12px;color:#556b80;line-height:1.7}
.tp-disclosure a{color:#1769e8;text-decoration:underline;text-underline-offset:2px}
#tpWarnings{margin-top:8px}
#tpWarnings p{margin:4px 0;font-size:11px}
@media(max-width:1000px){.tp-hero{grid-template-columns:1fr}.tp-date-panel{max-width:420px}.tp-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.tp-hero{padding:34px 0 27px}.tp-heading h1{letter-spacing:-1.3px}.tp-kpis{gap:10px}.tp-kpis article{padding:16px}.tp-panel-title{padding:21px;flex-direction:column;align-items:flex-start}.tp-chart{height:260px}.tp-foot-grid{grid-template-columns:1fr}}
@media(max-width:440px){.tp-kpis{grid-template-columns:1fr 1fr}.tp-kpis strong{font-size:23px}}

/* Public Treasury Portfolio Studio; supplements original tracker styles. */
.tp-portfolio-jump{display:inline-flex;gap:12px;align-items:center;justify-content:center;margin-top:20px;padding:12px 16px;border-radius:12px;border:1px solid #b6cbe6;color:#155da6;background:#f1f7ff;font-size:14px;font-weight:800;transition:background .15s ease}
.tp-portfolio-jump:hover,.tp-portfolio-jump:focus-visible{background:#e2efff}
.tp-portfolio{scroll-margin-top:92px}
.tp-pf-heading{padding-bottom:25px}
.tp-pf-heading h2{font-size:clamp(26px,2.6vw,36px)}
.tp-pf-heading p{max-width:850px;font-size:15px}
.tp-pf-content{padding:0 27px 27px}
.tp-pf-controls{display:grid;grid-template-columns:minmax(210px,320px) minmax(0,1fr);gap:25px;align-items:end;background:#f5f9fe;padding:23px;border-radius:15px;border:1px solid #dbe8f7}
.tp-pf-field label{display:block;font-size:13px;font-weight:850;color:#1e3d61;margin-bottom:9px}
.tp-pf-field small{display:block;margin-top:7px;font-size:11px;color:#667e98}
.tp-pf-money{display:flex;align-items:center;min-height:44px;background:#fff;border:1px solid #c5d7e8;border-radius:10px;padding:0 14px;gap:7px;font-variant-numeric:tabular-nums}
.tp-pf-money span{color:#64788d;font-weight:900}
.tp-pf-money input{border:0;min-width:0;width:100%;font:inherit;font-size:20px;font-weight:850;color:#163f6b;background:transparent;padding:10px 0;outline:0}
.tp-pf-money:focus-within{outline:2px solid #8fbdf3;outline-offset:1px}
.tp-pf-shock-field{padding-bottom:6px}
.tp-pf-shock-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.tp-pf-shock-heading strong{font-size:20px;color:#1159a0;white-space:nowrap;font-variant-numeric:tabular-nums}
.tp-pf-shock-field input[type=range]{width:100%;display:block;margin:6px 0 10px;accent-color:#1769e8;cursor:pointer}
.tp-pf-shock-ticks{display:flex;justify-content:space-between;color:#647994;font-size:11px}
.tp-pf-presets{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:24px 0 20px}
.tp-pf-presets span{font-size:13px;color:#607b98;font-weight:800;margin-right:4px}
.tp-pf-presets button{font:inherit;font-size:12px;font-weight:800;border:1px solid #c9d9ea;border-radius:999px;padding:10px 13px;cursor:pointer;background:#fff;color:#284867}
.tp-pf-presets button[aria-pressed=true]{background:#123e6c;color:#fff;border-color:#123e6c}
.tp-pf-presets button:hover{border-color:#2475bb}
.tp-pf-allocation-header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:12px 0 11px}
.tp-pf-allocation-header strong{display:block;font-size:18px;color:#173e68}
.tp-pf-allocation-header span{display:block;color:#687b91;font-size:12px;margin-top:5px}
.tp-pf-allocation-total{font-size:14px;font-weight:900;white-space:nowrap;color:#155fa5;font-variant-numeric:tabular-nums}
.tp-pf-allocation-total.tp-pf-invalid{color:#b43e3e}
.tp-pf-progress{height:7px;overflow:hidden;border-radius:999px;background:#e5edf7;margin-bottom:14px}
.tp-pf-progress>div{height:100%;background:#1769e8;transition:width .15s ease;width:100%}
.tp-pf-progress.tp-pf-progress-over>div{background:#c24949}
.tp-pf-alert{padding:12px 14px;margin:12px 0 16px;font-size:13px;border-radius:11px;border:1px solid #d4e2f2;background:#f3f8fd;color:#355b80}
.tp-pf-alert[data-variant="warning"]{border-color:#ecd5b5;background:#fff8ee;color:#8b4d1c}
.tp-pf-alert[data-variant="ok"]{border-color:#d5e7f2;background:#f4f9fc;color:#395e7a}
.tp-pf-table{min-width:1150px}
.tp-pf-table th{padding:14px 12px}
.tp-pf-table td{padding:10px 12px}
.tp-pf-table td:first-child{white-space:nowrap}
.tp-pf-table tr[data-selected="false"] td{color:#8a9aaa}
.tp-pf-table tr[data-selected="false"] td:first-child{color:#60758b}
.tp-pf-table .tp-pf-amount-input{border:1px solid #b7ccdf;border-radius:8px;padding:7px 8px;width:79px;text-align:right;background:#fff;color:#124071;font:inherit;font-variant-numeric:tabular-nums}
.tp-pf-table .tp-pf-amount-input:focus-visible{outline:2px solid #65a5ea;outline-offset:1px}
.tp-pf-table .tp-pf-input-wrap{display:flex;gap:4px;align-items:center;justify-content:flex-end}
.tp-pf-table .tp-pf-input-wrap span{font-size:13px;color:#607b97}
.tp-pf-table .tp-pf-num{font-variant-numeric:tabular-nums}
.tp-pf-table .tp-pf-cusip{font-family:ui-monospace,Consolas,monospace;font-size:12px;color:#587089}
.tp-pf-table .tp-pf-instrument-kind{display:block;font-size:11px;font-weight:500;color:#77899b;margin-top:3px}
.tp-pf-table .tp-pf-mtm-negative{color:#a62c38;font-weight:750}
.tp-pf-table .tp-pf-mtm-positive{color:#0b7865;font-weight:750}
.tp-pf-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:23px 0 13px}
.tp-pf-result{min-width:0;padding:20px 17px;border:1px solid #dce6f3;border-radius:15px;background:#f9fbfe}
.tp-pf-result small{display:block;color:#66809a;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}
.tp-pf-result strong{display:block;overflow-wrap:anywhere;color:#1a436f;font-size:clamp(24px,2vw,32px);font-weight:900;margin:8px 0 6px;font-variant-numeric:tabular-nums;letter-spacing:-.6px}
.tp-pf-result span{display:block;color:#64788f;font-size:11px;line-height:1.55}
.tp-pf-result-total{background:#eef5fd;border-color:#c4d8ee}
.tp-pf-result-total strong{color:#135baa}
.tp-pf-result strong.tp-pf-loss{color:#b52a3d}
.tp-pf-risk-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:10px 0 26px}
.tp-pf-risk-strip>div{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #dde7f1;padding:10px 4px 13px}
.tp-pf-risk-strip small{font-size:12px;color:#6b7f98;line-height:1.4}
.tp-pf-risk-strip strong{font-size:15px;font-weight:850;color:#1b4671;white-space:nowrap;font-variant-numeric:tabular-nums}
.tp-pf-stress{border-top:1px solid #dce6f3;padding-top:24px}
.tp-pf-stress-header h3{font-size:20px;color:#193e64;margin:0 0 4px}
.tp-pf-stress-header p{font-size:12px;color:#667991;margin:0 0 15px;line-height:1.6}
.tp-pf-stress-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;color:#65758c;font-size:13px}
.tp-pf-stress-grid>div{min-width:0;border:1px solid #dce5ef;border-radius:12px;padding:13px 10px;text-align:center}
.tp-pf-stress-grid>div[data-current="true"]{border-color:#6aa8e8;background:#f1f7ff}
.tp-pf-stress-grid small{display:block;font-size:11px;color:#647c98;margin-bottom:8px}
.tp-pf-stress-grid strong{display:block;color:#124b85;font-size:clamp(17px,1.5vw,23px);font-variant-numeric:tabular-nums}
.tp-pf-stress-grid strong.tp-pf-loss{color:#b52a3d}
.tp-pf-stress-grid span{display:block;font-size:11px;color:#647d93;margin-top:5px;font-variant-numeric:tabular-nums}
.tp-pf-method{margin-top:23px;padding:19px 21px;border-radius:14px;border:1px solid #dbe6f1;background:#f9fbfd}
.tp-pf-method>strong{font-size:14px;color:#21476e}
.tp-pf-method p{font-size:12px;line-height:1.7;color:#60718a;margin:8px 0 0}
.tp-pf-method a{color:#1769e8;text-decoration:underline}
@media(max-width:1030px){.tp-pf-results{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-pf-risk-strip{grid-template-columns:1fr}.tp-pf-stress-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:690px){.tp-pf-content{padding:0 18px 20px}.tp-pf-controls{grid-template-columns:1fr;padding:18px;gap:19px}.tp-pf-results{gap:9px}.tp-pf-result{padding:15px 13px}.tp-pf-result strong{font-size:22px}.tp-pf-stress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-pf-allocation-header{align-items:flex-start}.tp-pf-allocation-header strong{font-size:15px}.tp-pf-presets button{padding:8px 11px}}
