.p-room-to-spare{--rsA:#f0c96b;--rsB:#9fd3c7;--rsC:#f2a7a7;--rsD:#c9a7f0}
.p-room-to-spare .rs-note p{max-width:62ch;font-size:clamp(1.02rem,2.5vw,1.15rem);line-height:1.6}
.p-room-to-spare .rs-board{background:#0d1226;border-radius:8px;padding:clamp(12px,3vw,22px);margin:26px 0;box-shadow:0 18px 40px rgba(0,0,0,.35)}
.p-room-to-spare .rs-count{color:var(--muted);letter-spacing:.1em}
.p-room-to-spare .rs-next{background:rgba(239,230,214,.06);border-radius:6px;padding:12px 14px}
.p-room-to-spare .rs-next-label{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.p-room-to-spare .rs-next-name{font-size:clamp(.95rem,3.4vw,1.15rem);color:var(--ink);overflow-wrap:anywhere;margin:4px 0 2px}
.p-room-to-spare .rs-next-size{font-size:.85rem;color:var(--rsA)}
.p-room-to-spare .rs-gauge{height:10px;margin-top:8px;background:rgba(239,230,214,.12);border-radius:3px;overflow:hidden}
.p-room-to-spare .rs-gauge span{display:block;height:100%;width:0;background:var(--rsA)}
.p-room-to-spare .rs-controls{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 6px}
.p-room-to-spare .rs-controls .btn{min-height:44px}
.p-room-to-spare .rs-status{color:#cfc8b8;min-height:3em;margin:6px 0 10px;line-height:1.4}
.p-room-to-spare .rs-blocks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:8px}
@media (min-width:900px){.p-room-to-spare .rs-blocks{grid-template-columns:1fr 1fr}}
.p-room-to-spare .rs-block{width:100%;text-align:left;background:transparent;border:1.5px solid rgba(239,230,214,.25);border-radius:6px;padding:8px 10px;color:var(--ink);font:inherit;cursor:pointer;touch-action:manipulation;min-height:56px}
.p-room-to-spare .rs-block:hover{border-color:rgba(239,230,214,.5)}
.p-room-to-spare .rs-block.fits{border-color:var(--rsA)}
.p-room-to-spare .rs-block.nofit{border-style:dashed;border-color:rgba(239,230,214,.18)}
.p-room-to-spare .rs-block:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.p-room-to-spare .rs-bar{display:flex;height:20px;background:repeating-linear-gradient(90deg,rgba(239,230,214,.07) 0 6px,transparent 6px 12px);border-radius:3px;overflow:hidden}
.p-room-to-spare .rs-seg{height:100%;border-right:1px solid #0d1226}
.p-room-to-spare .rs-meta{display:flex;justify-content:space-between;gap:8px;font-family:var(--mono);font-size:.75rem;color:var(--muted);margin-top:5px;flex-wrap:wrap}
.p-room-to-spare .rs-meta .rs-files{overflow-wrap:anywhere;flex:1 1 60%}
.p-room-to-spare .rs-result{margin-top:16px;padding:14px;border-radius:6px;background:var(--paper);color:var(--paperInk);line-height:1.55}
.p-room-to-spare .rs-result p{margin:0 0 8px}
.p-room-to-spare .rs-result .rs-mine{display:flex;flex-wrap:wrap;gap:3px;margin:8px 0}
.p-room-to-spare .rs-result .rs-mine i{display:block;width:22px;height:14px;border:1px solid #2c2433;border-radius:2px;background:linear-gradient(90deg,#c8553d var(--f),transparent var(--f))}
.p-room-to-spare .shake{animation:rsShake .3s}
@keyframes rsShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.p-room-to-spare .rs-sign{font-style:italic;color:var(--muted)}
