.rd-game{--rd-twig:#b08a58;--rd-wood:#a0744a;--rd-stone:#9a9a93;--rd-metal:#7fa0b5;--rd-armored:#56707f;--rd-select:#f3bd63;--rd-fog:color-mix(in srgb, var(--bg) 70%, var(--muted));grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.rd-brief{border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--bg-elevated);gap:8px;padding:14px 16px;display:grid}.rd-brief-title{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.rd-brief-title h2{font-family:var(--display);color:var(--text-strong);text-transform:uppercase;margin:0;font-size:1.7rem;line-height:1.1}.rd-number,.rd-label{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-hot);font-size:.8rem}.rd-date,.rd-muted{color:var(--muted);font-size:.85rem}.rd-intel{color:var(--text);margin:0}.rd-loadout{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.rd-tool,.rd-item{align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.rd-tool{border:1px solid var(--border);background:var(--surface);padding:2px 8px 2px 2px}.rd-par{align-items:baseline;gap:6px;margin-left:auto;font-size:.85rem;display:inline-flex}.rd-par strong{font-family:var(--display);color:var(--text-strong);font-size:1.1rem}.rd-board{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:14px;display:grid}.rd-stage{gap:8px;min-width:0;display:grid}.rd-toolbar{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.rd-tabs{border:1px solid var(--border);background:var(--surface);display:inline-flex}.rd-tabs button,.rd-actions button,.rd-camera button{min-height:34px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 12px;font-size:.85rem}.rd-tabs button+button{border-left:1px solid var(--border)}.rd-tabs button.is-active{background:var(--accent-soft);color:var(--text-strong);box-shadow:inset 0 -2px 0 var(--accent)}.rd-check{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.rd-check input{width:16px;height:16px;accent-color:var(--accent);margin:0}.rd-scene .bb-model-status{border:1px solid var(--border);background:var(--surface);color:var(--muted);padding:4px 8px;font-size:.8rem;position:absolute;top:8px;left:8px}.rd-plan{border:1px solid var(--border);background:var(--bg);touch-action:manipulation;width:100%;height:auto;max-height:72vh;display:block}.rd-scene{border:1px solid var(--border);background:var(--bg);height:min(72vh,620px);min-height:360px;position:relative}.rd-scene>div:first-child,.rd-scene canvas{width:100%;height:100%}.rd-scene-fallback{height:100%;color:var(--muted);place-items:center;display:grid}.rd-camera{flex-wrap:wrap;gap:4px;display:flex;position:absolute;bottom:8px;right:8px}.rd-camera button{border:1px solid var(--border);background:var(--surface)}.rd-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0;font-size:.8rem;display:flex}.rd-swatch{border:1px solid var(--border-strong);width:14px;height:10px;display:inline-block}.rd-swatch.is-reached{background:color-mix(in srgb, var(--accent) 30%, var(--surface))}.rd-swatch.is-target{border:2px solid var(--accent);background:0 0}.rd-swatch.is-loot{border:2px dashed var(--accent);background:0 0}.rd-swatch.is-fog{background:var(--rd-fog)}.rd-swatch.rd-grade-twig{background:var(--rd-twig)}.rd-swatch.rd-grade-wood{background:var(--rd-wood)}.rd-swatch.rd-grade-stone{background:var(--rd-stone)}.rd-swatch.rd-grade-metal{background:var(--rd-metal)}.rd-swatch.rd-grade-armored{background:var(--rd-armored)}.rd-swatch.is-door{background:#b8c4cc;height:6px}.rd-swatch.is-armored-door{background:#34454f;outline:1px solid #b8c4cc;height:6px}.rd-swatch.is-window{background:#a9d2e6;height:4px}.rd-cell{fill:var(--surface)}.rd-cell.is-loot{stroke:var(--accent);stroke-width:.09px;stroke-dasharray:.35 .2}.rd-cell-lit{fill:var(--accent);opacity:.16;pointer-events:none}.rd-cell-fog{fill:var(--rd-fog);opacity:.82;pointer-events:none}.rd-hatch-line{stroke:var(--muted);stroke-width:.06px}.rd-stairs{stroke:var(--muted);stroke-width:.05px;pointer-events:none;opacity:.8}.rd-tc{pointer-events:none}.rd-slab{fill-opacity:.32;stroke:var(--bg);stroke-width:.06px;cursor:pointer}.rd-slab.rd-grade-twig{fill:var(--rd-twig)}.rd-slab.rd-grade-wood{fill:var(--rd-wood)}.rd-slab.rd-grade-stone{fill:var(--rd-stone)}.rd-slab.rd-grade-metal{fill:var(--rd-metal)}.rd-slab.rd-grade-armored{fill:var(--rd-armored)}.rd-slab.is-target{stroke:var(--accent);stroke-width:.12px}.rd-slab.is-selected{stroke:var(--rd-select);stroke-width:.16px;fill-opacity:.5}.rd-slab.is-gone{fill:var(--bg);fill-opacity:1;stroke:var(--muted);stroke-dasharray:.2 .15}.rd-edge,.rd-door{cursor:pointer}.rd-edge .rd-stroke{stroke-width:.34px;stroke-linecap:butt}.rd-edge.rd-grade-twig .rd-stroke{stroke:var(--rd-twig)}.rd-edge.rd-grade-wood .rd-stroke{stroke:var(--rd-wood)}.rd-edge.rd-grade-stone .rd-stroke{stroke:var(--rd-stone)}.rd-edge.rd-grade-metal .rd-stroke{stroke:var(--rd-metal)}.rd-edge.rd-grade-armored .rd-stroke{stroke:var(--rd-armored)}.rd-window{stroke:#a9d2e6;stroke-width:.12px;pointer-events:none}.rd-hit{fill:#0000;stroke:none}.rd-door .rd-stroke{stroke-width:.5px}.rd-door.rd-kind-wooden-door .rd-stroke,.rd-door.rd-kind-double-wooden-door .rd-stroke{stroke:#8a5a31}.rd-door.rd-kind-sheet-door .rd-stroke,.rd-door.rd-kind-double-sheet-door .rd-stroke{stroke:#b8c4cc}.rd-door.rd-kind-garage-door .rd-stroke{stroke:#d0b36a}.rd-door.rd-kind-armored-door .rd-stroke,.rd-door.rd-kind-double-armored-door .rd-stroke{stroke:#34454f}.rd-mark{stroke:#0000;stroke-width:.1px;pointer-events:none}.rd-edge.is-target .rd-mark,.rd-door.is-target .rd-mark{stroke:var(--accent-hot,var(--accent));stroke-dasharray:.3 .18}.rd-edge.is-selected .rd-mark,.rd-door.is-selected .rd-mark{stroke:var(--rd-select);stroke-dasharray:none;stroke-width:.14px}.rd-edge.is-selected .rd-stroke,.rd-door.is-selected .rd-stroke{filter:brightness(1.25)}.rd-edge.is-gone,.rd-door.is-gone{opacity:.28}.rd-edge.is-gone .rd-stroke,.rd-door.is-gone .rd-stroke{stroke-dasharray:.18 .18}.rd-edge.is-highlighted .rd-mark,.rd-door.is-highlighted .rd-mark,.rd-slab.is-highlighted{stroke:var(--rd-select);stroke-width:.16px;animation:1.1s ease-in-out infinite rd-pulse}.rd-edge.is-collapsing,.rd-door.is-collapsing,.rd-slab.is-collapsing{animation:1.4s ease-out rd-fall}.rd-plan [role=button]:focus{outline:none}.rd-plan [role=button]:focus-visible .rd-mark,.rd-slab:focus-visible{stroke:var(--rd-select);stroke-dasharray:none}.rd-edge:hover .rd-stroke,.rd-door:hover .rd-stroke,.rd-slab:hover{filter:brightness(1.2)}@keyframes rd-pulse{50%{stroke-opacity:.3}}@keyframes rd-fall{0%{opacity:1}30%{opacity:1;filter:drop-shadow(0 0 .3px var(--danger))}to{opacity:.28}}@media (prefers-reduced-motion:reduce){.rd-edge.is-highlighted .rd-hit,.rd-door.is-highlighted .rd-hit,.rd-slab.is-highlighted,.rd-edge.is-collapsing,.rd-door.is-collapsing,.rd-slab.is-collapsing{animation:none}}.rd-panel{gap:10px;display:grid}.rd-card,.rd-result,.rd-targets{border:1px solid var(--border);background:var(--surface);gap:8px;padding:12px 14px;display:grid}.rd-piece{align-items:center;gap:10px;display:flex}.rd-piece>div{display:grid}.rd-piece strong{color:var(--text-strong)}.rd-cost{font-family:var(--display);color:var(--text-strong);margin:0;font-size:1.5rem}.rd-items{flex-wrap:wrap;gap:4px 12px;display:flex}.rd-blow{min-height:42px;font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:1px solid var(--accent-border)!important;background:var(--accent-fill)!important;color:var(--accent-ink)!important;font-size:1.05rem!important}.rd-blow:hover:not(:disabled){background:var(--accent-fill-hover)!important}.rd-blow:disabled{cursor:not-allowed;border-color:var(--border)!important;background:var(--surface-2)!important;color:var(--muted)!important}.rd-actions{flex-wrap:wrap;gap:6px;display:flex}.rd-actions button{border:1px solid var(--border);background:var(--surface-2)}.rd-actions button:disabled{opacity:.5;cursor:not-allowed}.rd-actions .rd-quiet{color:var(--muted);background:0 0;border-color:#0000}.rd-notice{border:1px solid var(--border);border-left:3px solid var(--muted);background:var(--surface);margin:0;padding:8px 12px;font-size:.9rem}.rd-notice.is-warn{border-left-color:var(--warning);background:var(--warning-soft)}.rd-notice.is-good{border-left-color:var(--success);background:var(--success-soft)}.rd-targets summary{cursor:pointer;font-weight:600}.rd-targets ul,.rd-log{gap:4px;margin:0;padding:0;list-style:none;display:grid}.rd-targets button,.rd-log button{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;justify-content:space-between;gap:10px;padding:6px 8px;font-size:.85rem;display:flex}.rd-log>li{grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;font-size:.88rem;display:grid}.rd-oracle .rd-log>li{border-bottom:1px solid var(--hairline);grid-template-columns:1fr;padding-bottom:6px}.rd-log>li.is-current button{border-color:var(--rd-select)}.rd-log>li.is-done{opacity:.8}.rd-collapse{color:var(--success);grid-column:1/-1;margin:0;font-size:.8rem}.rd-total{justify-content:space-between;align-items:baseline;display:flex}.rd-total strong{font-family:var(--display);color:var(--text-strong);font-size:1.6rem}.rd-result{border-left:3px solid var(--accent);background:var(--bg-elevated)}.rd-result.is-oracle,.rd-result.is-under-par{border-left-color:var(--success)}.rd-result.is-lost{border-left-color:var(--danger)}.rd-found{color:var(--accent-hot);grid-column:1/-1;margin:0;font-size:.8rem;font-weight:600}.rd-rating{font-family:var(--display);color:var(--text-strong);text-transform:uppercase;font-size:2rem;line-height:1}.rd-result p{margin:0}.rd-score{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0;display:grid}.rd-score div{display:grid}.rd-score dt{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.rd-score dd{font-family:var(--display);color:var(--text-strong);margin:0;font-size:1.35rem}.rd-next{color:var(--muted);margin:0;font-size:.85rem}.rd-next strong{font-family:var(--mono);color:var(--text-strong)}.rd-stamp{color:var(--muted-soft);margin:0;font-size:.78rem}.rd-hub{gap:16px;display:grid}.rd-modes{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.rd-mode{border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--bg-elevated);color:var(--text);grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px;padding:14px;display:grid}.rd-mode strong{font-family:var(--display);color:var(--text-strong);text-transform:uppercase;font-size:1.35rem;display:block}.rd-mode.is-soon{border-left-color:var(--border-strong);opacity:.7}.rd-archive{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rd-archive a{border:1px solid var(--border);background:var(--surface);text-align:center;min-width:44px;padding:6px 10px;display:inline-block}.rd-rules{gap:12px;max-width:76ch;display:grid}.rd-rules h2{margin:12px 0 0}.rd-rules ul{gap:6px;margin:0;padding-left:20px;display:grid}@media (max-width:900px){.rd-board{grid-template-columns:1fr}.rd-scene{height:58vh}}.rd-legend-grades{flex-wrap:wrap;align-items:center;gap:4px 8px;display:inline-flex}.rd-archive-title{font-family:var(--display);text-transform:uppercase;color:var(--muted);margin:8px 0 6px;font-size:1rem}.rd-guess{max-width:560px}.rd-hint{flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.rd-blurred{filter:blur(7px)grayscale(.4)}.rd-table-wrap{border:1px solid var(--border);background:var(--bg-elevated);position:relative;overflow-x:auto}.rd-table{border-collapse:separate;border-spacing:4px;width:100%;min-width:860px;font-size:.85rem}.rd-table th[scope=col]{color:var(--muted);font-family:var(--display);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:6px 8px;font-size:.78rem}.rd-table td,.rd-table th[scope=row]{border:1px solid var(--border);vertical-align:middle;padding:6px 8px}.rd-item-name{min-width:170px;color:var(--text-strong);text-align:left;align-items:center;gap:8px;display:flex}.rd-table td{color:var(--text-strong)}.rd-cell-match{background:color-mix(in srgb, var(--success) 34%, var(--surface));border-color:var(--success)!important}.rd-cell-partial{background:color-mix(in srgb, var(--warning) 32%, var(--surface));border-color:var(--warning)!important}.rd-cell-miss{background:color-mix(in srgb, var(--danger) 26%, var(--surface));border-color:color-mix(in srgb, var(--danger) 60%, var(--border))!important}.rd-arrow{margin-left:6px;font-size:.8rem}.rd-materials{flex-wrap:wrap;gap:2px;display:inline-flex}
