:root{--ink:#172d38;--muted:#667a82;--green:#158268;--line:#e3e9e8;--paper:#f4f7f5}
body{background:var(--paper);color:var(--ink);font-family:Segoe UI,Arial,sans-serif;font-size:14px;margin:0} .container-fluid{padding:0}.shell{max-width:1280px;margin:auto;padding:0 38px 28px}.masthead{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:24px 0}.brand{display:flex;align-items:center;gap:13px;font-size:12px;font-weight:700;letter-spacing:2px}.brand-mark{display:inline-grid;place-items:center;background:var(--ink);color:white;border-radius:9px;width:32px;height:32px;font-size:19px;letter-spacing:0}.brand-divider{color:#abb7b6}.channel{font-weight:500;color:var(--muted);letter-spacing:1px}.status-pill,.daily-badge{font-size:11px;border-radius:20px;background:#e7f1ed;color:#176c56;padding:7px 11px}.status-dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:6px}.hero{display:flex;justify-content:space-between;align-items:center;padding:38px 0 25px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--green)}h1{font-size:38px;font-weight:650;letter-spacing:-1.4px;margin:9px 0 10px}.hero p{color:var(--muted);font-size:15px;margin:0}.refresh-button{background:var(--ink);border:0;color:white;border-radius:7px;padding:12px 19px;font-weight:600}.refresh-button:hover,.refresh-button:focus{background:#26434e;color:white}.notice{background:#fff;border:1px solid var(--line);border-left:3px solid var(--green);border-radius:7px;padding:15px 19px;margin-bottom:20px}.notice-primary{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:13px}.daily-badge{padding:4px 9px;font-size:10px}.freshness-details{display:flex;flex-wrap:wrap;gap:7px 23px;margin-top:10px;font-size:11px;color:var(--muted)}.warning{border-left-color:#bd852e;background:#fffcf5}.stale-note{margin:8px 0 0;font-size:12px;color:#805b20}.toolbar{display:flex;align-items:center;gap:20px;padding:3px 0 7px}.toolbar .shiny-input-container{width:200px}.toolbar label{font-size:11px;color:var(--muted);font-weight:600}.form-control,.selectize-input{border:1px solid #d8e2de;box-shadow:none;border-radius:6px;min-height:38px}.toolbar-note{margin-left:auto;color:var(--muted);font-size:11px;line-height:1.8;text-align:right}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:23px}.kpi{background:white;border:1px solid var(--line);border-radius:10px;padding:19px 22px;min-height:135px}.kpi-featured{border-top:3px solid var(--green);padding-top:17px}.kpi-label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:600}.kpi-value{font-size:31px;letter-spacing:-1px;font-weight:650;margin:10px 0 7px;font-variant-numeric:tabular-nums}.kpi-change{color:var(--muted);font-size:11px}.help-wrap{position:relative;display:inline-flex;align-items:center;vertical-align:middle}.help-button{border:1px solid #b8c7c1;border-radius:50%;background:white;color:#4d6c61;font-size:10px;line-height:15px;padding:0;width:17px;height:17px;cursor:help}.help-button:focus-visible{outline:2px solid var(--green);outline-offset:3px}.help-tip{display:none;position:absolute;bottom:25px;left:-24px;width:235px;max-width:65vw;padding:12px 14px;background:var(--ink);color:#fff;border-radius:7px;font-size:12px;font-weight:400;line-height:1.6;letter-spacing:0;box-shadow:0 7px 20px #172d3820;z-index:20}.help-wrap:hover .help-tip,.help-wrap:focus-within .help-tip{display:block}.chart-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;margin-bottom:22px}.panel{background:white;border:1px solid var(--line);box-shadow:none;border-radius:10px;padding:22px;margin:0}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}h2{font-size:16px;font-weight:650;letter-spacing:-.3px;margin:0}.panel-title p{color:var(--muted);font-size:11px;margin:7px 0 0}.legend{display:flex;gap:13px;font-size:10px}.legend-green{color:var(--green)}.legend-blue{color:#648ab1}.muted,.table-count{font-size:11px;color:var(--muted)}.table-count{white-space:nowrap;background:var(--paper);padding:5px 9px;border-radius:5px}.daily-panel{margin-bottom:22px}.table-scroll{max-height:440px;overflow:auto}.table{font-size:12px;margin-bottom:0;white-space:nowrap}.table>thead>tr>th{position:sticky;top:0;background:white;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;letter-spacing:.25px;padding:12px 10px}.table>tbody>tr>td{border-top:1px solid #eff2f0;padding:12px 10px;font-variant-numeric:tabular-nums}.table>tbody>tr:first-child{background:#f1f7f4}.bottom-grid{display:grid;grid-template-columns:1fr 2fr;gap:20px}.bottom-grid p{color:var(--muted);font-size:12px;line-height:1.7;margin:10px 0 0}.buy-box-value{font-size:35px;font-weight:650;margin-top:16px;display:flex;align-items:center;gap:12px}.context-panel p{max-width:700px}footer{display:flex;justify-content:space-between;margin-top:28px;color:#83938d;font-size:10px;letter-spacing:1px}footer span{letter-spacing:0}.shiny-output-error-validation{color:var(--muted);font-size:13px;padding:12px}.shiny-output-error:not(.shiny-output-error-validation){color:#8b3f32}
@media(max-width:850px){.shell{padding:0 20px 22px}.chart-grid{grid-template-columns:1fr}.kpi-value{font-size:25px}.kpi{padding:16px}.legend{font-size:10px}.hero{padding-top:28px}h1{font-size:32px}.bottom-grid{grid-template-columns:1fr 1.5fr}}
.kpi:nth-child(3n) .help-tip{left:auto;right:-12px}
@media(max-width:640px){.shell{padding:0 14px 20px}.masthead{padding:18px 0}.brand{font-size:10px;gap:8px}.status-pill{display:none}.hero{gap:12px;align-items:flex-start}h1{font-size:29px}.hero p{font-size:12px}.refresh-button{font-size:11px;padding:10px 12px;margin-top:26px;white-space:nowrap}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi-value{font-size:23px}.kpi-label{font-size:11px}.kpi-change{font-size:10px}.toolbar{gap:12px}.toolbar .shiny-input-container{width:50%}.toolbar-note{display:none}.panel{padding:16px}.bottom-grid{grid-template-columns:1fr}.freshness-details{display:block}.freshness-details span{display:block;margin-top:4px}.notice{padding:13px}.panel-title{align-items:flex-start}.legend{flex-direction:column;gap:3px}footer{gap:15px;font-size:9px}.kpi:nth-child(3n) .help-tip{left:-24px;right:auto}.kpi:nth-child(2n) .help-tip{left:auto;right:-12px}}
