/* ---------- REPAIR STATION ---------- */
#rp-hud{position:absolute;inset:0;pointer-events:none}
#rp-hud button{pointer-events:auto}
.rp-top{position:absolute;top:calc(8px + var(--safeT));left:calc(10px + var(--safeL));right:calc(10px + var(--safeR));display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.rp-job{background:var(--panel);border:1px solid var(--line);padding:6px 12px;display:flex;flex-direction:column}
.rp-job b{text-transform:uppercase;letter-spacing:.14em;font-size:15px;color:#f1ede4}.rp-job small{color:var(--dim);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.rp-stats{display:flex;gap:8px;align-items:center}
.rp-stats span{background:var(--panel);border:1px solid var(--line);padding:0 12px;min-height:44px;display:flex;align-items:center;font-size:18px;letter-spacing:.06em;font-variant-numeric:tabular-nums}
.rp-stats span.low{color:var(--orange)}.rp-stats span.ot{color:var(--red)}
.rp-instr{position:absolute;left:50%;top:calc(66px + var(--safeT));transform:translateX(-50%);background:var(--yellow);color:#151209;font-weight:900;letter-spacing:.14em;text-transform:uppercase;font-size:clamp(15px,2.4vw,22px);padding:8px 18px;white-space:nowrap;max-width:94vw;overflow:hidden;text-overflow:ellipsis;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%)}
.rp-instr.inspect{background:var(--orange)}.rp-instr.hint{background:var(--green)}
.rp-instr.bad{animation:rpshake .35s}
@keyframes rpshake{25%{transform:translateX(calc(-50% - 8px))}75%{transform:translateX(calc(-50% + 8px))}}
.reduced .rp-instr.bad{animation:none;background:var(--red);color:#fff}
.rp-steps{position:absolute;left:50%;top:calc(116px + var(--safeT));transform:translateX(-50%);display:flex;gap:8px;align-items:center}
.rp-steps i{font-style:normal;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.25);background:var(--panel);font-size:16px;color:var(--dim)}
.rp-steps i.cur{border-color:var(--yellow);color:var(--yellow)}.rp-steps i.ok{border-color:var(--green);background:#2c3a22;color:var(--green)}
.rp-steps small{color:var(--orange);font-size:12px;letter-spacing:.1em;margin-left:6px}
.rp-assist{position:absolute;right:calc(14px + var(--safeR));bottom:calc(16px + var(--safeB));display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.rp-assist button{min-height:56px;min-width:170px;font-size:14px}
.rp-assist small{font-size:11px;color:var(--dim);letter-spacing:.12em;text-transform:uppercase}
@media (pointer:coarse){.rp-assist small{display:none}}
.rp-ring{position:absolute;width:74px;height:74px;margin:-37px 0 0 -37px;pointer-events:none}
.rp-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.rp-ring circle{fill:none;stroke-width:9}.rp-ring .bg{stroke:rgba(0,0,0,.55)}.rp-ring .fg{stroke:var(--green);stroke-dasharray:100;stroke-dashoffset:100;stroke-linecap:round}
#rp-stamp{position:fixed;left:50%;top:44%;transform:translate(-50%,-50%) rotate(-8deg);font-weight:900;font-size:clamp(48px,10vw,120px);letter-spacing:.1em;color:#8fd14f;border:10px solid #8fd14f;padding:0 30px;text-shadow:0 4px 0 rgba(0,0,0,.4);pointer-events:none;opacity:0}
#rp-stamp.show{animation:stamp .5s cubic-bezier(.2,1.6,.4,1) forwards}
@keyframes stamp{0%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) scale(2.2)}100%{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) scale(1)}}
.reduced #rp-stamp.show{animation:none;opacity:1}
#rp-select{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:calc(12px + var(--safeT)) 12px calc(12px + var(--safeB))}
.rp-panel{background:var(--panel2);border:1px solid var(--line);width:min(860px,96vw);max-height:70vh;overflow:auto;clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);touch-action:pan-y}
.rp-panel .body{padding:14px 18px 18px}.rp-panel h2{font-size:22px;color:#f1ede4}
.rp-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--dim);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;margin-top:6px}.rp-meta b{color:var(--yellow)}
.rp-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rp-cards button{height:auto;min-height:140px;text-align:left;padding:12px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;text-transform:none;letter-spacing:.02em}
.rp-cards button i{font-style:normal;font-size:28px;color:var(--yellow)}
.rp-cards button b{text-transform:uppercase;letter-spacing:.1em;font-size:14.5px}
.rp-cards button small{font-weight:400;color:#bdb8ad;font-size:12px;line-height:1.3}
.rp-cards button em{font-style:normal;color:var(--yellow);font-size:12px;letter-spacing:.08em;margin-top:auto}
@media (max-width:700px){.rp-cards{grid-template-columns:1fr}.rp-cards button{min-height:0}.rp-instr{white-space:normal;text-align:center}}
