@import "https://fonts.googleapis.com/css2?family=Fraunces:wght@600;700&family=Manrope:wght@400;500;600;700&display=swap";:root{color:#1f2421;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#e28f4d38,#0000 28%),radial-gradient(circle at 100% 100%,#147c7624,#0000 24%),linear-gradient(#fff9f1 0%,#f8f4ee 45%,#f0ede6 100%);font-family:Manrope,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input{font:inherit}button{cursor:pointer}a{color:inherit}.app-shell,.login-shell{min-height:100vh;padding:32px}.login-shell{place-items:center;display:grid}.login-panel,.hero-panel,.panel,.metric-card,.message-banner{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffbf6e0;border:1px solid #634f3e1f;border-radius:28px;box-shadow:0 20px 48px #4d372514}.login-panel{width:min(560px,100%);padding:36px}.eyebrow,.section-label{letter-spacing:.24em;text-transform:uppercase;color:#8c5a36;margin:0;font-size:.76rem;font-weight:800}.section-label{margin-bottom:8px}h1,h2,h3,.row-heading{color:#1d2018;margin:0;font-family:Fraunces,serif}h1{margin-top:12px;font-size:clamp(2.2rem,4vw,4rem);line-height:1.02}h2{font-size:1.5rem}h3{font-size:1.1rem}.lede,.subtle-copy,.row-meta,.detail-header span,.document-row span,.history-row span,.detail-card small{color:#625a52}.lede{max-width:60ch;margin-top:14px;line-height:1.65}.hero-panel{grid-template-columns:minmax(0,1.3fr) minmax(300px,.9fr);gap:24px;padding:32px;display:grid}.hero-actions{gap:16px;display:grid}.user-chip,.upload-card,.toolbar-controls,.mapping-actions{gap:12px;display:flex}.user-chip,.upload-card{flex-wrap:wrap;align-items:center}.user-chip{background:#fff4e8eb;border-radius:20px;justify-content:space-between;padding:14px 18px}.upload-card{background:linear-gradient(145deg,#fff7eef5,#f6f1e8cc);border:1px dashed #8c5a3657;border-radius:22px;padding:18px}.upload-label{width:100%;font-weight:700}.metrics-strip,.workspace-grid,.detail-grid{gap:18px;display:grid}.metrics-strip{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:22px}.metric-card{padding:20px}.metric-card span{color:#746455;font-size:.92rem;display:block}.metric-card strong{margin-top:6px;font-family:Fraunces,serif;font-size:2rem;display:block}.workspace-grid{grid-template-columns:minmax(0,1.2fr) minmax(340px,.9fr);margin-top:22px}.workspace-main,.workspace-side{gap:18px;display:grid}.panel{padding:24px}.panel-header,.detail-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.toolbar-controls{flex-wrap:wrap;justify-content:flex-end}.search-input,.mapping-row input,.login-form input{background:#ffffffd9;border:1px solid #634f3e2e;border-radius:16px;width:100%;padding:12px 14px}.search-input{min-width:280px}.toggle-pill{background:#f5ebdfcc;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;display:inline-flex}.product-list,.document-list,.history-list,.mapping-editor{gap:12px;margin-top:18px;display:grid}.product-row,.document-row,.history-row{background:#ffffffb8;border:1px solid #634f3e1f;border-radius:20px;align-items:center;gap:12px;padding:16px;display:grid}.product-row{text-align:left;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto auto;width:100%}.product-row.is-selected{border-color:#147c7673;box-shadow:inset 0 0 0 1px #147c7633}.row-heading{font-size:1.02rem}.row-meta{margin-top:4px;font-size:.86rem}.mapping-stack{flex-wrap:wrap;gap:8px;display:flex}.mapping-chip,.delta-pill,.chip-button{border-radius:999px;justify-content:center;align-items:center;padding:7px 12px;font-size:.82rem;font-weight:700;display:inline-flex}.mapping-chip{color:#0b6661;background:#147c761a}.mapping-chip.is-empty{color:#8c5a36;background:#8c5a361f}.price-block{justify-items:end;gap:4px;display:grid}.price-block span{color:#7c7167;font-size:.82rem}.delta-pill{min-width:92px}.delta-pill.is-up{color:#aa3a1f;background:#c94b2926}.delta-pill.is-down{color:#0d7a76;background:#11887529}.delta-pill.is-flat{color:#57524c;background:#56524c1f}.documents-panel .document-row,.history-row{grid-template-columns:minmax(0,1fr) auto}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.detail-card{background:#ffffffad;border:1px solid #634f3e1f;border-radius:22px;padding:18px}.accent-card{background:linear-gradient(145deg,#e4834c2e,#ffffffc2)}.detail-card span,.detail-card small{display:block}.detail-card strong{margin:6px 0;font-family:Fraunces,serif;font-size:1.6rem;display:block}.detail-section{margin-top:20px}.chart-card,.empty-card{background:#ffffffb3;border:1px solid #634f3e1f;border-radius:22px;margin-top:14px;padding:18px}.empty-card{color:#6c645d}.price-chart{width:100%;height:auto}.chart-grid{stroke:#634f3e1f;stroke-width:1px}.chart-path{fill:none;stroke:url(#chartGradient);stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.chart-dot{fill:#0d7a76;stroke:#fff9f1;stroke-width:3px}.chart-footnotes{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-top:14px;display:grid}.chart-footnote{gap:4px;display:grid}.mapping-row{grid-template-columns:minmax(160px,1fr) 120px minmax(160px,1fr) auto;gap:10px;display:grid}.mapping-actions{justify-content:space-between;margin-top:8px}.primary-button,.ghost-button,.chip-button{border:none;transition:transform .16s,opacity .16s,background-color .16s}.primary-button{color:#fffdf9;background:linear-gradient(135deg,#9b4f27,#c77437);border-radius:16px;padding:12px 18px;font-weight:800}.ghost-button,.chip-button{color:#513928;background:#f5ebdfe6;border-radius:16px;padding:10px 14px;font-weight:700}.primary-button:hover,.ghost-button:hover,.chip-button:hover,.product-row:hover{transform:translateY(-1px)}.message-banner{margin-top:18px;padding:16px 18px}.success-banner{color:#11544a}.error-banner,.error-text{color:#a23023}.login-form{gap:16px;margin-top:28px;display:grid}.login-form label{gap:8px;font-weight:700;display:grid}.fade-in{animation:.5s both rise}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (width<=1200px){.metrics-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-grid,.hero-panel{grid-template-columns:1fr}}@media (width<=860px){.app-shell,.login-shell{padding:18px}.metrics-strip,.detail-grid,.mapping-row,.product-row,.documents-panel .document-row,.history-row{grid-template-columns:1fr}.price-block{justify-items:start}.toolbar-controls,.mapping-actions,.user-chip,.upload-card{flex-direction:column;align-items:stretch}.search-input{min-width:0}}
