.airframe-explorer{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);display:block;overflow:clip}.airframe-explorer *,.airframe-explorer :before,.airframe-explorer :after{box-sizing:border-box}.airframe-explorer [hidden]{display:none!important}.airframe-explorer button{font:inherit;cursor:pointer;color:inherit}.airframe-explorer button:focus-visible{outline:3px solid var(--color-teal);outline-offset:4px}.airframe-explorer button:disabled{cursor:not-allowed;opacity:.55}.explorer-toolbar{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.explorer-view-controls{flex-wrap:wrap;gap:4px;display:flex}.explorer-view-controls button{border-radius:var(--radius-sm);background:0 0;border:0;min-height:44px;padding:10px 14px;font-size:13px;font-weight:600}.explorer-view-controls button:hover{background:var(--color-paper)}.explorer-reset{background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:10px 4px 10px 12px;display:inline-flex;font-size:13px!important}.explorer-reset:hover{color:var(--color-teal)}.explorer-workspace{grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);display:grid}.explorer-visual{background:var(--color-diagram-surface);flex-direction:column;min-width:0;display:flex}.airframe-diagram{flex:1}.diagram-caption{color:var(--color-muted);justify-content:space-between;align-items:center;gap:12px;padding:22px 24px 0;font-size:12px;display:flex}.diagram-caption span:first-child{color:var(--color-ink);font-weight:500}.diagram-canvas{aspect-ratio:4/3;width:100%;max-width:700px;margin-inline:auto;position:relative}.airframe-svg{width:100%;height:100%;display:block;overflow:visible}.diagram-registration{stroke:color-mix(in srgb, var(--color-muted) 20%, var(--color-paper));stroke-width:1.2px}.aircraft-lines{stroke:var(--color-ink);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.aircraft-body{fill:var(--color-surface)}.aircraft-part{fill:var(--color-diagram-material);transition:fill var(--motion-fast) ease}.aircraft-part[data-selected=true]{fill:color-mix(in srgb, var(--color-yellow) 78%, var(--color-surface))}.aircraft-window{fill:var(--color-diagram-glass)}.aircraft-stripe{fill:color-mix(in srgb, var(--color-teal) 70%, var(--color-paper));stroke-width:1px}.aircraft-seam{fill:none;stroke:color-mix(in srgb, var(--color-muted) 70%, var(--color-paper));stroke-width:1.2px}.aircraft-prop{fill:var(--color-ink);stroke-width:1px}.aircraft-hub{fill:color-mix(in srgb, var(--color-teal) 25%, var(--color-paper))}.gear-strut{fill:none;stroke:var(--color-ink);stroke-width:5px}.gear-wheel{fill:var(--color-ink)}.gear-hub{fill:var(--color-diagram-material);stroke-width:1px}.aircraft-part[data-selected=true] .gear-strut{stroke:color-mix(in srgb, var(--color-yellow) 60%, var(--color-ink))}.aircraft-part[data-selected=true] .gear-hub{fill:color-mix(in srgb, var(--color-yellow) 78%, var(--color-surface))}.diagram-axis{fill:none;stroke:color-mix(in srgb, var(--color-muted) 45%, var(--color-paper));stroke-width:1.1px;stroke-dasharray:5 6}.diagram-note{font-family:var(--font-body);letter-spacing:.06em;fill:var(--color-muted);stroke:none;font-size:11px}.antenna-mount{fill:color-mix(in srgb, var(--color-muted) 60%, var(--color-paper));stroke-width:1px}.antenna-signal{fill:none;stroke:color-mix(in srgb, var(--color-teal) 50%, var(--color-paper));stroke-width:2px}.diagram-hotspots{pointer-events:none;position:absolute;inset:0}.diagram-hotspot{z-index:1;left:var(--pin-x);top:var(--pin-y);pointer-events:auto;background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.hotspot-dot{border:2px solid var(--color-surface);background:var(--color-teal);width:27px;height:27px;color:var(--color-surface);box-shadow:0 2px 5px color-mix(in srgb, var(--color-ink) 15%, transparent);transition:background-color var(--motion-fast) ease, transform var(--motion-fast) var(--ease-out);border-radius:50%;place-items:center;font-size:11px;font-weight:700;line-height:1;display:grid}.diagram-hotspot[aria-pressed=true]{z-index:3}.diagram-hotspot[aria-pressed=true] .hotspot-dot{background:var(--color-ink);outline:2px solid var(--color-yellow);outline-offset:2px}.diagram-hotspot:hover .hotspot-dot{transform:scale(1.12)}.hotspot-label{white-space:nowrap;background:color-mix(in srgb, var(--color-surface) 92%, transparent);color:var(--color-ink);pointer-events:none;border-radius:3px;padding:4px 6px;font-size:11px;font-weight:600;line-height:1.2;position:absolute;bottom:calc(100% - 4px);left:50%;transform:translate(-50%)}.label-below .hotspot-label{top:calc(100% - 4px);bottom:auto}.label-left .hotspot-label{inset:50% calc(100% - 4px) auto auto;transform:translateY(-50%)}.label-right .hotspot-label{top:50%;bottom:auto;left:calc(100% - 4px);transform:translateY(-50%)}.airframe-explorer[data-labels-visible=false] .hotspot-label{display:none}.diagram-footnote{max-width:64ch;color:var(--color-muted);margin:0;padding:0 24px 24px;font-size:11px;line-height:1.6}.explorer-visual-tools{border-top:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding:10px 22px;display:flex}.explorer-visual-tools p{color:var(--color-muted);margin:0;font-size:12px}.explorer-labels{background:0 0;border:0;flex-shrink:0;align-items:center;gap:7px;min-height:44px;padding:8px 0;display:inline-flex;font-size:12px!important}.labels-indicator{border:1px solid var(--color-muted);background:0 0;border-radius:3px;width:15px;height:15px}.explorer-labels[aria-pressed=true] .labels-indicator{background:var(--color-teal);border-color:var(--color-teal);position:relative}.explorer-labels[aria-pressed=true] .labels-indicator:after{content:"";border-left:1.5px solid var(--color-surface);border-bottom:1.5px solid var(--color-surface);width:7px;height:4px;position:absolute;top:3px;left:3px;transform:rotate(-45deg)}.explorer-notebook{border-left:1px solid var(--color-line);min-width:0}.explorer-part-selector{border-bottom:1px solid var(--color-line);padding:24px}.part-selector-heading{margin-bottom:15px}.part-selector-heading h2{font:600 16px/1.3 var(--font-body);letter-spacing:-.01em;margin:0 0 4px}.part-selector-heading>span{color:var(--color-muted);font-size:11px}.explorer-part-list{flex-wrap:wrap;gap:7px;display:flex}.explorer-part-list button{border:1px solid var(--color-line);border-radius:var(--radius-sm);min-height:38px;transition:border-color var(--motion-fast) ease, background-color var(--motion-fast) ease;background:0 0;align-items:center;gap:7px;padding:7px 10px 7px 7px;font-size:12px;display:inline-flex}.explorer-part-list button:hover{border-color:var(--color-teal)}.explorer-part-list button[aria-pressed=true]{background:var(--color-teal-soft);border-color:var(--color-teal);color:var(--color-teal);font-weight:600}.part-list-number{background:var(--color-paper);width:20px;height:20px;color:var(--color-muted);border-radius:50%;flex-shrink:0;place-items:center;font-size:10px;display:grid}.explorer-part-list button[aria-pressed=true] .part-list-number{background:var(--color-teal);color:var(--color-surface)}.part-detail-heading h3{font:600 30px/1.15 var(--font-display);letter-spacing:-.035em;margin:0 0 6px}.part-detail-heading span{color:var(--color-teal);font-size:11px}.part-observation h4,.part-question h4{margin:0 0 7px;font-size:12px;font-weight:700}.part-observation p,.part-question p{color:var(--color-muted);margin:0;font-size:13px;line-height:1.7}.part-question{border-top:1px solid var(--color-line);margin-top:24px;padding-top:22px}.answer-button{text-underline-offset:4px;min-height:44px;text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--color-teal) 40%, var(--color-paper));background:0 0;border:0;margin-top:7px;padding:10px 0;color:var(--color-teal)!important;font-size:12px!important;font-weight:600!important}.answer-button:hover{text-decoration-color:currentColor}.part-question .part-answer{background:var(--color-teal-soft);color:var(--color-ink);border-radius:var(--radius-sm);margin-top:8px;padding:14px}.explorer-statusbar{border-top:1px solid var(--color-line);color:var(--color-muted);justify-content:space-between;gap:14px;padding:11px 22px;font-size:10px;display:flex}.explorer-live{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.explorer-no-script{padding:24px}.explorer-no-script dt{margin-top:20px;font-weight:600}.explorer-no-script dd{margin:6px 0 0}@media (width<=1000px){.explorer-workspace{grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr)}.explorer-part-selector,.explorer-part-details{padding-left:20px;padding-right:20px}}@media (width<=760px){.explorer-workspace{grid-template-columns:minmax(0,1fr)}.explorer-notebook{border-left:0;border-top:1px solid var(--color-line)}.explorer-toolbar{align-items:flex-start;gap:6px;padding:10px 12px}.explorer-view-controls{gap:2px}.explorer-view-controls button{padding:9px 10px;font-size:12px}.explorer-reset{padding:10px 3px}.explorer-reset svg{display:none}.diagram-caption{padding:20px 18px 0;font-size:11px}.diagram-footnote{padding:0 18px 20px}.explorer-visual-tools{padding:8px 18px}.explorer-part-selector,.explorer-part-details{padding:22px}.explorer-part-list button{min-height:44px}.part-detail-heading h3{font-size:29px}.part-summary{max-width:65ch}}@media (width<=480px){[data-diagram-view=aircraft] .diagram-hotspot[data-select-part=wing] .hotspot-label{top:auto;bottom:calc(100% - 4px)}[data-diagram-view=top] .diagram-hotspot[data-select-part=stabilator] .hotspot-label,[data-diagram-view=bottom] .diagram-hotspot[data-select-part=stabilator] .hotspot-label{inset:50% calc(100% - 4px) auto auto;transform:translateY(-50%)}}@media (width<=420px){.explorer-toolbar{flex-wrap:wrap}.explorer-view-controls{flex:1;grid-template-columns:1fr 1fr;display:grid}.explorer-view-controls button{white-space:nowrap;padding:9px 8px}.explorer-reset{margin-top:0;padding:10px 5px}.hotspot-label{padding:3px 4px;font-size:10px}.hotspot-dot{width:25px;height:25px;font-size:10px}.label-right .hotspot-label{left:calc(100% - 8px)}.diagram-hotspot[data-select-part=rudder].label-right .hotspot-label,.diagram-hotspot[data-select-part=landing-gear].label-right .hotspot-label{top:calc(100% - 3px);left:50%;transform:translate(-50%)}.explorer-visual-tools p{font-size:11px}.explorer-statusbar{padding:11px 18px;font-size:9px}}@media (prefers-reduced-motion:reduce){.airframe-explorer *,.airframe-explorer :before,.airframe-explorer :after{transition:none!important}.diagram-hotspot:hover .hotspot-dot{transform:none}}.airframe-explorer{border:1px solid var(--color-line);background:var(--color-paper);border-radius:9px}.explorer-toolbar{background:var(--color-surface);padding:9px 16px}.explorer-view-controls button{font:600 17px var(--font-display);letter-spacing:.025em;text-transform:uppercase;padding:9px 16px}.explorer-view-controls button[aria-pressed=true]{background:var(--color-ink);color:var(--color-surface)}.explorer-reset{font:500 14px var(--font-body)!important}.explorer-workspace{grid-template-columns:minmax(0,1fr) 360px;align-items:stretch}.explorer-visual{--stage-footer-height:58px;--camera-row-height:70px;background:var(--color-paper);min-height:640px;position:relative;overflow:hidden}.stage-heading{z-index:3;pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:23px;left:25px;right:25px}.stage-aircraft{font:600 27px var(--font-display);letter-spacing:.06em;display:block}.stage-model{color:var(--color-muted);margin-top:3px;font-size:12px;display:block}.stage-badge{border:1px solid var(--color-line);font:500 12px var(--font-display);text-transform:uppercase;letter-spacing:.06em;background:var(--color-paper);border-radius:4px;padding:5px 9px}.model-stage{inset:0 0 calc(var(--stage-footer-height) + var(--camera-row-height));opacity:0;position:absolute}.model-stage canvas{cursor:grab;touch-action:none;width:100%;height:100%;display:block}.model-stage canvas:active{cursor:grabbing}[data-model-ready=true] .model-stage{opacity:1}[data-model-ready=true] .diagram-fallback{display:none}.diagram-fallback{margin-top:72px}.diagram-fallback .diagram-caption{display:none}.model-loading{z-index:5;background:var(--color-surface);border:1px solid var(--color-line);border-radius:4px;max-width:60ch;padding:8px 12px;font-size:12px;position:absolute;bottom:82px;left:24px}.camera-tools{z-index:5;bottom:calc(var(--stage-footer-height) + 12px);border:1px solid var(--color-line);background:var(--color-surface);border-radius:8px;align-items:center;gap:3px;padding:4px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.camera-tools button{background:0 0;border:0;border-radius:4px;place-items:center;width:38px;height:36px;display:grid}.camera-tools button:hover{background:var(--color-teal-soft)}.camera-tools button svg{width:18px;height:18px}.tool-divider{background:var(--color-line);width:1px;height:20px;margin:0 3px}.airframe-explorer:not([data-model-ready=true]) .camera-tools{display:none}.explorer-visual-tools{background:var(--color-surface);min-height:var(--stage-footer-height);position:absolute;bottom:0;left:0;right:0}.explorer-visual-tools p{font-size:11px}.model-annotations{pointer-events:none;position:absolute;inset:0;overflow:hidden}.model-marker{pointer-events:auto;background:0 0;border:0;place-items:center;width:44px;height:44px;margin:-22px 0 0 -22px;padding:0;display:grid;position:absolute}.model-marker-dot{z-index:4;border:3px solid var(--color-teal);background:var(--color-surface);color:#0000;width:16px;height:16px;box-shadow:0 2px 4px color-mix(in srgb,var(--color-ink) 18%,transparent);border-radius:50%;place-items:center;font-size:1px;display:grid;position:relative}.model-marker[aria-pressed=true] .model-marker-dot{z-index:5;background:var(--color-yellow);border-color:var(--color-ink);width:21px;height:21px;color:var(--color-ink);font:600 10px var(--font-body)}.model-marker-label{z-index:2;white-space:nowrap;min-width:92px;font:600 16px var(--font-display);letter-spacing:.02em;text-transform:uppercase;color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-line);box-shadow:0 3px 6px color-mix(in srgb,var(--color-ink) 5%,transparent);border-radius:5px;padding:9px 13px;position:absolute;bottom:calc(100% + 13px);left:50%;transform:translate(-50%)}.model-marker-label:after{content:"";border-left:1px dashed var(--color-muted);height:28px;position:absolute;top:100%;left:50%}.model-marker[data-select-part=landing-gear] .model-marker-label,.model-marker[data-select-part=flap] .model-marker-label{top:calc(100% + 13px);bottom:auto}.model-marker[data-select-part=landing-gear] .model-marker-label:after,.model-marker[data-select-part=flap] .model-marker-label:after{top:auto;bottom:100%}.model-marker[data-select-part=rudder] .model-marker-label{bottom:-13px;left:45px;transform:none}.model-marker[data-select-part=rudder] .model-marker-label:after{border-left:0;border-top:1px dashed var(--color-muted);width:30px;height:0;top:50%;left:auto;right:100%}.model-marker[aria-pressed=true] .model-marker-label{z-index:3;border-color:var(--color-teal);background:var(--color-teal-soft)}.model-annotations[data-labels-visible=false] .model-marker-label{display:none}.model-marker:focus-visible .model-marker-label,.model-marker:hover .model-marker-label{display:block}.notebook-title{border-bottom:1px solid var(--color-line);font:600 18px var(--font-display);letter-spacing:.045em;align-items:center;gap:10px;padding:17px 19px;display:flex}.notebook-title svg{width:23px}.notebook-page{color:var(--color-muted);margin-left:auto;font-size:12px}.explorer-notebook{background:var(--color-surface)}.explorer-part-selector{padding:17px 19px}.part-selector-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.part-selector-heading h2{font:600 20px var(--font-display);margin:0}.part-selector-heading>span{font-size:10px}.explorer-part-list{gap:6px}.explorer-part-list button{gap:5px;min-height:32px;padding:4px 7px;font-size:11px}.part-list-number{width:16px;height:16px;font-size:9px}.explorer-part-details{padding:20px 20px 23px}.part-detail-heading{align-items:baseline;gap:10px;display:flex}.part-detail-heading h3{font:600 32px var(--font-display);text-transform:uppercase;letter-spacing:.025em}.part-summary{margin:13px 0 18px;font-size:13px;line-height:1.65}.part-observation h4,.part-question h4{font:600 17px var(--font-display);text-transform:uppercase;letter-spacing:.025em}.part-observation p,.part-question p{font-size:12px;line-height:1.65}.part-question{margin-top:18px;padding-top:16px}.answer-button{margin-top:3px;font-size:12px!important}.model-demonstration{border-top:1px solid var(--color-line);background:var(--color-paper);padding:18px 20px}.demo-heading{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:14px;display:flex}.demo-heading h2{font:600 20px var(--font-display);text-transform:uppercase}.demo-heading>span{color:var(--color-muted);font-size:10px}.flap-control{display:block}.flap-control>span:first-child{justify-content:space-between;font-size:12px;font-weight:500;display:flex}.flap-control output{color:var(--color-muted);font-size:11px;font-weight:400}.flap-control input{accent-color:var(--color-teal);cursor:pointer;width:100%;margin:12px 0 4px}.range-endpoints{color:var(--color-muted);justify-content:space-between;font-size:10px;display:flex}.demo-switch,.propeller-controls{justify-content:space-between;align-items:center;margin-top:15px;font-size:12px;display:flex}.demo-switch button{border:1px solid var(--color-line);background:var(--color-surface);border-radius:4px;padding:6px 12px;font-size:11px}.demo-switch button[aria-pressed=true]{background:var(--color-teal-soft);border-color:var(--color-teal);color:var(--color-teal)}.propeller-controls>div{gap:5px;display:flex}.propeller-controls button{border:1px solid var(--color-line);background:var(--color-surface);border-radius:4px;align-items:center;gap:6px;min-height:34px;padding:6px 10px;font-size:11px;display:inline-flex}.propeller-controls button[data-model-action=play]{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-surface);min-width:70px}.propeller-controls svg{width:15px;height:15px}.model-demonstration>p{color:var(--color-muted);margin-top:13px;font-size:10px;line-height:1.5}.explorer-statusbar{background:var(--color-surface);font-size:10px}@media (width>=1500px){.explorer-workspace{grid-template-columns:minmax(0,1fr) 390px}.explorer-visual{min-height:700px}}@media (width<=1100px) and (width>=761px){.explorer-workspace{grid-template-columns:minmax(0,1fr) 315px}.stage-badge{display:none}.stage-aircraft{font-size:23px}}@media (width<=760px){.explorer-workspace{grid-template-columns:minmax(0,1fr)}.explorer-visual{min-height:480px}.stage-badge{display:none}.stage-heading{top:16px;left:18px}.model-marker-label{min-width:0;padding:5px 8px;font-size:13px}.explorer-part-list button{min-height:42px}.explorer-notebook{border-top:1px solid var(--color-line)}.explorer-view-controls button{padding:9px 10px;font-size:15px}.explorer-visual-tools p{max-width:24ch}}@media (hover:hover) and (pointer:fine){.model-marker:hover .model-marker-dot{transform:scale(1.15)}}@media (prefers-reduced-motion:reduce){.model-marker:hover .model-marker-dot{transform:none}}.antenna-note{z-index:3;max-width:34ch;color:var(--color-muted);background:var(--color-surface);border:1px solid var(--color-line);border-radius:4px;padding:10px 12px;font-size:11px;position:absolute;bottom:133px;left:24px}@media (width>=761px){.explorer-workspace{height:clamp(570px,100dvh - 365px,790px)}.explorer-visual{min-height:0}.explorer-notebook{grid-template-rows:auto auto minmax(0,1fr) auto;min-height:0;display:grid}.explorer-part-details{scrollbar-width:thin;overflow-y:auto}.part-summary{margin:10px 0 14px}.model-demonstration{padding-block:14px}}
