#livingRoomTangramHotspot,#livingRoomTangramHotspot:hover,#livingRoomTangramHotspot:focus,#livingRoomTangramHotspot:active{position:absolute;left:51.5%;top:64.5%;width:4%;height:4.5%;padding:0;margin:0;border:0;outline:0;box-shadow:none;background:transparent;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#livingRoomTangramHotspot::before,#livingRoomTangramHotspot::after{content:none}
#tangramDialog{width:min(95vw,640px);max-height:96dvh;overflow:auto;padding:18px;background:#eee0bd;color:#352b21;border:5px solid #785438;box-shadow:0 20px 70px #0009;font-family:Georgia,serif}
#tangramDialog::backdrop{background:#0a101bcc}
#tangramDialog .tangram-header{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:2px solid #8e6c46;padding-bottom:10px}
#tangramDialog h2{font:700 clamp(16px,4vw,23px) 'DM Mono',monospace;margin:5px 0}
#tangramDialog small{font:10px 'DM Mono',monospace;letter-spacing:.12em}
#tangramDialog button{min-height:44px;border:1px solid #8c704d;background:#ddc79c;color:#34281b;padding:8px 10px;cursor:pointer;font:700 11px 'DM Mono',monospace;box-shadow:1px 2px 0 #82603c;touch-action:manipulation}
#tangramDialog button:disabled{opacity:.45;cursor:default}
#tangramDialog .tangram-caption{display:flex;align-items:center;justify-content:space-between;gap:8px}
#tangramDialog h3{margin:10px 0;font-size:18px}
#tangramCount{font:12px 'DM Mono',monospace}
#tangramBoard{display:block;width:100%;max-height:66dvh;touch-action:none;user-select:none;background:#b88d58;border:3px solid #75502d;box-shadow:inset 0 2px 6px #58371977}
#tangramBoard .tan-piece{cursor:grab;stroke:#664221;stroke-width:1.4;stroke-linejoin:round;filter:drop-shadow(1px 3px 1px #45280780)}
#tangramBoard .tan-piece.selected{stroke:#f7e0a0;stroke-width:2.5}
#tangramBoard .tan-piece.locked{cursor:default;filter:drop-shadow(0 1px 1px #45280750)}
#tangramDialog .tangram-controls{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;justify-content:center}
#tangramDialog .tangram-instructions{text-align:center;font-size:13px;margin:10px 0}
#tangramResult{text-align:center;border-top:1px solid #a88d65;padding:10px 0;margin-top:10px}
#tangramNext{display:block;margin:8px auto}
#tangramDialog [hidden]{display:none}
@media(max-width:600px){#tangramDialog{padding:10px}#tangramBoard{max-height:none}#tangramDialog .tangram-controls{position:sticky;bottom:0;background:#eee0bdf5;padding:8px 0}#livingRoomTangramHotspot{min-width:20px;min-height:20px}}
