/* Kinetic data instrument; records and detailed views retain their compact layout. */
:root{--paper:#f5f7f5;--ink:#183b32;--forest:#185342;--coral:#ed8774;--yellow:#f3ca56;--line:#d3ddd6}
body{background:var(--paper)}
.hero{grid-template-columns:minmax(0,1fr) 380px;gap:36px;padding:16px 0 20px;min-height:350px;border-bottom:1px solid var(--line);position:relative}
.hero-copy{padding:20px 0}
.hero-copy .eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;color:var(--muted)}
.signal-dot{width:7px;height:7px;background:var(--coral);border-radius:50%;box-shadow:0 0 0 4px #ed877419}
.hero h1{font:700 36px/1.48 var(--serif);margin:18px 0 12px;letter-spacing:0}
.hero h1 em{font:italic 700 36px/1.48 var(--serif);color:var(--forest)}
.hero-product{font-size:14px;margin:0 0 8px;font-weight:600}
.intro{font-size:11px;color:var(--muted)}
.hero-index{display:flex;align-items:center;gap:20px;margin-top:25px;font:9px var(--mono);color:var(--muted)}
.index-line{height:1px;background:var(--line);width:70px}
.hero>.orbital-protocol{border:0;padding:0;display:block;position:relative;min-width:0}
.orbit-scene{position:relative;width:360px;height:306px;margin:auto;isolation:isolate;overflow:clip}
.orbit-track{position:absolute;border:1px solid #ed87747a;border-radius:50%;pointer-events:none;left:50%;top:50%;z-index:-1}
.track-one{width:330px;height:220px;transform:translate(-50%,-50%) rotate(38deg)}
.track-two{width:245px;height:292px;border:1px dashed #73978770;transform:translate(-50%,-50%) rotate(-21deg)}
.orbit-disc-back{position:absolute;width:212px;height:212px;border-radius:50%;background:var(--coral);left:calc(50% - 94px);top:calc(50% - 90px);z-index:-1}
.orbit-core{width:212px;height:212px;position:absolute;left:calc(50% - 106px);top:calc(50% - 106px);display:flex;align-items:center;justify-content:center;flex-direction:column;border:0;border-radius:50%;background:var(--forest);color:#f5f6ef;padding:24px 14px;box-shadow:inset 0 0 0 1px #ffffff0d;transition:background .25s,box-shadow .25s}
.orbit-core:hover{background:#134737;box-shadow:0 0 0 6px #1853420b}
.orbit-core:focus-visible{outline-color:var(--coral);outline-offset:8px}
.orbit-caption{font:10px var(--mono);color:var(--yellow);margin-bottom:5px}
.orbit-label{font-size:11px;color:#d2e4d8}
.orbit-core #overall-rate{font:italic 600 48px/1.2 Georgia,var(--serif);color:#f7f6ec;margin:5px 0;white-space:nowrap;font-variant-numeric:tabular-nums}
.orbit-core #overall-detail{font:9px/1.6 var(--mono);max-width:180px;color:#c0d5c8;text-align:center}
.orbit-action{font-size:9px;margin-top:9px;color:var(--yellow)}
.satellite{display:grid;place-items:center;position:absolute;left:50%;top:50%;width:37px;height:37px;border:1px solid var(--ink);border-radius:50%;font:9px var(--mono);background:var(--paper);pointer-events:none;will-change:transform}
.satellite-one{background:var(--coral);transform:translate(-153px,55px)}
.satellite-two{background:var(--yellow);transform:translate(130px,50px)}
.satellite-three{transform:translate(65px,-145px)}
.orbital-protocol .protocol-bottom{display:flex;justify-content:center;font-size:10px;padding:0;margin-top:4px}
.motion-toggle{position:absolute;bottom:0;right:0;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:transparent}
.motion-toggle:hover{background:#e5ece7}
.motion-toggle img{opacity:.65}
.data-notice{margin-top:12px;background:transparent;border-left:2px solid var(--forest)}
.section-head .eyebrow{color:#b66554}
.section-head h2{font-family:var(--serif);font-size:25px}
.summary-strip>div{position:relative}
.summary-strip>div:first-child strong{color:var(--forest)}
#wrong-count{color:#ac5547}#error-count{color:#947317}
.summary-strip strong{font-variant-numeric:tabular-nums}
.slot{border-radius:2px;transition:filter .2s,transform .2s,box-shadow .2s;transform-origin:center}
.slot:hover,.slot:focus-visible{transform:scaleY(1.4);z-index:2;box-shadow:0 3px 8px #183b321f}
.slot.ok{background:#27614d}.slot.wrong{background:#ed8774}.slot.error{background:#f3ca56}
.drawing-card{transition:transform .25s}
.gallery{grid-template-columns:repeat(8,minmax(0,1fr));gap:18px 10px;padding-bottom:18px}
.drawing-card-head{font-size:10px}
.drawing-meta{font-size:9px;gap:2px 5px}
@media(max-width:1100px){.gallery{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:760px){.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 9px}.drawing-card-head{flex-wrap:wrap;gap:3px}.drawing-title{flex:1}.drawing-meta{font-size:9px}}
@media(max-width:359px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
.drawing-card:hover{transform:translateY(-4px)}
.thumb-button{border-radius:6px;border-color:#c7d5cb;transition:box-shadow .25s,border-color .25s}
.thumb-button:hover{border-color:var(--forest);box-shadow:0 8px 18px #173e2e18}
.thumb-hover{background:#185342eb}
.filters button{transition:background .2s,color .2s}
.filters button.active{background:var(--forest)}
.disclosure summary{transition:color .2s}
dialog[open]{animation:dialog-arrive .24s ease-out}
@keyframes dialog-arrive{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
body.motion-paused *,body.motion-paused *:before,body.motion-paused *:after{animation-play-state:paused!important}
@media(max-width:1000px){.hero{grid-template-columns:minmax(0,1fr) 330px;gap:18px}.orbit-scene{width:330px}.hero h1,.hero h1 em{font-size:30px}.hero-index{gap:12px}.index-line{width:30px}}
@media(max-width:760px){.hero{grid-template-columns:1fr;gap:0;padding:12px 0 16px;min-height:0}.hero-copy{padding:4px 0 0}.hero h1,.hero h1 em{font-size:28px}.hero h1{margin:10px 0}.hero-product{font-size:13px}.hero-index{display:none}.hero>.orbital-protocol{border:0;padding:0}.orbit-scene{width:330px;height:282px}.track-one{width:308px;height:196px}.track-two{width:222px;height:264px}.orbit-core{width:192px;height:192px;left:calc(50% - 96px);top:calc(50% - 96px)}.orbit-disc-back{width:192px;height:192px;left:calc(50% - 84px);top:calc(50% - 80px)}.orbit-core #overall-rate{font-size:44px}.orbital-protocol .protocol-bottom{margin-top:0}.motion-toggle{right:8px}.hero .intro{font-size:10px}.section-head h2{font-size:22px}}
@media(max-width:359px){.orbit-scene{width:288px}.track-one{width:282px}.track-two{width:210px}.hero h1,.hero h1 em{font-size:25px}}
@media(prefers-reduced-motion:reduce){dialog[open]{animation:none}.drawing-card,.thumb-button,.slot{transition:none}}
