.echo-map{background:#101e36;border:1px solid #486273;border-radius:18px;max-width:1100px;margin:20px auto;position:relative;overflow:hidden}.echo-map canvas{touch-action:none;width:100%;height:clamp(400px,65svh,650px);display:block}.echo-map canvas:focus-visible{outline-offset:-5px;outline:3px solid #f3d497}.echo-map>p{background:#362e36;padding:20px}.echo-instructions{color:#beced5;max-width:780px;line-height:1.7}.echo-controls{flex-wrap:wrap;align-items:stretch;gap:10px;margin:20px 0;display:flex}.echo-controls button{white-space:normal;text-align:left;align-items:center;gap:9px;display:flex}.echo-controls button:last-child{margin-left:auto}.echo-dialog{color:#e8ede2;background:#142c36;border:1px solid #68867d;border-radius:18px;grid-template-columns:minmax(0,1fr);width:min(600px,100% - 28px);max-height:calc(100svh - 32px);padding:28px;overflow:auto}.echo-dialog h2{color:#f3d497;font-family:Georgia,serif;font-size:1.8rem}.echo-dialog p{color:#c7d7d5;line-height:1.8}.echo-dialog h3{color:#f3d497;margin:12px 0}.echo-dialog fieldset{gap:10px;display:grid}.echo-dialog label{cursor:pointer;border:1px solid #4b666b;border-radius:9px;align-items:center;gap:12px;padding:12px;line-height:1.5;display:flex}.echo-dialog input{accent-color:#f3d497;flex-shrink:0;width:18px;height:18px}.echo-dialog button{white-space:normal;color:#18303b;background:#f3d497;border-radius:9px;min-width:0;max-width:100%;padding:12px 18px;font-weight:650}.echo-dialog button:disabled{opacity:.5;cursor:wait}.echo-dialog .quiet-action{color:#e8ede2;background:#243e46}.echo-dialog .echo-reply{background:#1d3b43;border-left:3px solid #f3d497;padding:16px;line-height:1.8;display:block}@media (max-width:600px){.echo-controls{flex-direction:column}.echo-controls button:last-child{margin-left:0}.echo-dialog{padding:20px}.echo-map canvas{height:480px}}
