:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,sans-serif;--color-ink: #102a43;--color-muted: #52606d;--color-page: #f5f7fa;--color-surface: #fff;--color-border: #bcccdc;--color-table-border: #d9e2ec;--color-control: #f0f4f8;--color-control-border: #486581;--color-focus: #0b69a3;--color-focus-ring: #7cc4fa;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--radius-panel: .5rem;--radius-control: .25rem}body{margin:0;min-width:320px}.app-shell{box-sizing:border-box;max-width:110rem;min-height:100vh;margin-inline:auto;padding:clamp(1rem,3vw,3rem)}.planner-shell{max-width:88rem;margin:var(--space-6) auto 0}.learning-sources{max-width:88rem;margin:var(--space-6) auto 0;line-height:1.5}.learning-sources ul{display:grid;gap:var(--space-3);max-width:72ch;padding-inline-start:1.25rem}.learning-sources li>p{margin-block:var(--space-1) 0}.worksheet-assumptions{max-width:72ch}.planner-shell>h2{margin-block-end:var(--space-2)}.plan-picker{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-3);margin-block:var(--space-4) var(--space-6)}.plan-picker h3{flex-basis:100%;margin:0}.plan-picker select{width:min(100%,22rem)}.planner-shell>details{min-width:0;margin-block:var(--space-3)}.planner-shell>details>summary{cursor:pointer}.planner-shell>[data-stage=aircraft]>label{display:grid;gap:var(--space-1);max-width:22rem;margin-block-end:var(--space-4);font-weight:600}.planner-shell>[data-stage=aircraft] select{width:100%}.planner-shell .profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.planner-shell .profile-form button{width:fit-content}.planner-shell .route-form{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.planner-shell .route-form fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--space-3);min-width:0}.planner-shell .route-form fieldset legend{padding-inline:var(--space-2);font-weight:700}.planner-shell .route-form>div>section+section{margin-block-start:var(--space-4)}.planner-shell .route-form [name=departure-time],.planner-shell .route-form [name=departure-local]{max-width:22rem}.planner-shell .route-form [data-use-current-utc]{width:fit-content;max-width:100%;justify-self:start;align-self:start}.planner-shell [data-stage=calculate] [data-update-plan]{width:fit-content}.profile-form,.route-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.navlog-table-scroll{max-width:100%;overflow-x:auto}.calculated-navlog table{min-width:90rem}@media(max-width:54rem){.profile-form,.route-form,.planner-shell .profile-form,.planner-shell .route-form fieldset{grid-template-columns:minmax(0,1fr)}}body{color:var(--color-ink);background:var(--color-page)}.planner-shell>details{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface)}.planner-shell>details[data-active=true]{border-inline-start:.35rem solid var(--color-focus)}.planner-shell>details>summary{padding:var(--space-2);font-size:1.15rem;font-weight:700}.planner-shell>details[open]>summary{margin-block-end:var(--space-4);border-block-end:1px solid var(--color-table-border)}.planner-shell>details>summary:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}[data-profile-editor]{margin-block-start:var(--space-4);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control)}[data-profile-editor]>summary{cursor:pointer;font-weight:700}[data-profile-editor][open]>summary{margin-block-end:var(--space-4)}.planner-shell .route-form fieldset{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:#fafbfd}.planner-shell [data-stage=calculate] [data-update-plan]{border-color:var(--color-focus);background:var(--color-focus);color:#fff;font-weight:700}.planner-shell [data-stage=calculate] [data-update-plan]:disabled{border-color:#6b7280;background:#d1d5db;color:#374151}.planner-shell [data-stage=route]>button{margin-block-start:var(--space-4)}.planner-feedback{min-height:1.5rem;color:var(--color-ink)}.planner-feedback:not(:empty){margin-block:var(--space-3);padding:var(--space-2) var(--space-3);border-inline-start:.3rem solid var(--color-focus);background:var(--color-surface);font-weight:600}.current-clock{display:grid;gap:.2rem;width:fit-content;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);font-variant-numeric:tabular-nums}@media(max-width:34rem){.current-clock{max-width:100%;padding:var(--space-1) var(--space-2);font-size:clamp(.7rem,3.4vw,.8rem)}.current-clock>div{white-space:nowrap}}[data-utc-format]{margin:0;color:var(--color-muted);font-size:.875rem}.route-waypoints{grid-column:1 / -1;min-width:0}.waypoint-list{display:grid;gap:var(--space-3)}.waypoint-list>h3{margin:0}.waypoint-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--space-3)}.waypoint-group legend{padding-inline:var(--space-1);font-weight:700}.waypoint-group p{margin:0;align-self:center}.waypoint-group>button,.waypoint-list>button{width:fit-content;max-width:100%;align-self:start}.waypoint-group>label,.waypoint-group>p{min-width:0}.navlog-fuel-warning,.navlog-warnings{padding:var(--space-2);border-inline-start:.3rem solid #a63d00;background:#fff2e8;color:#5b2300;font-weight:700}.navlog-warnings h3{margin:0}.aboard-fuel-summary{margin-block:var(--space-3)}.aboard-fuel-summary>p{margin-block:var(--space-2)}.route-form .field-error{color:#8b1e00;font-size:.9rem;font-weight:600}input[aria-invalid=true]{border-color:#8b1e00;outline-color:#8b1e00}.profile-form label,.route-form label{display:grid;gap:var(--space-1);font-weight:600}.profile-form+label{display:grid;gap:var(--space-1);margin-block-start:var(--space-4)}input,select,button{box-sizing:border-box;min-height:2.25rem;padding:.35rem var(--space-2);font:inherit}button:disabled{border-color:#6b7280;background:#d1d5db;color:#374151;cursor:not-allowed;opacity:1}button:disabled:hover,button:disabled:focus-visible{border-color:#6b7280;outline:none}.action-availability{margin-block:var(--space-1) var(--space-3);padding:var(--space-2);border-inline-start:.3rem solid #6b7280;background:#f3f4f6;color:#374151;font-weight:600}input,select{width:100%;min-width:0}.profile-form label,.route-form label,.checkpoint-editor label,.leg-altitudes label,.override-form label{min-width:0}button{border:1px solid var(--color-control-border);border-radius:var(--radius-control);background:var(--color-control);color:var(--color-ink);cursor:pointer}button:hover,button:focus-visible{border-color:var(--color-focus);outline:2px solid var(--color-focus-ring);outline-offset:2px}table{width:100%;border-collapse:collapse}.calculated-navlog caption{padding:var(--space-2);text-align:left;font-weight:600}.navlog-value{min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--color-focus);text-align:left;text-decoration:underline;text-underline-offset:.15em}.navlog-value[aria-pressed=true]{font-weight:700;text-decoration-thickness:.16em}.calculation-inspector{padding-block:var(--space-2);border-block:1px solid var(--color-table-border)}.calculation-inspector h3{margin-block-start:0}.calculation-inspector dl{display:grid;grid-template-columns:minmax(7rem,1fr) minmax(0,1fr);gap:var(--space-1) var(--space-2)}.calculation-inspector dd{margin:0;overflow-wrap:anywhere}.calculation-inspector dt{font-weight:600}.calculated-navlog pre{max-height:24rem;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}.forecast-selection{margin-block:var(--space-4)}.forecast-selection label{max-width:42rem}th,td{padding:var(--space-2);border:1px solid var(--color-table-border);text-align:left;vertical-align:top}.build-identity{color:var(--color-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.875rem}.learning-sources a{color:var(--color-focus);text-underline-offset:.15em}.learning-sources a:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.teaching-disclaimer{margin-block:var(--space-3) var(--space-4);padding:var(--space-3);border-inline-start:.3rem solid #a63d00;background:#fff2e8;color:#5b2300;font-weight:700}
