.av-knob{--size:58px;display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;border-radius:8px;padding:4px 2px}
.av-knob-label{font:700 9px/1 var(--mono);letter-spacing:.12em;color:#e8edf2;text-transform:uppercase;white-space:nowrap}
.av-knob-body{display:flex;align-items:center;gap:6px}
.av-dual .av-knob-body{display:grid;grid-template-columns:auto auto var(--size) auto auto;gap:4px}
.av-knob-stack{position:relative;width:var(--size);height:var(--size);flex:none}
.av-cap{position:absolute;inset:0;border-radius:50%;cursor:grab;touch-action:none;background:repeating-conic-gradient(from var(--turn),#16191d 0 5deg,#2a2e34 5deg 10deg);box-shadow:0 3px 5px #000a,inset 0 1px 1px #ffffff26,0 0 0 2px #0b0d10;transition:box-shadow .15s}
.av-cap:before{content:"";position:absolute;inset:14%;border-radius:50%;background:radial-gradient(circle at 38% 30%,#555b63,#23272c 62%,#16181b);box-shadow:inset 0 1px 1px #ffffff30,0 1px 2px #000}
.av-cap i{position:absolute;left:50%;top:6%;width:3px;height:26%;margin-left:-1.5px;border-radius:2px;background:#f2f4f6;transform-origin:50% calc(var(--size) * .44);transform:rotate(var(--turn));box-shadow:0 0 2px #000}
.av-cap-inner{inset:24%;z-index:1}
.av-cap-inner i{transform-origin:50% calc(var(--size) * .26);height:30%}
.av-cap:active{cursor:grabbing}
.av-cap:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.av-turn{min-width:30px;min-height:34px;padding:0 5px;border-radius:6px;border:1px solid #545b66;background:linear-gradient(#3a3f47,#23272d);color:#eef2f6;font:600 16px/1 var(--mono);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 2px 2px #0007}
.av-turn small{font-size:8px;letter-spacing:.04em;color:#b8c0ca;margin-top:2px}
.av-turn:active{transform:translateY(1px);background:#4b5563}
.av-pushpull{display:flex;gap:4px}
.av-push,.av-pull{min-height:30px;padding:0 9px;border-radius:5px;border:1px solid #58606b;background:linear-gradient(#3b4048,#24282e);color:#eef2f6;font:700 10px/1 var(--mono);letter-spacing:.08em}
.av-knob.focus-control,.av-push.focus-control,.av-pull.focus-control{box-shadow:0 0 0 2px var(--amber),0 0 18px #f4bd5f66}
.av-knob.focus-control .av-cap{box-shadow:0 3px 5px #000a,inset 0 1px 1px #ffffff26,0 0 0 2px var(--amber)}
.av-entry{width:100%;min-width:0;background:transparent;border:0;color:inherit;font:inherit;text-align:center;padding:0;outline:none;-moz-appearance:textfield;appearance:textfield}
.av-entry::-webkit-inner-spin-button,.av-entry::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.av-entry:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.seg7{height:1em;width:auto;display:block;overflow:visible}
.seg7 .on{fill:currentColor;filter:drop-shadow(0 0 1.5px currentColor)}
.seg7 .off{fill:currentColor;opacity:.07}
@media(prefers-reduced-motion:reduce){.av-cap{transition:none}}
/* Deck layout (shell): glareshield above the displays; G1000 bezel column left of the PFD; ≤1100px PFD only (ND hidden); phones PFD first */
.instruments{display:grid;grid-template-columns:minmax(0,620px) minmax(220px,1fr);gap:12px;align-items:start}
.instruments>.pfd{grid-column:1;min-width:0}
.instruments>.nav-display{grid-column:2;min-width:0}
.glareshield{grid-column:1/-1;min-width:0;container-type:inline-size;position:relative;padding:8px 10px 10px;border-radius:10px;background:linear-gradient(#20262e,#15191f);border:1px solid #07090c;box-shadow:inset 0 1px 0 #ffffff14,0 8px 14px -6px #000c}
.glareshield .aircraft-panel-label{margin:0 2px 7px;font-size:11px;letter-spacing:.04em}
.glareshield .aircraft-panel-label b{color:#dfe7f0;font-weight:650}
.glareshield .aircraft-panel-label span{font-size:11px;color:#8d9db1}
#hardwarePanel{container-type:inline-size;min-width:0}
.deck[data-panel="g1000"] .instruments{grid-template-columns:var(--bezel-width,150px) minmax(0,2fr) minmax(220px,1fr)}
.deck[data-panel="g1000"] .glareshield{grid-column:1;grid-row:1;align-self:stretch;padding:8px 6px}
.deck[data-panel="g1000"] .instruments>.pfd{grid-column:2;grid-row:1}
.deck[data-panel="g1000"] .instruments>.nav-display{grid-column:3;grid-row:1}
@media(max-width:1100px){
 #deck .instruments{grid-template-columns:minmax(0,1fr)}
 #deck .instruments>.pfd{grid-column:1}
 #deck[data-panel="g1000"] .instruments{grid-template-columns:var(--bezel-width,150px) minmax(0,1fr)}
 #deck[data-panel="g1000"] .instruments>.pfd{grid-column:2}
 #deck .instruments>.nav-display{display:none}
}
@media(max-width:800px){
 #deck .instruments,#deck[data-panel="g1000"] .instruments{grid-template-columns:minmax(0,1fr);gap:10px}
 #deck[data-panel="g1000"] .glareshield,#deck[data-panel="g1000"] .instruments>.pfd{grid-column:1;grid-row:auto}
 .instruments>.pfd{order:-1}
 .glareshield,.deck[data-panel="g1000"] .glareshield{padding:7px 6px 8px}
 #deck .instruments>.nav-display{display:none}
}
