:root{color:#172026;background:#f4f6f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f4f6f3}button{align-items:center;background:#0f766e;border:1px solid #0f766e;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font:inherit;font-weight:700;gap:8px;min-height:42px;padding:0 14px}button:hover:not(:disabled){background:#0b5f59}button:disabled{cursor:not-allowed;opacity:.55}input{background:#fff;border:1px solid #b8c4bd;border-radius:8px;color:#172026;font:inherit;min-height:42px;padding:0 12px;width:100%}input:focus{border-color:#0f766e;outline:3px solid rgba(15,118,110,.16)}.button-muted{background:#fff;border-color:#c8d0ca;color:#1e2a31}.button-muted:hover:not(:disabled){background:#eef2ef}.app-shell{margin:0 auto;max-width:1240px;padding:24px}.auth-shell{align-items:center;display:flex;min-height:100vh}.auth-panel{background:#fff;border:1px solid #dce3de;border-radius:8px;box-shadow:0 1px 2px #15232b0d;margin:0 auto;max-width:420px;padding:24px;width:100%}.auth-panel h1{font-size:2rem;letter-spacing:0;line-height:1.1;margin:0}.auth-copy{color:#52616b;line-height:1.5;margin:12px 0 20px}.auth-form{display:grid;gap:14px}.auth-form label{color:#34424b;display:grid;font-weight:800;gap:7px}.auth-panel .error-strip{margin:16px 0 0}.safety-banner,.read-only-banner{align-items:center;border-radius:8px;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px;padding:14px 16px}.safety-banner{background:#fff1d6;border:1px solid #e8b653;color:#4a3105}.read-only-banner{background:#e9f7ff;border:1px solid #99cceb;color:#124d68}.read-only-callout{align-items:center;background:#eef8f5;border:1px solid #b9ded2;border-radius:8px;color:#0f4f49;display:flex;gap:10px;margin-bottom:14px;padding:12px 14px}.app-header{align-items:end;display:flex;gap:20px;justify-content:space-between;margin-bottom:24px}.app-header h1,.metric-card h2,.panel h2,.feed-row h3{letter-spacing:0;margin:0}.app-header h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1}.header-copy{color:#52616b;line-height:1.55;margin:12px 0 0;max-width:720px}.header-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.compact-actions{gap:8px}.recording-grid{margin-bottom:16px}.eyebrow{color:#66747d;font-size:.78rem;font-weight:800;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}.error-strip{background:#fff5f5;border:1px solid #f2a8a8;border-radius:8px;color:#8d1b1b;margin-bottom:18px;padding:12px 14px}.summary-grid,.content-grid{display:grid;gap:16px;margin-bottom:16px}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr)}.metric-card,.panel{background:#fff;border:1px solid #dce3de;border-radius:8px;box-shadow:0 1px 2px #15232b0d}.metric-card{min-height:170px;padding:18px}.metric-card h2{font-size:1.75rem;line-height:1.1}.metric-card p{color:#5d6b74;line-height:1.45}.metric-label{color:#6a7680;font-size:.86rem;font-weight:800;margin:0 0 10px;text-transform:uppercase}.metric-icon{align-items:center;background:#e6f4ef;border:1px solid #b9ded2;border-radius:8px;color:#0f766e;display:inline-flex;height:42px;justify-content:center;margin-bottom:14px;width:42px}.status-card{border-top:4px solid #276ef1}.panel{margin-bottom:16px;padding:18px}.panel-heading{align-items:center;display:flex;gap:14px;justify-content:space-between;margin-bottom:14px}.panel-heading h2{font-size:1.15rem}.compact-heading{margin-bottom:8px}.compact-heading h3{font-size:1rem;letter-spacing:0;margin:0}.data-quality-section{border-top:1px solid #e5eae6;margin-top:4px;padding-top:16px}.feed-list{display:grid}.feed-row{border-top:1px solid #e5eae6;display:grid;gap:12px;grid-template-columns:12px minmax(0,1fr);padding:16px 0}.feed-row:first-child{border-top:0;padding-top:0}.feed-row h3{font-size:1rem;margin-bottom:6px}.feed-row p{color:#52616b;line-height:1.5;margin:0}.decision-dot{border-radius:999px;height:10px;margin-top:6px;width:10px}.decision-dot.approved{background:#16a34a}.decision-dot.skipped{background:#d97706}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.tag-row span,.small-pill{background:#eef2ff;border:1px solid #cfd8ff;border-radius:999px;color:#26367a;display:inline-flex;font-size:.82rem;font-weight:700;padding:5px 9px}.risk-copy{color:#45515a;margin-top:10px!important}.risk-list{display:grid;gap:12px;margin:0}.risk-list div{border-top:1px solid #e5eae6;padding-top:12px}.risk-list div:first-child{border-top:0;padding-top:0}.risk-list dt{color:#1f2d35;font-weight:800}.risk-list dd{color:#5a6871;line-height:1.45;margin:4px 0 0}.ingestion-grid,.diagnostics-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.simulation-controls{align-items:end;display:grid;gap:12px;grid-template-columns:repeat(5,minmax(120px,1fr));margin:14px 0}.simulation-controls label{display:grid;gap:6px}.simulation-controls span{color:#61707a;font-size:.78rem;font-weight:800;text-transform:uppercase}.simulation-controls input,.simulation-controls select{background:#fff;border:1px solid #c8d0ca;border-radius:8px;color:#172026;font:inherit;min-height:40px;min-width:0;padding:0 10px}.ingestion-grid>div,.diagnostics-grid>div{min-height:116px;padding:8px 0}.ingestion-grid strong,.diagnostics-grid strong{display:block;font-size:1.15rem;margin-bottom:6px;overflow-wrap:anywhere}.ingestion-grid p,.diagnostics-grid p,.plain-note{color:#5a6871;line-height:1.45;margin:0}.plain-note{border-top:1px solid #e5eae6;margin-top:16px;padding-top:14px}.diagnostic-list{border-top:1px solid #e5eae6;color:#80520a;line-height:1.45;margin:14px 0 0;padding:14px 0 0 18px}.warning-note{background:#fff9e8;border:1px solid #f1d28a;border-radius:8px;color:#6f4706;line-height:1.45;margin:12px 0 0;padding:10px 12px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;min-width:720px;width:100%}th,td{border-top:1px solid #e5eae6;padding:12px 10px;text-align:left}th{color:#61707a;font-size:.78rem;text-transform:uppercase}.event-log ol{list-style:none;margin:0;padding:0}.event-log li{align-items:start;border-top:1px solid #e5eae6;display:grid;gap:10px;grid-template-columns:92px 72px minmax(0,1fr);padding:12px 0}.event-log .simple-log-row{display:block;color:#61707a}.event-log li:first-child{border-top:0}.event-log time{color:#6b7880;font-variant-numeric:tabular-nums}.event-log p{margin:0}.event-level{border-radius:999px;font-size:.75rem;font-weight:800;padding:4px 8px;text-align:center;text-transform:uppercase}.event-level.info{background:#e8f4ff;color:#155a9c}.event-level.warning{background:#fff1d6;color:#80520a}.event-level.error{background:#fff5f5;color:#9b1c1c}.term{border-bottom:1px dotted currentColor;cursor:help;text-decoration:none}.pnl-positive{color:#15803d;font-weight:800}.pnl-negative{color:#b91c1c;font-weight:800}.pnl-flat{color:#52616b;font-weight:800}.empty-text{color:#61707a;margin:0}@media(max-width:920px){.app-header{align-items:start;flex-direction:column}.header-actions{justify-content:flex-start}.summary-grid,.content-grid,.ingestion-grid,.diagnostics-grid,.simulation-controls{grid-template-columns:1fr}}@media(max-width:560px){.app-shell{padding:14px}.header-actions,button{width:100%}button{justify-content:center}.event-log li{grid-template-columns:1fr}}
