.rt{--bg:#142a2e;--panel:#203a3e;--ink:#f7e5c3;--muted:#a9c2bc;--accent:#e3a45c;position:fixed;z-index:100;inset:0;display:flex;flex-direction:column;overflow:auto;padding-bottom:16px;background:radial-gradient(circle at 80% 10%,#31565a 0,#142a2e 44%);color:var(--ink);font-family:Nunito,sans-serif}.rt>*{box-sizing:border-box}.rt-intro{padding:14px 18px 5px;font-size:14px;line-height:1.35}.rt-intro b,.rt-intro span{display:block}.rt-intro span{color:var(--muted);margin-top:4px}.rt-status{margin:8px 18px;min-height:42px;padding:11px 13px;border:1px solid #49696b;border-radius:10px;background:rgba(0,0,0,.18);font-size:14px}.rt-chains{display:flex;flex-direction:column;gap:4px;margin:2px 18px 10px;color:#c8d9d0;font-size:12px}.rt-chains span{padding:5px 8px;border-left:3px solid #d98b48;background:rgba(0,0,0,.16);border-radius:4px}.rt-chains b{color:#f7e5c3;margin-right:5px}.rt-status.ok{border-color:#9bd18b;color:#d9f4c8}.rt-status.bad{border-color:#ed8b70;color:#ffc1ae}.rt-board{position:relative;touch-action:none;width:100%;aspect-ratio:1;margin:9px auto 14px;display:block;gap:4px;padding:5px;overflow:hidden;background:#42676a;border:8px solid #93633b;border-radius:14px;box-shadow:0 8px 0 #0c1c1f}.rt-cell{position:relative;z-index:2;aspect-ratio:1;border:0;border-radius:6px;background:#d9c797;color:#264346;min-width:0;cursor:pointer;touch-action:manipulation;box-shadow:inset 0 0 0 1px rgba(42,65,48,.15)}.rt-cell:active{filter:brightness(1.12)}.rt-cell.route{background:#fff0bf;box-shadow:inset 0 0 0 3px var(--accent)}.rt-cell.route:after{content:none}.rt-cell.depart{background:#c9e2b0}.rt-cell.arrive{background:#efc0a4}.rt-cell.tunnel{background:#cbb5da}.rt-cell.tunnel:before{content:'◎';position:absolute;inset:0;display:grid;place-items:center;font-size:25px;font-weight:900;color:#704b89;text-shadow:0 1px #f3d9ff}.rt-cell.tunnel{border:3px dashed #84549d}.rt-cell.bridge:before{content:'▰';position:absolute;inset:0;display:grid;place-items:center;font-size:23px;color:#7b4c2b;text-shadow:0 1px #f5d19c}.rt-cell.bridge{background:#c99b68}.rt-cell.pile{box-shadow:inset 0 0 0 4px #9b663b}.rt-cell.site span{display:block;font-size:clamp(19px,7vw,30px);line-height:1.05}.rt-cell.riviere{border-bottom:8px solid #5998a2}.rt-route{position:absolute;inset:5px;z-index:4;width:calc(100% - 10px);height:calc(100% - 10px);pointer-events:none;overflow:visible}.rt-route-path{fill:none;stroke:#d36f35;stroke-width:13;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 0 rgba(60,35,20,.35))}.rt-tunnel-link{display:none}.rt-actions{display:flex;gap:9px;justify-content:center}.rt-btn{min-height:42px;padding:9px 16px;border:1px solid #5d7a76;border-radius:9px;background:var(--panel);color:var(--ink);font:700 14px Nunito,sans-serif;cursor:pointer}.rt-btn:disabled{opacity:.35}@media(min-width:600px){.rt{width:430px;left:50%;right:auto;transform:translateX(-50%);box-shadow:0 0 40px #071316}.rt-board{width:100%}}.rt-canvas{display:block;width:100%;height:100%;image-rendering:pixelated;touch-action:none}.rt-cell{display:none}
.rt-asset-board{position:relative;width:100%;aspect-ratio:1;margin:9px auto 14px;padding:0;overflow:hidden;background:#79a957;border:8px solid #93633b;border-radius:14px;box-shadow:0 8px 0 #0c1c1f}.rt-asset-canvas{display:block;width:100%;height:100%;image-rendering:pixelated}
.rt-asset-section{width:100%;margin:8px auto 18px}.rt-asset-title{margin:0;padding:8px 18px;color:#f7e5c3;font-size:14px}.rt-asset-section .rt-asset-canvas{display:block;width:100%;height:auto;aspect-ratio:var(--asset-ratio);image-rendering:pixelated;background:#79a957;border-block:5px solid #93633b;box-sizing:border-box}
