*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;font:14px/1.45 system-ui,sans-serif;color:#223a33;background:#dce7e9}canvas{display:block;touch-action:none}header{position:absolute;top:22px;left:26px;right:26px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;pointer-events:none}header>div{background:#fbfcf4ed;padding:14px 20px;border-radius:12px}h1{font-size:23px;font-weight:600;letter-spacing:-.04em;margin:3px 0 0}.eyebrow{font-size:10px;letter-spacing:.18em}a{color:inherit}header a{pointer-events:auto;background:#fbfcf4ed;padding:12px 16px;border-radius:9px;text-decoration:none}aside{position:absolute;top:125px;left:26px;width:260px;padding:17px;background:#fbfcf4f0;border:1px solid #ffffff99;border-radius:12px;max-height:calc(100% - 190px);overflow:auto;box-shadow:0 12px 30px #203d3620}.panel-title{display:flex;justify-content:space-between;align-items:center}.panel-title button{margin:0;padding:0 8px;font-size:20px}label{display:block;margin:14px 0 5px;font-size:12px;font-weight:600}select,button{font:inherit;border:1px solid #bdc9bf;background:#fff;color:#223a33;border-radius:7px;padding:9px;cursor:pointer}select{width:100%}aside>div>button{width:100%;margin-top:8px}.primary{background:#2a5b4c;color:white;border-color:#2a5b4c}button:disabled{opacity:.5;cursor:wait}.muted{font-size:12px;color:#627469;margin:4px 0 14px}.check{font-weight:400;display:flex;gap:8px;align-items:center;margin:10px 0}input[type=range]{width:100%;accent-color:#2a5b4c}input[type=checkbox]{accent-color:#2a5b4c}output{float:right;font-weight:400}.help{font-size:12px;line-height:1.8;border-top:1px solid #d7dfd5;padding-top:12px}small{font-size:10px;color:#63776d;display:block}#crosshair{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:23px;color:#fff9;pointer-events:none;text-shadow:0 1px 2px #000}#loading{position:absolute;inset:0;background:#e8eee9ed;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:20px;z-index:5}#loading.hidden{display:none}.spinner{height:30px;width:30px;border:3px solid #aebfb4;border-top-color:#285444;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#inspector{position:absolute;bottom:75px;left:50%;transform:translateX(-50%);max-width:50%;background:#173b30dc;color:white;padding:9px 16px;border-radius:8px;font-size:12px;text-align:center;pointer-events:none}footer{position:absolute;bottom:0;left:0;right:0;display:flex;gap:10px;align-items:center;background:#fbfcf4ec;padding:10px 25px;font-size:12px}footer span{margin-right:auto}footer button{font-size:11px;padding:5px 9px}#pad{position:absolute;right:26px;bottom:83px;text-align:center}#pad button{width:43px;height:43px;margin:2px;background:#fbfcf4e8;font-size:20px;touch-action:none;user-select:none}#pad button:active{background:#acc5b7}body.locked aside,body.locked #pad{opacity:.3}body.locked aside:hover{opacity:1}@media(max-width:700px){header{top:10px;left:10px;right:10px}header>div{padding:9px 12px}h1{font-size:18px}header a{font-size:11px;padding:9px}aside{top:95px;left:10px;width:220px;max-height:calc(100% - 160px)}#inspector{max-width:65%;left:10px;transform:none;bottom:66px}footer{padding:9px 10px}#pad{right:10px;bottom:110px}#status{max-width:45%}}
#collapse{width:auto;margin:0;flex:0 0 30px}
#surroundings-settings{border-top:1px solid #bdc9bf;margin-top:16px;padding-top:12px}#surroundings-settings summary{cursor:pointer;font-weight:600}#surroundings-settings button{width:100%;margin:6px 0}#surroundings-settings small{line-height:1.6}#lidar-attribution{position:absolute;right:16px;top:90px;z-index:2;max-width:52%;padding:5px 8px;border-radius:5px;background:#f8fbf0ed;font-size:10px;color:#345247}#lidar-attribution[hidden]{display:none}@media(max-width:700px){#lidar-attribution{top:72px;max-width:95%;right:8px;font-size:8px}}
#issue-dialog{width:min(1120px,95vw);max-height:95vh;border:0;border-radius:14px;background:#f7f8f2;color:#223a33;padding:20px;overflow:auto;box-shadow:0 20px 100px #0006}#issue-dialog::backdrop{background:#11251ec9}.report-top{display:flex;justify-content:space-between;gap:16px}.report-top h2{margin:0;font-size:22px}.report-top p{margin:5px 0 12px;font-size:12px}.report-top button{align-self:flex-start;font-size:22px}.report-toolbar{display:flex;gap:8px;margin-bottom:12px}#circle-tool[aria-pressed=true]{background:#ffd9d4;border-color:#dc4848}#issue-canvas{width:auto;height:auto;max-width:100%;max-height:50vh;margin:0 auto;display:block;cursor:crosshair;touch-action:none;border-radius:7px}#issue-note{width:100%;padding:12px;border:1px solid #becbbe;border-radius:7px;font:14px system-ui;resize:vertical}.report-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0}#issue-message{font-size:12px}#issue-list article{border-top:1px solid #ccd6cd;padding:14px 0}#issue-list p{white-space:pre-wrap;overflow-wrap:anywhere}#saved-issues{margin-top:18px}#saved-issues summary{cursor:pointer}#autosave{white-space:nowrap;font-size:10px;margin:0 8px}footer{flex-wrap:wrap}@media(max-width:700px){#autosave{display:none}footer #status{display:none}#report{margin-right:auto}#issue-dialog{padding:12px}.report-toolbar button{font-size:11px}.report-actions{align-items:flex-start;flex-direction:column}}
#reference-photo{position:absolute;object-fit:contain;z-index:1;pointer-events:none}#reference-photo[hidden],#photo-compare[hidden]{display:none}#photo-compare{position:absolute;left:50%;bottom:135px;transform:translateX(-50%);z-index:3;background:#f7faf1f5;color:#173b30;padding:13px 18px;border-radius:12px;box-shadow:0 4px 24px #0003;text-align:center;max-width:90vw}#photo-compare strong,#photo-mode{display:block}#photo-mode{font-size:11px;margin:4px 0 9px}#photo-compare button{margin:3px}header,aside,footer,#pad,#inspector{z-index:2}body.photo-aligned #crosshair{display:none}body.photo-aligned aside{opacity:.15;transition:opacity .15s}body.photo-aligned aside:hover,body.photo-aligned aside:focus-within{opacity:1}body.photo-aligned{background:#15221e}@media(max-width:700px){#photo-compare{bottom:160px;width:90%;font-size:12px}#photo-compare button{font-size:11px}}
