/* Guide-specific layout; all colors inherit the shared guide system. */
html, body { background: var(--paper-warm); color: var(--ink); }
.axis-shell { max-width: 1140px; margin: auto; padding: 28px 24px 56px; line-height: 1.55; }
.axis-shell a { color: var(--guide-red-dark); }
.axis-shell h1 { font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1.06; letter-spacing: -.035em; margin: 16px 0; }
.axis-shell h2 { font-size: 1.15rem; margin: 0 0 12px; }
.axis-eyebrow { color: var(--guide-red-dark); font-size: .78rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.axis-intro { max-width: 760px; font-size: 1.1rem; }
.axis-workbench { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin: 28px 0; }
.axis-panel { border: 1px solid var(--rule-hair); border-radius: 12px; background: var(--paper); padding: 22px; min-width: 0; }
.axis-controls { grid-column: 1 / -1; }
.axis-control-row { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.axis-control-row input[type=range] { flex: 1 1 200px; width: 100%; accent-color: var(--guide-red-dark); min-height: 44px; }
.axis-control-row input[type=number] { width: 95px; padding: 9px; font: inherit; color: var(--ink); background: var(--paper); border: 1px solid var(--ink-3); border-radius: 5px; }
.axis-presets { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.axis-presets button { min-height: 44px; padding: 8px 12px; font: inherit; border: 1px solid var(--rule-hair); border-radius: 6px; color: var(--ink-2); background: var(--paper-warm); cursor: pointer; }
.axis-shell :focus-visible { outline: 3px solid var(--guide-red-dark); outline-offset: 3px; }
.axis-presets button:hover { border-color: var(--guide-red-dark); }
.axis-readout { font-weight: 750; font-size: 1.25rem; margin: 6px 0; }
.axis-note { font-size: .87rem; color: var(--ink-3); }
.axis-plane { width: 100%; height: auto; display: block; }
.axis-plane .circle, .axis-plane .lead-line { fill: none; stroke: var(--waveform-axis); stroke-width: 1.5; }
.axis-plane .lead-label { fill: var(--ink-2); font-size: 17px; font-weight: 700; }
.axis-plane .anatomy { fill: var(--ink-3); font-size: 13px; }
.axis-plane .vector { stroke: var(--guide-red-dark); stroke-width: 4; }
.axis-plane .arrow, .axis-plane .origin { fill: var(--guide-red-dark); }
.axis-leads { display: grid; gap: 8px; }
.axis-lead { display: grid; grid-template-columns: 42px 1fr 64px; align-items: center; gap: 8px; }
.axis-lead svg { width: 100%; height: 47px; overflow: visible; }
.axis-lead .baseline { stroke: var(--waveform-axis); stroke-width: 1; }
.axis-lead .deflection { stroke: var(--guide-red-dark); stroke-width: 2.5; }
.axis-lead output { text-align: right; font-variant-numeric: tabular-nums; }
.axis-model { border-left: 4px solid var(--guide-red-dark); padding: 14px 18px; background: var(--tint); }
.axis-shell details { border-top: 1px solid var(--rule-hair); padding-top: 14px; margin-top: 20px; }
.axis-shell summary { cursor: pointer; font-weight: 700; min-height: 44px; }
.axis-shell footer { border-top: 1px solid var(--rule-hair); margin-top: 26px; padding-top: 16px; font-size: .85rem; color: var(--ink-3); }
.axis-shell code { overflow-wrap: anywhere; }
@media(max-width: 700px) { .axis-shell { padding: 20px 16px 36px; } .axis-workbench { grid-template-columns: 1fr; } .axis-panel { padding: 16px; } }
@media print { .axis-shell { padding: 0; } .axis-controls { display: none; } .axis-workbench { grid-template-columns: 1fr 1fr; } .axis-panel { break-inside: avoid; } }

@media(max-width:700px){.axis-control-row{display:grid;grid-template-columns:1fr;gap:8px}.axis-control-row input[type=range]{min-height:44px}.axis-control-row input[type=number]{width:100%;max-width:160px}}
