:root { font-family: Inter, ui-sans-serif, system-ui, sans-serif; color: #172033; background: #edf2f7; }
* { box-sizing: border-box; }
body { min-height: 100vh; display: grid; place-items: center; margin: 0; padding: 1.5rem; }
.card { width: min(100%, 30rem); max-width: 30rem; padding: 2.5rem; background: white; border-radius: 1.25rem; box-shadow: 0 1.5rem 4rem #1720331c; }
.eyebrow { margin: 0 0 .5rem; color: #3767d6; font-size: .75rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
h1 { margin: 0; font-size: clamp(2rem, 6vw, 3.25rem); line-height: 1.05; }
.intro { color: #596579; line-height: 1.6; }
form { display: grid; gap: .65rem; margin-top: 2rem; }
label { font-weight: 700; }
.input-row { display: flex; align-items: center; gap: .5rem; margin-bottom: .6rem; padding: .8rem 1rem; border: 1px solid #ccd5e2; border-radius: .75rem; }
.input-row span { color: #596579; }
input { width: 100%; border: 0; outline: 0; font: inherit; font-size: 1.1rem; }
button { margin-top: .5rem; padding: 1rem; border: 0; border-radius: .75rem; color: white; background: #3767d6; font: inherit; font-weight: 800; cursor: pointer; }
button:hover { background: #2854bb; }
.result { margin-top: 2rem; padding: 1.25rem; border-radius: .9rem; background: #eef4ff; }
.result-value { margin: .25rem 0; color: #2854bb; font-size: 2.4rem; font-weight: 850; }
#runway-note { margin: 0; color: #596579; line-height: 1.5; }
