:root{color:#182434;background:#eef3f8;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{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at 15% 0%,rgb(204 227 243 / 55%),transparent 34rem),linear-gradient(180deg,#f7fafc,#eaf0f6)}button,input{font:inherit}.app-shell{width:min(100% - 48px,1600px);margin:0 auto;padding:32px 0 48px}.app-shell>header{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:24px;padding:22px 26px;border:1px solid #d6e0e9;border-radius:20px;background:#ffffffe5;box-shadow:0 16px 50px #28425b1a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.app-shell h1{margin:0;color:#102a43;font-size:clamp(1.55rem,2.4vw,2.35rem);letter-spacing:-.045em}.app-shell fieldset{display:flex;gap:6px;min-width:0;margin:0;padding:4px;border:1px solid #d3dee8;border-radius:12px;background:#edf3f8}.app-shell legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell fieldset label{position:relative;display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:9px;color:#52677c;cursor:pointer;font-size:.9rem;font-weight:700;transition:color .16s ease,background .16s ease,box-shadow .16s ease}.app-shell fieldset label:has(input:checked){color:#0b4f75;background:#fff;box-shadow:0 3px 12px #304c641f}.app-shell fieldset input{position:absolute;opacity:0}.app-shell fieldset label:has(input:focus-visible){outline:3px solid #7fc4e8;outline-offset:2px}.error-alert{margin-top:18px;padding:14px 18px;border:1px solid #b91c1c;border-radius:12px;color:#7f1d1d;background:#fff1f2;font-weight:700}.metrics-panel{margin-top:18px}.metrics-panel ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0;margin:0;list-style:none}.metrics-panel li{display:flex;min-width:0;min-height:104px;flex-direction:column;justify-content:space-between;gap:16px;padding:18px 20px;border:1px solid #d6e0e9;border-radius:16px;background:#fff;box-shadow:0 10px 30px #28425b12}.metrics-panel span{color:#65788b;font-size:.78rem;font-weight:800;letter-spacing:.045em;line-height:1.35;text-transform:uppercase}.metrics-panel strong{color:#123b57;font-size:clamp(1.25rem,1.8vw,1.85rem);letter-spacing:-.035em;white-space:nowrap}.charts-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(360px,1fr);gap:18px;margin-top:18px}.chart-card,.control-panel-card{overflow:hidden;border:1px solid #d6e0e9;border-radius:20px;background:#fff;box-shadow:0 16px 44px #28425b14}.chart-card>section{width:100%;height:100%}.model-caption{min-height:44px;margin:0;padding:14px 18px 8px;color:#52677c;font-size:.78rem;font-weight:700;line-height:1.35}.polar-card,.control-chart-card{min-height:580px}.control-panel-card{margin-top:18px;padding:24px 26px 26px}.control-panel-card section{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:20px 18px}.control-panel-card h2{grid-column:1 / -1;margin:0 0 2px;color:#173b55;font-size:1.1rem}.control-panel-card section>div{display:grid;grid-template-columns:1fr auto;align-content:start;gap:8px 12px;min-width:0}.control-panel-card label{color:#43596e;font-size:.82rem;font-weight:800}.control-panel-card output{color:#123b57;font-size:.82rem;font-weight:800}.control-panel-card input[type=range]{grid-column:1 / -1;width:100%;height:5px;margin:7px 0;border-radius:999px;accent-color:#1676a5;cursor:pointer}.control-panel-card p{grid-column:1 / -1;margin:0;color:#66798b;font-size:.75rem;line-height:1.4}.control-panel-card p[role=alert]{color:#991b1b;font-weight:800}@media(max-width:1320px){.control-panel-card section{grid-template-columns:repeat(3,minmax(180px,1fr))}}@media(max-width:1099px){.app-shell{width:min(100% - 32px,900px);padding-top:20px}.charts-grid{grid-template-columns:1fr}.metrics-panel ul{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.app-shell{width:min(100% - 20px,640px)}.app-shell>header,.metrics-panel ul,.control-panel-card section{grid-template-columns:1fr}.app-shell>header fieldset{width:100%}.app-shell>header fieldset label{flex:1;justify-content:center}.metrics-panel li{min-height:92px}.control-panel-card{padding:20px}}
