:root{color-scheme:light;--bg: #f5efe4;--bg-strong: #ebdfca;--surface: rgba(255, 250, 242, .82);--ink: #1f2421;--muted: #58615a;--accent: #a34c22;--accent-soft: #e4b38f;--warning: #9b5d00;--critical: #8b231f;--border: rgba(31, 36, 33, .12);--shadow: 0 18px 40px rgba(78, 53, 30, .14);font-family:IBM Plex Sans,Avenir Next,Segoe UI,sans-serif;line-height:1.5;font-weight:400}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(163,76,34,.2),transparent 34%),radial-gradient(circle at bottom right,rgba(130,108,78,.15),transparent 28%),linear-gradient(180deg,#f8f3eb,#efe4d5);color:var(--ink)}button,input{font:inherit}.app-shell{width:min(1180px,calc(100vw - 2rem));margin:0 auto;padding:2rem 0 4rem}.hero,.dashboard-grid{display:grid;gap:1.25rem}.hero{grid-template-columns:2fr 1fr;margin-bottom:1.5rem}.hero__lead,.hero__panel span,.section-heading p,.metric-card__detail,.estimate-footnote{color:var(--muted)}.hero__panel,.surface,.metric-card{border:1px solid var(--border);background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow);border-radius:22px}.hero__panel,.surface{padding:1.25rem}.hero__panel{display:grid;gap:.45rem;align-content:start}.eyebrow{margin:0 0 .35rem;letter-spacing:.12em;font-size:.72rem;color:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.2rem,5vw,4rem);line-height:.98;margin-bottom:.75rem}.dashboard-grid{grid-template-columns:1.05fr 1.2fr;margin-bottom:1.5rem}.summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-bottom:1.25rem}.summary-chip{display:grid;gap:.15rem;padding:.95rem 1rem;border-radius:16px;background:#fffaf2c2;border:1px solid var(--border)}.summary-chip span,.hero__timestamp{color:var(--muted);font-size:.88rem}.summary-chip strong{font-size:1.3rem}.summary-chip--highlight{background:#a34c2217;border-color:#a34c2233}.estimator-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.estimator-form label{display:grid;gap:.35rem;font-size:.92rem;color:var(--muted)}.estimator-form input,.estimator-form button{border-radius:12px;border:1px solid var(--border);padding:.75rem .85rem;background:#ffffffb8}.estimator-form button{align-self:end;background:var(--accent);color:#fff;border:none;cursor:pointer}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-bottom:1rem}.metric-card{padding:1rem}.metric-card__label{color:var(--muted);margin-bottom:.45rem}.metric-card__value{font-size:1.45rem;font-weight:700;margin-bottom:.2rem}.metric-card--warning{border-color:#9b5d004d}.metric-card--critical{border-color:#8b231f4d}.warning-list{list-style:none;padding:0;display:grid;gap:.65rem}.warning-list__item{display:grid;gap:.2rem;padding:.8rem .95rem;border-radius:14px;background:#fff5e9e6;border:1px solid rgba(163,76,34,.12)}.warning-list__item--critical{border-color:#8b231f3d;background:#ffece9f0}.warning-list__item--warning{border-color:#9b5d003d}.assumption-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.assumption-list{list-style:none;padding:0;margin:0}.assumption-list__item{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--border)}.section-heading{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1rem}.section-heading--stack{align-items:start}.section-heading--stack p{max-width:34rem}.risk-table-wrap{overflow-x:auto}.risk-table{width:100%;border-collapse:collapse}.risk-table th,.risk-table td{padding:.8rem .5rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.risk-table td:last-child{min-width:14rem}.risk-table__empty{color:var(--muted)}.estimate-footnote{margin-top:1rem}@media(max-width:900px){.hero,.dashboard-grid,.summary-strip,.metric-grid,.assumption-grid,.estimator-form{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:start}}@media(max-width:760px){.risk-table thead{display:none}.risk-table,.risk-table tbody,.risk-table tr,.risk-table td{display:block;width:100%}.risk-table tr{padding:.8rem 0;border-bottom:1px solid var(--border)}.risk-table td{border:none;padding:.35rem 0}.risk-table td:before{content:attr(data-label);display:block;font-size:.78rem;color:var(--muted);margin-bottom:.08rem}}
