/* Flying: this stop's own drawings (05-17 sections.flying). Shared looks are in living/explain.css. */
.fl-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.fl-tab { padding: 9px 14px; border-radius: 999px; border: 1px solid var(--rule); background: rgba(255,255,255,0.7); font: 600 13.5px/1 var(--wum-body); color: var(--ink); cursor: pointer; transition: background 0.25s, color 0.25s, border-color 0.25s; }
.fl-tab[aria-pressed="true"] { background: var(--ink); color: #FFF4EA; border-color: var(--ink); }
.fl-stage { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 24px; align-items: center; }
.fl-box { position: relative; border-radius: 16px; overflow: hidden; aspect-ratio: 450 / 280; background: linear-gradient(180deg, #7FB2E4, #CFE3F5); transition: background 0.6s; }
.fl-box[data-sky="mars"] { background: linear-gradient(180deg, #C9936A, #EBC9A2); }
.fl-box[data-sky="dome"] { background: linear-gradient(180deg, #2F7FBF, #9FD0EE 60%, #CFE8C0); }
.fl-box canvas, .fl-box svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.fl-svg path { transition: d 0.7s cubic-bezier(.3,.7,.2,1); }
.fl-read { display: grid; gap: 12px; padding: 20px 22px; border-radius: 16px; background: rgba(255,252,247,0.86); color: #3E2F27; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); box-shadow: 0 8px 24px -16px rgba(60,30,10,0.5); }
.fl-box { box-shadow: 0 14px 34px -16px rgba(60,30,10,0.7); }
.fl-read h4 { margin: 0; font: 700 26px/1 var(--wum-display); text-transform: uppercase; }
.fl-read p { margin: 0; font-size: 15.5px; line-height: 1.5; }
.fl-bar { display: grid; grid-template-columns: 64px minmax(0, 1fr) 54px; align-items: center; gap: 10px; font-size: 14px; font-weight: 600; }
.fl-bar i { position: relative; height: 14px; border-radius: 8px; background: rgba(28,31,36,0.1); overflow: hidden; }
.fl-bar b { position: absolute; inset: 0 auto 0 0; border-radius: inherit; background: #3E9FB7; transition: width 0.7s cubic-bezier(.3,.7,.2,1); }
.fl-bar.w b { background: #B4502B; }
.fl-bar em { font: 600 13px/1 var(--wum-mono); font-style: normal; text-align: right; }
.fl-power, .fl-canyon { width: 100%; height: auto; display: block; overflow: visible; }
@media (max-width: 960px) { .fl-stage { grid-template-columns: minmax(0, 1fr); } }
