
.fo { --fo-ease: cubic-bezier(.16, 1, .3, 1); --fo-gap: clamp(96px, 11vw, 144px); --fo-muted: #56667a; --fo-edge: #7c8898;
  --fo-float: 0 1px 2px rgba(15,23,42,.12), 0 12px 32px rgba(15,23,42,.18);
  --fo-top: 0 2px 4px rgba(15,23,42,.12), 0 24px 56px rgba(15,23,42,.24);
  --c-block: #33a090; overflow-x: clip; color: var(--text); }
.fo-c-teal { --c-block: #33a090; }
.fo-c-sky { --c-block: #4f8fd9; }
.fo-c-amber { --c-block: #cc7a2d; }
.fo-c-ink { --c-block: #1e293b; }
.fo-c-rose { --c-block: #d4587a; }
.fo-c-indigo { --c-block: #5560d8; }
.fo-wrap { max-width: var(--content-col-max); margin: 0 auto; padding: 0 var(--content-col-pad); }

@media (max-width: 679px) { .fo { --content-col-pad: 14px; } }
.fo .cov-crumb { margin: 24px 0 40px; }
.fo p { margin: 0; text-wrap: pretty; }
.fo code { font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace); font-size: .9em; }
.fo-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12.5px; }

.fo h1, .fo-h2 { margin: 0; font-weight: 800; color: var(--text); text-wrap: balance; }
.fo h1 { font-size: clamp(40px, 5.2vw, 76px); line-height: 1; letter-spacing: -.045em; }
.fo-h2 { font-size: clamp(32px, 3.6vw, 48px); line-height: 1.06; letter-spacing: -.035em; }
.fo-h2-sm { font-size: clamp(26px, 2.6vw, 34px); line-height: 1.15; letter-spacing: -.025em; }
.fo-l1, .fo-l2 { display: block; }
.fo-teal { color: var(--brand-dark); }
.fo h1 .fo-l2 { color: #6a2c91; }
.fo-rose { color: #b3264f; }
.fo-indigo { color: #3f46c4; }
.fo-sky { color: #1f5fa9; }
.fo-amber { color: #b45309; }
.fo-lede { max-width: 50ch; font-size: 18px; line-height: 1.6; color: var(--text-secondary); }
.fo-p { max-width: 50ch; margin-top: 24px !important; font-size: 17px; line-height: 1.6; color: var(--text-secondary); }
.fo-p code { color: var(--text); }
.fo-small { margin-top: 24px !important; font-size: 15px; }
.fo-small a { color: var(--brand-dark); font-weight: 600; text-decoration: none; }
.fo-small a:hover { text-decoration: underline; }

.fo-btns { display: grid; grid-template-columns: repeat(2, minmax(0, 200px)); gap: 12px; margin-top: 32px; }
.fo-btn { display: flex; align-items: center; justify-content: center; height: 48px; padding: 0 24px; font-size: 15px; font-weight: 700; border-radius: var(--radius); text-decoration: none; white-space: nowrap; transition: background-color .15s; }
.fo-btn-p { color: #fff; background: var(--brand-dark); }
.fo-btn-p:hover { background: var(--brand-deep); }
.fo-btn-s { color: var(--text); background: var(--card-bg); border: 1px solid var(--border-hover); font-weight: 600; }
.fo-btn-s:hover { background: var(--bg-soft, #f8f9fb); }
.fo-btn:focus-visible, .fo-search button:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(13,148,136,.25), 0 0 0 1px var(--brand-dark); }

.fo-hero-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px 64px; align-items: end; }
.fo-hero-row h1 { grid-column: 1 / -1; }
.fo-hero-side { display: contents; }
.fo-hero-side .fo-btns { margin-top: 0; }

.fo-hero-side .fo-lede, .fo-hero-search { grid-column: 1; }
.fo-hero-side .fo-hero-search { width: 100%; max-width: 560px; margin: -8px 0 0; }
.fo-hero-alt { grid-column: 1; margin-top: -16px !important; font-size: 15px; color: var(--text-secondary); }
.fo-hero-alt a { color: var(--brand-dark); font-weight: 600; text-decoration: none; }
.fo-hero-alt a + a { margin-left: 8px; }
.fo-hero-alt a:hover { text-decoration: underline; }
.fo-stage { position: relative; height: 720px; margin-top: 64px; }
.fo-block { position: absolute; background: var(--c-block); border-radius: 20px; }
.fo-stage .fo-block { inset: 72px 0 0 0; }

.fo-win { position: absolute; z-index: 2; display: flex; flex-direction: column; background: var(--card-bg); border: 1px solid rgba(15,23,42,.14); border-radius: 12px; box-shadow: var(--fo-float); overflow: hidden; }
.fo-bar { flex: none; display: flex; align-items: center; gap: 6px; height: 34px; padding: 0 14px; background: #f6f7f9; border-bottom: 1px solid #e3e7ec; }
.fo-bar i { width: 10px; height: 10px; border-radius: 50%; background: #ff5f57; }
.fo-bar i:nth-child(2) { background: #febc2e; }
.fo-bar i:nth-child(3) { background: #28c840; }
.fo-bar span { margin-left: 10px; font-size: 12.5px; font-weight: 500; color: var(--fo-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fo-wbody { position: relative; flex: 1; min-height: 0; overflow: hidden; }
.fo-pill { display: inline-flex; align-items: center; height: 22px; padding: 0 10px; font-size: 11px; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; color: var(--status-pending, #374151); background: var(--status-pending-bg, #f3f4f6); border-radius: 999px; }
.fo-float { position: absolute; z-index: 4; background: var(--card-bg); border: 1px solid var(--fo-edge); border-radius: 12px; box-shadow: var(--fo-top); }

.fo-app { left: 6%; top: 0; width: 58%; height: 490px; border-color: var(--fo-edge); }
.fo-app-head { padding: 28px 32px 24px; border-bottom: 1px solid var(--border); }
.fo-app-a { font-size: 22px; font-weight: 700; letter-spacing: -.01em; line-height: 1.3; }
.fo-app-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 12px !important; font-size: 14px; color: var(--text-muted); }
.fo-app-p { margin-top: 16px !important; font-size: 15px; line-height: 1.6; color: var(--text-secondary); max-width: 52ch; }
.fo-app-rows { display: grid; grid-template-columns: 160px minmax(0, 1fr); margin: 0; padding: 8px 32px 24px; font-size: 15px; }
.fo-app-rows dt, .fo-app-rows dd { margin: 0; padding: 14px 0; border-bottom: 1px solid var(--border); }
.fo-app-rows dt { color: var(--text-muted); }
.fo-app-rows dd { color: var(--text); }
.fo-own-k, .fo-own-v { background: var(--brand-bg, #f0fdfa); }
.fo-own-k { padding-left: 12px !important; border-radius: 8px 0 0 8px; }
.fo-own-v { position: relative; border-radius: 0 8px 8px 0; font-weight: 600; }
.fo-show { display: inline-flex; align-items: center; gap: 6px; height: 26px; padding: 0 12px; font-size: 13px; font-weight: 700; color: var(--brand-dark); background: var(--card-bg); border: 1px solid var(--brand-dark); border-radius: 999px; transition: opacity .3s; }
.fo-show svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.fo-own-name { color: var(--brand-dark); }
.fo-js .fo-own-name { position: absolute; left: 0; top: 14px; opacity: 0; transition: opacity .4s; }
.fo-js [data-fo-scene].is-shown .fo-show { opacity: 0; }
.fo-js [data-fo-scene].is-shown .fo-own-name { opacity: 1; }
.fo .fo-show { display: none; }
.fo-js .fo-show { display: inline-flex; }

.fo-hero-card { right: -2%; top: 112px; width: 420px; }
.fo-card { padding: 24px 24px 16px; font-size: 14px; }
.fo-card-k { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--text-muted); }
.fo-card-name { display: flex; align-items: center; gap: 6px; margin-top: 8px !important; font-size: 18px; font-weight: 700; color: var(--brand-dark); }
.fo-card-name svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2.2; }
.fo-card-sub { margin-top: 6px !important; color: var(--text-secondary); line-height: 1.5; }
.fo-card-sub u, .fo-card-ctl u { text-decoration-color: #b8c2cc; text-underline-offset: 3px; }
.fo-card-facts, .fo-card-ctl { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 8px 12px; margin: 16px 0 0; }
.fo-card-facts dt, .fo-card-ctl dt { color: var(--text-muted); }
.fo-card-facts dd, .fo-card-ctl dd { margin: 0; }
.fo-card-ctl { padding: 12px 16px; background: #f1f4f8; border-radius: 10px; }
.fo-card-links { margin-top: 16px; border: 1px solid var(--border); border-radius: 10px; }
.fo-card-links > span { display: grid; grid-template-columns: 20px minmax(0, 1fr) 16px; gap: 12px; align-items: center; padding: 12px 14px; }
.fo-card-links > span + span { border-top: 1px solid var(--border); }
.fo-card-links svg { width: 18px; height: 18px; fill: none; stroke: var(--brand-dark); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.fo-card-links b { display: block; font-weight: 700; color: var(--brand-dark); }
.fo-card-links small { display: block; margin-top: 2px; font-size: 13px; color: var(--text-muted); }
.fo-card-src { margin-top: 12px !important; font-size: 12.5px; color: var(--text-muted); }

.fo-hero-group { left: -2%; bottom: 24px; width: 300px; padding: 18px 20px; }
.fo-float-k { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--text-muted); }
.fo-chain { list-style: none; margin: 12px 0 0; padding: 0; font-size: 14px; }
.fo-chain li { position: relative; padding: 0 0 12px 22px; color: var(--text-secondary); }
.fo-chain li::before { content: ""; position: absolute; left: 4px; top: 6px; width: 8px; height: 8px; border-radius: 50%; background: var(--card-bg); border: 2px solid #94a3b8; }
.fo-chain li:not(:last-child)::after { content: ""; position: absolute; left: 9px; top: 18px; bottom: 0; width: 2px; background: #d6dde5; }
.fo-chain li.is-on { padding-bottom: 0; font-weight: 700; color: var(--text); }
.fo-chain li.is-on::before { background: var(--brand-dark); border-color: var(--brand-dark); }
.fo-float-foot { margin-top: 14px !important; padding-top: 12px; border-top: 1px solid var(--border); font-size: 13px; color: var(--text-muted); }

.fo-sec { margin-top: var(--fo-gap); }
.fo-split-in { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 64px; align-items: center; }
.fo-flip .fo-copy { order: 2; }
.fo-scene { position: relative; }
.fo-scene .fo-block { inset: 48px 0 0 56px; }
.fo-flip .fo-scene .fo-block { inset: 48px 56px 0 0; }
.fo-scene .fo-win { position: relative; margin: 0 40px 48px 0; }
.fo-flip .fo-scene .fo-win { margin: 0 0 48px 40px; }

.fo-land-head { padding: 24px 24px 16px; border-bottom: 1px solid var(--border); }
.fo-land-name { font-size: 20px; font-weight: 700; letter-spacing: -.01em; }
.fo-land-sum { margin-top: 4px !important; font-size: 15px; color: var(--text-secondary); }
.fo-land-sum b { color: var(--text); }
.fo-seg { display: flex; gap: 8px; margin-top: 16px !important; }
.fo-seg span { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 14px; font-size: 14px; font-weight: 600; color: var(--text-secondary); border: 1px solid var(--border-hover); border-radius: 999px; }
.fo-seg span.is-on { color: var(--filter-accent, #16305c); background: var(--filter-tint, #eef2f9); border-color: transparent; }
.fo-seg small { font-weight: 500; color: var(--text-muted); }
.fo-land-figs { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 24px; align-items: center; padding: 16px 24px; border-bottom: 1px solid var(--border); }
.fo-fig b { display: block; font-size: 32px; font-weight: 800; letter-spacing: -.02em; color: var(--brand-dark); }
.fo-fig span { display: block; margin-top: 4px; font-size: 13px; line-height: 1.45; color: var(--text-secondary); }
.fo-mix { display: flex; align-items: center; gap: 16px; }
.fo-donut { flex: none; }
.fo-donut path { fill: none; stroke-width: 7; }
.fo-mix ul { list-style: none; margin: 0; padding: 0; font-size: 13px; line-height: 1.75; color: var(--text-secondary); }
.fo-mix li { display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.fo-mix i { width: 8px; height: 8px; border-radius: 50%; flex: none; }
.fo-mix b { color: var(--text); }
.fo-rows { list-style: none; margin: 0; padding: 0 24px; }
.fo-rows li { padding: 16px 0; border-bottom: 1px solid var(--border); }
.fo-rows li:last-child { border-bottom: 0; }
.fo-row-a { font-size: 15px; font-weight: 700; }
.fo-row-p { margin-top: 4px !important; font-size: 14px; line-height: 1.5; color: var(--text-secondary); }
.fo-row-m { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 8px !important; font-size: 13px; color: var(--text-muted); }

.fo-prof-head { padding: 24px; border-bottom: 1px solid var(--border); }
.fo-prof-name { font-size: 22px; font-weight: 800; letter-spacing: -.02em; line-height: 1.2; }
.fo-prof-sub { margin-top: 6px !important; font-size: 14px; color: var(--text-secondary); }
.fo-alerts { display: grid; grid-template-columns: minmax(0, 260px); gap: 8px; margin-top: 20px; }
.fo-abtn, .fo-alert-on { display: flex; align-items: center; justify-content: center; gap: 8px; height: 40px; padding: 0 16px; font-size: 14px; font-weight: 700; border-radius: var(--radius); white-space: nowrap; }
.fo-abtn-p { color: #fff; background: var(--brand); }
.fo-abtn-s { color: var(--brand-dark); background: var(--card-bg); border: 1px solid var(--brand); }
.fo-alert-on { display: none; color: #065f46; background: #d1fae5; }
.fo-alert-on svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.fo-js [data-fo-scene].is-shown .fo-abtn-p { display: none; }
.fo-js [data-fo-scene].is-shown .fo-alert-on { display: flex; grid-row: 1; grid-column: 1; }
.fo-tree { padding: 20px 24px 28px; }
.fo-tree-k { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--text-muted); }
.fo-tree ul { list-style: none; margin: 0; padding: 0; }
.fo-tree > ul { margin-top: 16px; }
.fo-tree ul ul { position: relative; margin-left: 20px; padding-left: 20px; border-left: 2px solid #d6dde5; }
.fo-tree li { padding-top: 12px; }
.fo-tree > ul > li { padding-top: 0; }
.fo-node { display: inline-flex; align-items: center; height: 38px; padding: 0 14px; white-space: nowrap; font-size: 14px; font-weight: 600; color: var(--text); background: var(--card-bg); border: 1px solid var(--border-hover); border-radius: 10px; }
.fo-node.is-on { color: #fff; background: #1f5fa9; border-color: #1f5fa9; }
.fo-node.is-more { font-weight: 500; color: var(--text-muted); border-style: dashed; }

.fo-lrows { list-style: none; margin: 0; padding: 8px 24px; }
.fo-lrows li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--border); }
.fo-lrows li:last-child { border-bottom: 0; }
.fo-lr-main b { display: block; font-size: 15px; line-height: 1.4; }
.fo-lr-main small { display: block; margin-top: 4px; font-size: 13px; color: var(--text-muted); }
.fo-lr-side { font-size: 14px; text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.fo-lr-side small, .fo-lr-side em { display: block; margin-top: 2px; font-size: 13px; font-style: normal; }
.fo-lr-side small { color: var(--text-muted); }
.fo-lr-side em { color: #b45309; font-weight: 600; }

.fo-dark-win { background: #0f1b20; border-color: #536369; }
.fo-dark-win .fo-bar { background: #17272c; border-bottom-color: #39484d; }
.fo-dark-win .fo-bar span { color: #b5c3c1; }
.fo-code pre { margin: 0; padding: 20px 24px 24px; overflow-x: auto; font: 13px/1.65 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color: #e8f0ef; }
.fo-code .c-m { color: #7fd4ca; font-weight: 700; }
.fo-code .c-k { color: #b5c3c1; }
.fo-code .c-s { color: #fcd9a8; }

.fo-dark { margin-top: var(--fo-gap); padding: clamp(80px, 9vw, 128px) 0; background: var(--surface-dark); color: #e8f0ef; }
.fo-dark .fo-h2 { color: #e8f0ef; }
.fo-mint { color: var(--mint, #5eead4); }
.fo-dark .fo-p { color: #c3cdd9; }
.fo-tr-grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: 64px; align-items: start; margin-top: 16px; }
.fo-tr-fig { margin: 24px 0 0; }
.fo-bar2 { position: relative; height: 64px; border-radius: 10px; overflow: hidden;
  background: repeating-linear-gradient(135deg, #1e293b 0 6px, #273449 6px 12px); }
.fo-bar2-pub { position: absolute; left: 0; top: 0; bottom: 0; background: var(--mint, #5eead4); transform-origin: left; }
.fo-js .fo-dark:not(.is-in) .fo-bar2-pub { transform: scaleX(0); }
.fo-bar2-pub { transition: transform 1.2s var(--fo-ease) .2s; }
.fo-bar2-key { margin: 24px 0 0; }
.fo-bar2-key div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; padding: 12px 0; border-top: 1px solid #334155; font-size: 15px; }
.fo-bar2-key dt { display: flex; align-items: center; gap: 10px; color: #c3cdd9; }
.fo-bar2-key dd { margin: 0; font-weight: 700; color: #e8f0ef; text-align: right; }
.fo-bar2-key i { width: 12px; height: 12px; flex: none; border-radius: 3px; background: repeating-linear-gradient(135deg, #334155 0 3px, #475569 3px 6px); }
.fo-bar2-key i.is-pub { background: var(--mint, #5eead4); }
.fo-tr-fig figcaption { margin-top: 16px; font-size: 13px; line-height: 1.55; color: #94a3b8; }

.fo-plans { width: 100%; max-width: 1040px; margin-top: 32px; border-collapse: collapse; font-size: 15px; }
.fo-plans th, .fo-plans td { padding: 14px 16px 14px 0; text-align: left; border-bottom: 1px solid var(--border); vertical-align: top; }
.fo-plans thead th { font-size: 13px; font-weight: 700; color: var(--text-muted); border-bottom: 2px solid var(--text); }
.fo-plans tbody th, .fo-plans thead th:first-child { width: 40%; }
.fo-plans tbody th { font-weight: 600; color: var(--text); padding-right: 64px; }
.fo-plans td { color: var(--text-secondary); width: 20%; }

.fo-close { margin-top: var(--fo-gap); }
.fo-ask { padding: clamp(40px, 5vw, 64px); background: var(--warm); border-radius: 16px; text-align: center; }
.fo-ask .fo-p { margin-left: auto; margin-right: auto; }
.fo-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; max-width: 600px; margin: 32px auto 0; }
.fo-search input { height: 48px; min-width: 0; padding: 0 16px; font: 400 16px var(--font); color: var(--text); background: var(--card-bg); border: 1px solid var(--border-strong); border-radius: var(--radius); }
.fo-search input:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px rgba(13,148,136,.15); }
.fo-search button { height: 48px; padding: 0 28px; font: 700 15px var(--font); color: #fff; background: var(--brand-dark); border: 0; border-radius: var(--radius); cursor: pointer; }
.fo-search button:hover { background: var(--brand-deep); }
.fo-srcnote { margin: 48px 0 64px !important; font-size: 12.5px; line-height: 1.6; color: var(--text-muted); }

.fo-js [data-fo-scene] .fo-win, .fo-js [data-fo-scene] .fo-float { transition: opacity .8s var(--fo-ease), transform .8s var(--fo-ease); }
.fo-js [data-fo-scene]:not(.is-in) .fo-win, .fo-js [data-fo-scene]:not(.is-in) .fo-float { opacity: 0; transform: translateY(24px); }
.fo-js [data-fo-scene] .fo-float { transition-delay: .15s; }
.fo-js [data-fo-scene="hero"] .fo-hero-card { transition-delay: .9s; }
@media (prefers-reduced-motion: reduce) {
  .fo-js [data-fo-scene] .fo-win, .fo-js [data-fo-scene] .fo-float, .fo-bar2-pub, .fo-own-name, .fo-show { transition: none !important; }
}

@media (max-width: 1180px) {
  .fo-hero-card { right: 0; width: 380px; }
  .fo-hero-group { left: 0; }
  .fo-app { left: 4%; width: 60%; }
}
@media (max-width: 1023px) {
  .fo-hero-row, .fo-split-in, .fo-tr-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .fo-hero-side .fo-btns { margin-top: 0; grid-column: auto; grid-row: auto; }
  .fo-flip .fo-copy { order: 0; }
  .fo-stage { height: auto; padding: 32px 24px 24px; }
  .fo-stage .fo-block { inset: 0; }
  .fo-stage .fo-win, .fo-stage .fo-float { position: relative; left: auto; right: auto; top: auto; bottom: auto; width: auto; }
  .fo-app { height: auto; }
  .fo-hero-card { margin: 24px 0 0 auto; max-width: 420px; }
  .fo-hero-group { display: none; }
  .fo-scene { min-height: 0; padding: 24px; }
  .fo-scene .fo-block, .fo-flip .fo-scene .fo-block { inset: 0; }
  .fo-scene .fo-win, .fo-flip .fo-scene .fo-win { margin: 0; }
}
@media (max-width: 679px) {
  .fo .cov-crumb { margin: 16px 0 24px; }
  .fo-lede { font-size: 17px; }
  .fo-p { font-size: 16px; }
  .fo-btns { grid-template-columns: minmax(0, 1fr); }
  .fo-alerts { grid-template-columns: minmax(0, 1fr); }
  .fo-stage { margin-top: 40px; padding: 16px 12px; }
  .fo-app-head { padding: 20px 16px 16px; }
  .fo-app-a { font-size: 18px; }
  .fo-app-rows { grid-template-columns: 120px minmax(0, 1fr); padding: 4px 16px 16px; font-size: 14px; }
  .fo-hero-card { margin: 16px 0 0; }
  .fo-card-facts, .fo-card-ctl { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .fo-card-facts dd, .fo-card-ctl dd { margin-bottom: 8px; }
  .fo-scene { padding: 12px; }
  .fo-land-figs { grid-template-columns: minmax(0, 1fr); }
  .fo-land-head, .fo-land-figs { padding-left: 16px; padding-right: 16px; }
  .fo-rows { padding: 0 16px; }
  .fo-seg span { height: 32px; padding: 0 12px; font-size: 13px; white-space: nowrap; }
  .fo-seg small { display: none; }
  .fo-mix { flex-direction: column; align-items: flex-start; }
  .fo-mix li { white-space: normal; }
  .fo-lrows li { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .fo-lr-side { text-align: left; }
  .fo-lr-side small, .fo-lr-side em { display: inline; margin-left: 8px; }
  
  .fo-plans { font-size: 14px; }
  .fo-plans thead tr, .fo-plans tbody tr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .fo-plans thead th:first-child { display: none; }
  .fo-plans tbody tr { border-bottom: 1px solid var(--border); }
  .fo-plans tbody th { grid-column: 1 / -1; width: auto; padding-right: 0; padding-bottom: 4px; border-bottom: 0; }
  .fo-plans td { width: auto; padding-top: 4px; border-bottom: 0; }
  
  .fo-plans thead { display: none; }
  .fo-plans td::before { content: attr(data-plan); display: block; margin-bottom: 2px; font-size: 12px; font-weight: 700; color: var(--text-muted); }
  
  .fo-tree { padding: 16px 16px 20px; }
  .fo-tree ul ul { margin-left: 10px; padding-left: 12px; }
  .fo-node { padding: 0 12px; font-size: 13px; }
  
  .fo-code pre { padding: 16px; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; }
  
  .fo-ask { padding: 0; background: none; border-radius: 0; text-align: left; }
  .fo-ask .fo-p { margin-left: 0; margin-right: 0; }
  .fo-search { grid-template-columns: minmax(0, 1fr); }
  .fo-srcnote { font-size: 13px; }
}
