:root{color:#1b2522;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;font-weight:400;line-height:1.45}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #d2a73e}.app-shell{color:#1b2522;background:#f5f7f4;min-height:100vh}.topbar{background:#fbfcf8;border-bottom:1px solid #d9e0da;justify-content:space-between;align-items:center;gap:20px;padding:22px 28px;display:flex}.brand{align-items:center;gap:14px;min-width:0;display:flex}.brand-mark{color:#f7e7ae;background:#123c34;border-radius:8px;place-items:center;width:46px;height:46px;font-size:14px;font-weight:800;display:grid}.brand h1,.panel-title h2,.metric-card h2,.wide-panel h2{letter-spacing:0;color:#10231f;margin:0;font-size:24px;font-weight:750;line-height:1.15}.brand p,.panel-title p,.metric-card p,.lookup-card span{color:#60706a;margin:4px 0 0;font-size:13px}.icon-button,.primary-button,.tab,.segmented button{color:#24342f;cursor:pointer;background:#fff;border:1px solid #c9d3cc;transition:background .14s,border-color .14s,color .14s}.icon-button{border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.icon-button:hover,.primary-button:hover,.segmented button:hover,.tab:hover{background:#eef4ef;border-color:#9db1a6}.tabs{background:#fff;border-bottom:1px solid #d9e0da;align-items:center;gap:6px;padding:12px 28px;display:flex;overflow-x:auto}.tab{white-space:nowrap;border-radius:8px;align-items:center;gap:8px;height:36px;padding:0 12px;display:inline-flex}.tab.active,.segmented button.active{color:#fff;background:#123c34;border-color:#123c34}.control-strip{background:#f9fbf6;border-bottom:1px solid #d9e0da;align-items:center;gap:10px;padding:14px 28px;display:flex}.segmented{background:#edf2ee;border:1px solid #d5ddd7;border-radius:8px;grid-template-columns:repeat(7,minmax(54px,1fr));gap:4px;padding:4px;display:inline-grid}.segmented button{border-radius:6px;height:32px;font-weight:700}.select-wrap,.search-wrap{color:#5f6e68;background:#fff;border:1px solid #c9d3cc;border-radius:8px;align-items:center;gap:8px;height:40px;padding:0 10px;display:inline-flex}.select-wrap select,.search-wrap input{color:#14251f;min-width:130px;font:inherit;background:0 0;border:0;outline:0}.search-wrap{margin-left:auto}.search-wrap.large{flex:1;margin-left:0}.search-wrap.large input{width:100%}.alert{color:#8b2520;background:#fff1f0;border:1px solid #e3a4a1;border-radius:8px;margin:16px 28px 0;padding:12px 14px}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px 28px 28px;display:grid}.metric-card,.wide-panel,.panel,.lookup-card{background:#fff;border:1px solid #d7dfd8;border-radius:8px;box-shadow:0 1px 2px #1c2d260d}.metric-card{padding:16px}.metric-topline,.metric-row,.panel-heading,.source-badge,.lookup-row{align-items:center;gap:10px;display:flex}.metric-topline{color:#40635a;justify-content:space-between;font-weight:800}.freshness-pill{border-radius:7px;justify-content:center;align-items:center;min-width:56px;height:24px;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.freshness-pill.fresh{color:#12633c;background:#e4f6ed}.freshness-pill.stale{color:#9a321e;background:#fff0ec}.freshness-note{color:#8a3a22;font-weight:700}.metric-card h2{margin-top:12px;font-size:27px}.metric-row{color:#384a44;justify-content:space-between;margin-top:14px;font-size:13px;font-weight:700}.source-link,.source-badge a{color:#226b5e;align-items:center;gap:4px;font-weight:700;text-decoration:none;display:inline-flex}.source-link{margin-top:12px;font-size:13px}.wide-panel{grid-column:1/-1;padding:16px}.panel{margin:18px 28px 28px;padding:16px}.panel-heading{margin-bottom:12px}.panel-title{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.source-badge{color:#36564e;background:#edf5ef;border-radius:8px;flex-wrap:wrap;justify-content:flex-start;margin-bottom:12px;padding:8px 10px;font-size:13px;font-weight:700}.table-wrap{border:1px solid #e1e7e2;border-radius:8px;overflow:auto}table{border-collapse:collapse;background:#fff;width:100%;min-width:860px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #edf1ee;padding:10px 12px;font-size:13px}th{z-index:1;color:#43544f;text-transform:uppercase;background:#f2f6f1;font-size:12px;position:sticky;top:0}td{color:#182822}tr:hover td{background:#fbfdf9}tr.row-buy td{background:#f3fbf6}tr.row-sell td{background:#fff7f4}tr.row-value td{background:#f7f9fc}tr.row-positive td{background:#f2faf4}tr.row-negative td{background:#fff6f4}tr.row-buy:hover td{background:#eaf8ef}tr.row-sell:hover td{background:#fff0ec}tr.row-value:hover td{background:#eef3f8}tr.row-positive:hover td{background:#e7f6eb}tr.row-negative:hover td{background:#ffebe6}.compact th,.compact td{padding:8px 10px;font-size:12px}.muted{color:#87948f}code{color:#2f463f;background:#eef2ef;border-radius:5px;padding:2px 5px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.pill{color:#45544e;background:#eef2ef;border-radius:7px;justify-content:center;align-items:center;min-width:72px;height:24px;font-size:12px;font-weight:800;display:inline-flex}.pill.buy,.pill.added,.pill.matched{color:#12633c;background:#e4f6ed}.pill.sell,.pill.removed,.pill.unmatched{color:#9a321e;background:#fff0ec}.pill.value_up{color:#12633c;background:#e4f6ed}.pill.value_down{color:#9a321e;background:#fff0ec}.signed{border-radius:6px;align-items:center;min-height:22px;padding:0 7px;font-weight:800;display:inline-flex}.signed.positive{color:#11613a;background:#e2f5e8}.signed.negative{color:#a0301d;background:#ffece8}.signed.neutral{color:#53615c;background:#eef2ef}.top-change-list{flex-wrap:wrap;gap:5px;min-width:220px;display:flex}.top-change{color:#45544e;white-space:nowrap;background:#eef2ef;border-radius:7px;align-items:center;min-height:24px;padding:2px 7px;font-size:12px;font-weight:800;display:inline-flex}.top-change.buy{color:#12633c;background:#e4f6ed}.top-change.sell{color:#9a321e;background:#fff0ec}.lookup-row{margin-bottom:14px}.lookup-controls{grid-template-columns:minmax(260px,1fr) minmax(150px,180px) minmax(150px,180px) auto;gap:10px;margin-bottom:14px;display:grid}.activity-controls{grid-template-columns:minmax(240px,1fr) minmax(210px,auto) minmax(150px,180px) minmax(150px,180px) auto;gap:10px;margin-bottom:14px;display:grid}.scope-toggle{background:#edf2ee;border:1px solid #c9d3cc;border-radius:8px;grid-template-columns:repeat(3,minmax(62px,1fr));gap:4px;height:40px;padding:4px;display:inline-grid}.scope-toggle button{color:#42554e;text-transform:capitalize;cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:12px;font-weight:800}.scope-toggle button.active{color:#fff;background:#123c34}.date-input{color:#5f6e68;white-space:nowrap;background:#fff;border:1px solid #c9d3cc;border-radius:8px;align-items:center;gap:8px;height:40px;padding:0 10px;display:inline-flex}.date-input span{text-transform:uppercase;font-size:12px;font-weight:800}.date-input input{color:#14251f;background:0 0;border:0;outline:0;min-width:112px}.activity-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:0 0 16px;display:grid}.audit-summary{margin-top:4px}.activity-summary div{background:#f8fbf7;border:1px solid #d7dfd8;border-radius:8px;padding:12px}.activity-summary div.positive-card{background:#eff9f2;border-color:#badfc7}.activity-summary div.negative-card{background:#fff4f1;border-color:#efc8c0}.activity-summary div.neutral-card{background:#f8fbf7;border-color:#d7dfd8}.activity-summary strong{color:#123c34;font-size:22px;line-height:1.15;display:block}.activity-summary .positive-card strong{color:#11613a}.activity-summary .negative-card strong{color:#9a321e}.activity-summary span{color:#60706a;text-transform:uppercase;margin-top:4px;font-size:12px;font-weight:700;display:block}.primary-button{color:#fff;background:#123c34;border-color:#123c34;border-radius:8px;align-items:center;gap:7px;height:40px;padding:0 14px;font-weight:800;display:inline-flex}.primary-button:hover{color:#fff;background:#0d3029;border-color:#0d3029}.lookup-groups{gap:12px;display:grid}.lookup-card{padding:12px}.lookup-card-head{justify-content:space-between;gap:14px;margin-bottom:10px;display:flex}.lookup-card strong{color:#132720;display:block}.lookup-period{color:#60706a;flex-wrap:wrap;justify-content:flex-end;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.lookup-period span{margin:0}.lookup-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 12px;display:grid}.lookup-stats div{background:#f8fbf7;border:1px solid #d7dfd8;border-radius:8px;min-width:0;padding:10px}.lookup-stats strong{overflow-wrap:anywhere;color:#123c34;font-size:17px;line-height:1.15}.lookup-stats span{color:#60706a;text-transform:uppercase;margin-top:4px;font-size:11px;font-weight:800;display:block}.lookup-card .table-wrap{margin-top:10px;margin-bottom:12px}.empty-state{color:#62706b;background:#fbfcf8;border:1px dashed #c9d3cc;border-radius:8px;place-items:center;min-height:150px;display:grid}@media (width<=980px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.control-strip{flex-wrap:wrap;align-items:stretch}.search-wrap{flex:220px;margin-left:0}}@media (width<=720px){.topbar,.tabs,.control-strip,.dashboard-grid,.panel{padding-left:14px;padding-right:14px}.topbar{align-items:flex-start}.brand h1{font-size:20px}.brand-mark{width:40px;height:40px}.dashboard-grid{grid-template-columns:1fr}.segmented{grid-template-columns:repeat(3,1fr);width:100%}.select-wrap,.search-wrap,.lookup-controls,.activity-controls,.scope-toggle{box-sizing:border-box;width:100%}.lookup-controls,.activity-controls,.activity-summary,.lookup-stats{grid-template-columns:1fr}.lookup-card-head,.lookup-period{justify-content:flex-start}.select-wrap select,.search-wrap input{flex:1}}
