/* Code-authored iron, old brass and bone dial; no external assets. */
.pressure-control{--pressure-brass:#aa9160;--pressure-bone:#d0c39e;--pressure-iron:#36382e;--pressure-dark:#10140f;border:2px ridge #716044;padding:12px 10px 10px;background:linear-gradient(90deg,#121710,#202219 50%,#121710);box-shadow:inset 0 0 0 2px #080c08,0 3px 8px #0008;margin:2px 0 10px}
.pressure-control__heading{display:flex;flex-direction:column;gap:5px;text-align:center;border-bottom:1px solid #554b34;padding-bottom:7px}
.pressure-control__heading>span{font:9px/1.2 sans-serif;letter-spacing:.2em;color:#a79269}
.pressure-control__heading>b{font:normal 16px/1.25 Georgia;color:#d3bd8b}
.pressure-control__instruments{position:sticky;top:-20px;z-index:2;display:flex;align-items:center;gap:5px;padding:5px 0;background:linear-gradient(90deg,#121710,#202219 50%,#121710);border-bottom:1px solid #554b34}
.pressure-control__gauge{position:relative;width:64%;min-width:0;flex:0 0 64%;margin:0}
.pressure-control__gauge svg{width:100%;display:block;overflow:visible}
.pressure-control__bezel-outer{fill:#171a13;stroke:#5e5036;stroke-width:2}
.pressure-control__bezel-inner{fill:#343326;stroke:#aa9160;stroke-width:3}
.pressure-control__face{fill:#131910;stroke:#080d08;stroke-width:3}
.pressure-control__scale{fill:none;stroke:#30392b;stroke-width:7}
.pressure-control__band{fill:none;stroke:#798965;stroke-width:7}
.pressure-control__tick{fill:none;stroke:#847d5d;stroke-width:1}
.pressure-control__tick--major{stroke:#c0af85;stroke-width:1.5}
.pressure-control__gauge text{fill:#ae9f77;font:9px Georgia;text-anchor:middle}
.pressure-control__gauge text.pressure-control__dial-label{font:6px sans-serif;letter-spacing:.8px;fill:#897d61}
.pressure-control__needle path{fill:#d0c39e;stroke:#181b12;stroke-width:1}
.pressure-control__needle circle{fill:#88734c;stroke:#151a10;stroke-width:1}
.pressure-control__hub{fill:#927a4a;stroke:#181a11;stroke-width:2}
.pressure-control__pin{fill:#171b11;stroke:#c3a873;stroke-width:.8}
.pressure-control__bezel-wear{fill:none;stroke:#c0a372;stroke-width:1;opacity:.65}
.pressure-control__pressure{position:absolute;left:50%;top:69%;transform:translateX(-50%);color:#d0c39e;font:19px/1 Georgia;text-shadow:0 1px #000}
.pressure-control[data-pressure="high"] .pressure-control__pressure{color:#d5a06e}
.pressure-control[data-pressure="low"] .pressure-control__pressure{color:#caa47a}
#station-panel .pressure-control__band-label{margin:5px 0 8px;text-align:center;font:10px/1.45 Georgia;color:#a99b76}
.pressure-control__band-label b{color:#b0bf97;font-weight:normal}
.pressure-control__wheel-row{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px;align-items:center;text-align:center}
.pressure-control__wheel{width:59px;max-width:100%;flex:0 0 auto;filter:drop-shadow(0 2px 2px #000)}
.pressure-control__wheel-seat{fill:#161b13;stroke:#665a3d;stroke-width:2}
.pressure-control__rim-shadow{fill:none;stroke:#060b08;stroke-width:12}
.pressure-control__spokes{fill:#514d38;stroke:#8a7850;stroke-width:1}
.pressure-control__rim{fill:none;stroke:#675d40;stroke-width:7}
.pressure-control__handled-edge{fill:none;stroke:#b0a176;stroke-width:2}
.pressure-control__wheel-nut{fill:#80714b;stroke:#171c12;stroke-width:2}
.pressure-control__nut-slot{fill:none;stroke:#242819;stroke-width:2}
.pressure-control__opening{min-width:0}
.pressure-control__opening>span{display:block;font:7px/1.5 sans-serif;letter-spacing:.08em;color:#a79670}
.pressure-control__opening output{display:block;font:12px/1.5 Georgia;color:#d0bd8e;white-space:nowrap}
.pressure-control__opening small{display:none}
.pressure-control__range-label{display:block;margin-top:7px;font:11px/1.4 Georgia;color:#baac87}
.pressure-control__range{appearance:none;-webkit-appearance:none;display:block;box-sizing:border-box;width:100%;height:36px;margin:0;padding:0;background:transparent;cursor:ew-resize;touch-action:pan-y;accent-color:#af9664}
.pressure-control__range::-webkit-slider-runnable-track{height:8px;border:1px solid #796644;background:linear-gradient(#0a0f09,#33382a);box-shadow:inset 0 1px 2px #000}
.pressure-control__range::-moz-range-track{height:6px;border:1px solid #796644;background:linear-gradient(#0a0f09,#33382a);box-shadow:inset 0 1px 2px #000}
.pressure-control__range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:19px;height:25px;margin-top:-10px;border:2px ridge #b39a67;border-radius:2px;background:linear-gradient(90deg,#423f2b,#81744e 48%,#514b31 52%,#272c1d);box-shadow:0 2px 3px #000}
.pressure-control__range::-moz-range-thumb{width:15px;height:21px;border:2px ridge #b39a67;border-radius:2px;background:linear-gradient(90deg,#423f2b,#81744e 48%,#514b31 52%,#272c1d);box-shadow:0 2px 3px #000}
.pressure-control__range:focus-visible{outline:2px solid #d3b675;outline-offset:2px}
.pressure-control__range:disabled{opacity:.5;cursor:default}
.pressure-control__range-ends{display:flex;justify-content:space-between;margin-top:-3px;font:8px/1.2 sans-serif;letter-spacing:.15em;color:#a9956c}
.pressure-control__adjust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:7px}
.pressure-control__adjust button{font:11px/1.3 Georgia;padding:6px 3px;text-align:center;min-height:42px}
.pressure-control button:disabled{cursor:default}
#station-panel .pressure-control__instruction{margin:9px 0 8px;font:12px/1.5 Georgia;color:#c5b995}
.pressure-control__witness{padding:9px 8px;border:1px solid #586045;background:#121a0e;margin:9px 0}
.pressure-control__witness>span{font:8px/1.4 sans-serif;letter-spacing:.16em;color:#a5af8c}
.pressure-control__witness-track{height:6px;background:#0b1008;border:1px solid #505a3e;margin:6px 0 7px}
.pressure-control__witness-track i{display:block;height:100%;width:0;background:#8b9a6e}
.pressure-control__witness b{font:normal 11px/1.5 Georgia;color:#b9c39e}
#station-panel .pressure-control__feedback{border-left:2px solid #a0794d;margin:8px 0;padding-left:8px;font:12px/1.5 Georgia;color:#d4b083}
#station-panel .pressure-control__wear{margin:8px 0;padding:6px 8px;border:1px solid #69513a;background:#291e13;font:11px/1.5 Georgia;color:#d1ae7c}
.pressure-control__wear b{font-weight:normal;color:#e0be86}
.pressure-control__seal,.pressure-control__return{display:block;width:100%;padding:10px 8px;font:12px/1.45 Georgia;text-align:center;border-color:#a58b57;background:linear-gradient(#484631,#242819)}
#station-panel .pressure-control__live{margin:8px 0 0;padding-top:6px;border-top:1px solid #3d422e;font:10px/1.4 Georgia;color:#929a7c}
.pressure-control[data-paused="true"] .pressure-control__live{color:#c4b58c}
@media(max-width:650px){.pressure-control{padding:10px 8px}.pressure-control__pressure{font-size:17px}.pressure-control__wheel{width:51px}.pressure-control__opening output{font-size:11px}.pressure-control__adjust button{min-height:42px}.pressure-control__instruments{top:-20px}}

/* A live measured rite uses the station panel as an instrument, rather than
   repeating the already-read station description above its timed controls. */
#station-panel.measured{width:374px;max-width:calc(100% - 36px);padding:10px 11px;scroll-padding:12px}
#station-panel.measured>h2{font-size:18px;line-height:1.2;margin:0 28px 3px 0}
#station-panel.measured>#station-readout{font:10px/1.3 Georgia;margin:0 0 6px;color:#b2af93}
#station-panel.measured>.close{margin:-2px -2px 0 5px;min-width:27px;min-height:25px}
/* Keep contextual prose available to assistive reading without spending the
   small operating panel's height on it. The heading and witness stay visible. */
#station-panel.measured>p.small,
#station-panel.measured>h2+p:not(#station-readout),
#station-panel.measured>.diagnoses,
#station-panel.measured>.action-list>p:first-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#station-panel.measured>.action-list{gap:5px}
#station-panel.measured>.action-list>[data-action="cancel-rite"]{padding:5px 8px;font:11px/1.3 Georgia;min-height:27px;text-align:center}
#station-panel.measured .pressure-control{display:grid;grid-template-columns:133px minmax(0,1fr);gap:4px 7px;padding:6px;margin:0;position:relative}
#station-panel.measured .pressure-control>*{grid-column:1/-1;min-width:0}
#station-panel.measured .pressure-control__heading{gap:0;padding-bottom:4px}
#station-panel.measured .pressure-control__heading>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#station-panel.measured .pressure-control__heading>b{font-size:14px;line-height:1.3}
/* Flatten only this internal group into the compact grid. The gauge itself
   remains sticky, so a rare long warning cannot hide the actual needle. */
#station-panel.measured .pressure-control__instruments{display:contents}
#station-panel.measured .pressure-control__gauge{grid-column:1;grid-row:2/span 3;width:133px;height:105px;flex:none;position:sticky;top:0;align-self:start;z-index:2;background:#171c13}
#station-panel.measured .pressure-control__gauge svg{height:105px;width:133px}
#station-panel.measured .pressure-control__pressure{font-size:17px;top:69%}
#station-panel.measured .pressure-control__wheel-row{grid-column:2;grid-row:2;flex-direction:row;gap:5px;text-align:left;justify-content:center;align-items:center;padding:0;min-height:44px}
#station-panel.measured .pressure-control__wheel{width:43px;flex:0 0 43px}
#station-panel.measured .pressure-control__opening>span{font:7px/1.3 sans-serif;letter-spacing:.06em}
#station-panel.measured .pressure-control__opening output{font:12px/1.5 Georgia}
#station-panel.measured .pressure-control__range-label{grid-column:2;grid-row:3;margin:0;font-size:0;align-self:center}
#station-panel.measured .pressure-control__range{height:30px;margin:0}
#station-panel.measured .pressure-control__range-ends{display:none}
#station-panel.measured .pressure-control__adjust{grid-column:2;grid-row:4;gap:4px;margin:0;align-self:start}
#station-panel.measured .pressure-control__adjust button{min-height:38px;font:11px/1.2 Georgia;padding:4px 2px}
#station-panel.measured .pressure-control__band-label{margin:0;padding-top:2px;font:10px/1.3 Georgia}
#station-panel.measured .pressure-control__instruction{margin:2px 0;font:11px/1.35 Georgia}
#station-panel.measured .pressure-control__feedback{margin:2px 0;font:11px/1.35 Georgia;padding-left:6px}
#station-panel.measured .pressure-control__wear{margin:1px 0;padding:4px 6px;font:10px/1.3 Georgia}
#station-panel.measured .pressure-control__witness{margin:1px 0;padding:5px 7px}
#station-panel.measured .pressure-control__witness>span{font-size:7px}
#station-panel.measured .pressure-control__witness-track{margin:3px 0;height:5px}
#station-panel.measured .pressure-control__witness b{font:normal 10px/1.3 Georgia}
#station-panel.measured .pressure-control__seal,
#station-panel.measured .pressure-control__return{padding:7px 6px;min-height:34px;font:11px/1.25 Georgia}
#station-panel.measured .pressure-control__live{margin:0;padding-top:3px;font:9px/1.3 Georgia}
@media(max-width:650px){
 #station-panel.measured{width:300px;max-width:calc(100% - 16px);right:8px;padding:8px}
 #station-panel.measured>h2{font-size:17px}
 #station-panel.measured .pressure-control{grid-template-columns:116px minmax(0,1fr);gap:4px 5px;padding:5px}
 #station-panel.measured .pressure-control__gauge{width:116px;height:92px;top:0}
 #station-panel.measured .pressure-control__gauge svg{width:116px;height:92px}
 #station-panel.measured .pressure-control__pressure{font-size:16px}
 #station-panel.measured .pressure-control__wheel{width:35px;flex-basis:35px}
 #station-panel.measured .pressure-control__wheel-row{gap:3px;min-height:40px}
 #station-panel.measured .pressure-control__opening output{font-size:11px}
 #station-panel.measured .pressure-control__adjust button{font-size:11px;min-height:42px;padding:4px 1px}
 #station-panel.measured .pressure-control__range{height:34px}
}
