dialog.editor-dialog{width:min(1200px,96vw);padding:28px}.editor-dialog h2{margin-top:12px}.drawing-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px;background:#e9eee2;border:1px solid #d2ddc7;border-radius:12px 12px 0 0}.drawing-toolbar button{font-size:13px;padding:10px 14px;background:#fafff4;color:#25463b}.drawing-toolbar button[aria-pressed=true]{background:#173e35;color:#e5ff83}.toolbar-spacer{flex:1}.drawing-hint{margin:0;padding:10px 16px;background:#f0f4ea;font-size:13px;color:#486044;min-height:38px}.hotspot-workspace{display:grid;grid-template-columns:minmax(0,1fr) 260px;border:1px solid #d2ddc7;border-radius:0 0 12px 12px;overflow:hidden}.image-workspace{min-width:0;padding:18px;background:#dbe1d4;background-image:linear-gradient(45deg,#d1d9c9 25%,transparent 25%),linear-gradient(-45deg,#d1d9c9 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d1d9c9 75%),linear-gradient(-45deg,transparent 75%,#d1d9c9 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0}.upload-placeholder{padding:70px 20px;text-align:center;border:2px dashed #93a586;border-radius:10px;background:#edf2e7}.upload-placeholder>span{font-size:44px}.upload-placeholder p{font-size:14px}.drawing-stage{position:relative;width:100%;background:#fff;box-shadow:0 3px 20px #203c2826;touch-action:none;user-select:none}.drawing-stage[hidden],.upload-placeholder[hidden]{display:none}.drawing-stage>img{display:block;width:100%;height:100%;position:absolute;inset:0;pointer-events:none}.drawing-stage>svg{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none}.hotspot-shape{fill:#d9fc6640;stroke:#153d33;stroke-width:2;vector-effect:non-scaling-stroke;cursor:inherit}.hotspot-shape.selected{fill:#d9fc6680;stroke:#fcfff3;stroke-width:3;filter:drop-shadow(0 0 1px #142d2b)}.hotspot-draft{fill:#d9fc6660;stroke:#173e35;stroke-width:2;stroke-dasharray:6 4;vector-effect:non-scaling-stroke;pointer-events:none}.hotspot-number{font-size:20px;font-weight:800;fill:#163c36;paint-order:stroke;stroke:white;stroke-width:3px;pointer-events:none}.upload-control{margin-top:15px;background:#fbfff4;border:1px solid #b2c29f;padding:14px;border-radius:8px;cursor:pointer}.upload-control input{font-size:12px;border:0;background:transparent;padding:5px 0}.hotspot-sidebar{background:white;padding:16px;max-height:620px;overflow:auto}.hotspot-sidebar h3{font-size:16px}.hotspot-list{display:grid;gap:8px;max-height:270px;overflow:auto;margin:16px 0}.hotspot-item{display:grid;grid-template-columns:26px 1fr;text-align:left;align-items:center;gap:4px 8px;background:#f2f5ec;color:#163c36;padding:11px;border:1px solid transparent}.hotspot-item.selected{border-color:#809c62;background:#e4f1cb}.hotspot-item span{grid-row:span 2;background:#173e35;color:white;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;font-size:11px}.hotspot-item strong{font-size:13px;overflow-wrap:anywhere}.hotspot-item small{font-size:10px;color:#61735a}.selected-hotspot{border-top:1px solid #dbe4d3;padding-top:16px}.selected-hotspot .row button{font-size:11px;padding:8px 11px}.editor-save-bar{display:flex;flex-wrap:wrap;align-items:center;gap:15px;padding-top:8px}.editor-save-bar>button{margin-left:auto}.board>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.board .game-region{fill:#d9fc6666;stroke:#587549;stroke-width:2;vector-effect:non-scaling-stroke}.board svg text{fill:#163c36;stroke:#fff;stroke-width:2px;paint-order:stroke;font-size:20px;font-weight:700}.board.play .game-region,.board.play svg text{visibility:hidden}.previewing .hotspot-shape{fill:#d9fc6650}.drawing-stage:focus-within{outline:2px solid #4f783f}@media(max-width:850px){.hotspot-workspace{grid-template-columns:1fr}.hotspot-sidebar{max-height:none}.hotspot-list{max-height:200px}.drawing-toolbar button{padding:9px}.editor-save-bar>button{width:100%;margin-left:0}.upload-placeholder{padding:35px 12px}}

.board.play .game-region{visibility:visible;fill:transparent;stroke:transparent}
.board .game-region{transition:fill .12s,stroke .12s,filter .12s;stroke-linejoin:round}
.board .game-region.is-hovered{visibility:visible;fill:#69dfff28;stroke:#81dfffa0;stroke-width:2;filter:drop-shadow(0 0 4px #61dfff70)}
.board .game-region.is-correct,.board .game-region.is-correct.is-hovered{visibility:visible;fill:#36e28e28;stroke:#26d780;stroke-width:3;filter:drop-shadow(0 0 5px #20e78c)}
.board .game-region.is-wrong{visibility:visible;fill:#ff37522b;stroke:#ff3656;stroke-width:3;filter:drop-shadow(0 0 7px #ff3456)}
.board.is-wrong{border-color:#ff3656;box-shadow:0 0 0 2px #ff3656,inset 0 0 20px #ff365660}
.board.play svg text{visibility:hidden}
@media(prefers-reduced-motion:reduce){.board .game-region{transition:none}}

.board .game-region.is-correct.is-wrong{fill:#ff37522b;stroke:#ff3656;filter:drop-shadow(0 0 7px #ff3456)}
.board .game-region{transition:none}
