:root{--bg:#f4efe6;--panel:#fffdf9;--border:#21345824;--border-strong:#2134583d;--text:#48536a;--text-muted:#67738a;--text-strong:#172338;--accent:#dc582a;--accent-strong:#b8441d;--secondary:#2f8f83;--secondary-strong:#22695f;--shadow:0 24px 60px #342c221f;--display:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, serif;--body:"Avenir Next", "Segoe UI", sans-serif;color:var(--text);font-family:var(--body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#dc582a1a,#0000 28%),radial-gradient(circle at 100% 0,#2f8f831c,#0000 24%),linear-gradient(#f9f3e8 0%,#f1ebdf 100%);font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--text-strong);line-height:1.02}h1{font-family:var(--display);margin-bottom:14px;font-size:clamp(2.7rem,5vw,5.2rem)}h2{font-family:var(--display);margin-bottom:10px;font-size:clamp(1.6rem,2.2vw,2.2rem)}a{color:inherit}#root{min-height:100vh}.app-shell{box-sizing:border-box;min-height:100vh;padding:40px}.hero-panel{grid-template-columns:minmax(0,1.5fr) minmax(320px,.9fr);gap:24px;margin-bottom:28px;display:grid}.hero-copy,.hero-stats,.control-panel,.section-card{border:1px solid var(--border);background:linear-gradient(160deg, #ffffffd9, #f6efe2bf), var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:28px}.hero-copy,.control-panel,.section-card{padding:28px}.hero-stats{grid-template-columns:1fr;gap:12px;padding:18px;display:grid}.stat-card{background:#11244814;border-radius:20px;flex-direction:column;gap:8px;padding:20px;display:flex}.stat-value{font-family:var(--display);color:var(--text-strong);font-size:clamp(1.6rem,2vw,2.4rem)}.stat-label,.field-note,.section-note,.profile-meta,.diagnostic-list,.metric-comparison-copy,.metric-meta{color:var(--text-muted)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--accent-strong);margin:0 0 10px;font-size:.72rem}.hero-text{max-width:68ch}.layout-grid{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:24px;display:grid}.loading-banner{grid-template-columns:minmax(0,1.3fr) minmax(260px,.9fr);align-items:center;gap:24px;margin-bottom:24px;display:grid}.loading-copy{gap:8px;display:grid}.progress-shell{gap:10px;display:grid}.progress-track{background:#17233814;border-radius:999px;height:14px;position:relative;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent-strong), var(--accent), var(--secondary));height:100%;transition:width .18s}.progress-fill.indeterminate{width:35%;animation:1.1s ease-in-out infinite slide-progress}.progress-label{color:var(--text-muted);font-size:.92rem;font-weight:600}.control-panel{position:sticky;top:24px}.panel-header{margin-bottom:20px}.control-stack{gap:18px;display:grid}.field{gap:8px;display:grid}.field span,.checkbox-row span{color:var(--text-strong);font-weight:600}.field input,.field select{border:1px solid var(--border-strong);box-sizing:border-box;width:100%;font:inherit;color:var(--text-strong);background:#ffffffd1;border-radius:16px;padding:14px 16px}.field input[type=range]{padding:0}.checkbox-row{align-items:center;gap:10px;display:flex}.segmented-control{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.segmented-control button{border:1px solid var(--border-strong);font:inherit;color:var(--text-strong);cursor:pointer;background:#ffffffb3;border-radius:999px;padding:12px 14px}.segmented-control button.active{color:#fff;background:linear-gradient(135deg, var(--accent-strong), var(--accent));border-color:#0000}.results-panel{gap:24px;display:grid}.section-heading{justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;display:flex}.profile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.profile-card{background:#ffffffc2;border:1px solid #11244814;border-radius:22px;padding:22px}.emphasis-card{background:radial-gradient(circle at 0 0,#dc582a2e,#0000 48%),#ffffffc7}.tag-row{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.tag-row span{color:var(--text-strong);background:#11244814;border-radius:999px;padding:8px 12px;font-size:.88rem}.diagnostic-list{margin:14px 0 0;padding-left:18px}.table-wrap{overflow-x:auto}.results-table{border-collapse:collapse;width:100%}.results-table th,.results-table td{text-align:left;border-bottom:1px solid #11244814;padding:14px 10px}.results-table th{color:var(--text-muted);font-weight:600}.dual-pane{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.preset-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;display:grid}.preset-metric-card{background:#ffffffbf;border:1px solid #11244814;border-radius:18px;gap:6px;padding:16px;display:grid}.metric-label{color:var(--text-muted);font-size:.88rem}.empty-state{border:1px dashed var(--border-strong);background:#ffffffad;border-radius:28px;padding:48px 28px}.error-state{border-style:solid;border-color:#b0302159}.metric-comparison{gap:14px;display:grid}.metric-row{gap:8px;display:grid}.metric-row-header{justify-content:space-between;gap:12px;display:flex}.metric-bars{gap:8px;display:grid}.metric-track{background:#11244814;border-radius:999px;height:10px;position:relative;overflow:hidden}.metric-fill{border-radius:inherit;position:absolute;inset:0 auto 0 0}.metric-fill.target{background:linear-gradient(90deg, var(--accent-strong), var(--accent))}.metric-fill.candidate{background:linear-gradient(90deg, var(--secondary-strong), var(--secondary))}.radar-shell{gap:14px;display:grid}.radar-shell svg{width:100%;height:auto}.legend{flex-wrap:wrap;gap:12px;display:flex}.legend span{color:var(--text-muted);align-items:center;gap:8px;display:inline-flex}.legend i{border-radius:999px;width:12px;height:12px;display:inline-block}.legend .target-dot{background:var(--accent)}.legend .candidate-dot{background:var(--secondary)}@media (width<=1120px){.layout-grid,.hero-panel,.profile-grid,.dual-pane,.loading-banner{grid-template-columns:1fr}.control-panel{position:static}.app-shell{padding:18px}}@keyframes slide-progress{0%{transform:translate(-120%)}to{transform:translate(320%)}}
