:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e7eefc;background:#07111f;font-family:Inter,ui-sans-serif,system-ui,sans-serif}body{background:radial-gradient(circle at 0 0,#1d4d7c55,#0000 35%),#07111f;min-height:100vh;margin:0}.shell{width:min(980px,100% - 32px);margin:0 auto;padding:56px 0}.hero{margin-bottom:28px}.eyebrow{color:#72ddff;text-transform:uppercase;letter-spacing:.14em;font-size:13px;font-weight:700}h1{max-width:820px;margin:0 0 18px;font-size:clamp(34px,6vw,64px);line-height:.95}p{color:#afbdd1;font-size:17px;line-height:1.6}.card{background:#0d1b2fcc;border:1px solid #24405f;border-radius:22px;padding:24px;box-shadow:0 20px 80px #0008}.form{grid-template-columns:1.4fr 1fr .6fr auto;align-items:start;gap:16px;display:grid}label{color:#dbe8ff;gap:8px;font-weight:700;display:grid}small{color:#91a4bd;font-weight:400;line-height:1.35}input{color:#fff;background:#07111f;border:1px solid #315578;border-radius:14px;padding:13px 14px;font-size:16px}textarea{color:#fff;font:inherit;resize:vertical;background:#07111f;border:1px solid #315578;border-radius:14px;padding:13px 14px}button{color:#06111d;cursor:pointer;background:#59d7ff;border:0;border-radius:14px;align-self:end;padding:14px 18px;font-weight:800}button:disabled{opacity:.6;cursor:wait}.error{color:#ff8d8d}.obstructionCard{grid-template-columns:minmax(0,1fr) minmax(260px,360px);align-items:center;gap:24px;margin-top:24px;display:grid}.obstructionCard h2{margin-top:0}.obstructionForm{gap:16px;margin-top:16px;display:grid}.obstructionForm button{justify-self:start}.obstructionMap{background:#06111d;border-radius:50%;justify-self:end;width:100%;max-width:360px;box-shadow:inset 0 0 0 1px #fff2}.obstructionMap text{fill:#fff;font:700 18px Inter,ui-sans-serif,system-ui,sans-serif}.source{color:#72ddff;margin:14px 0 0;font-size:14px}.summary{color:#b9c9df;justify-content:space-between;gap:16px;margin-bottom:18px;display:flex}.summary strong{color:#72ddff;font-size:28px}.tableWrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #1f3855;padding:12px 10px}th{color:#91a4bd;text-transform:uppercase;letter-spacing:.08em;font-size:13px}.note{margin-top:24px;padding:0 4px}.note h2{margin-bottom:0}@media (width<=820px){.form,.obstructionCard{grid-template-columns:1fr}button{width:100%}.obstructionForm button{justify-self:stretch}.obstructionMap{justify-self:center}.summary{display:block}}
