:root{color:#192f29;font-synthesis:none;--surface:#fff;--muted:#53665f;--border:#cbd6d1;--accent:#00735c;--danger:#a22424;--radius:6px;background:#f8faf9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:44px;color:inherit;cursor:pointer;padding:9px 14px;font-weight:600}button:hover:not(:disabled){background:#eef4f1}button:disabled{opacity:.43;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #00735c}button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.full{width:100%}.app{height:100dvh;padding-top:env(safe-area-inset-top);flex-direction:column;max-width:1500px;margin:auto;display:flex;overflow:hidden}header{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;align-items:center;gap:8px;padding:10px 16px;display:flex}.brand{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.brand strong{letter-spacing:.06em;font-size:18px}.brand span{color:var(--muted);font-size:11px}.document-bar{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:8px;min-height:45px;padding:0 12px;display:flex}.filename{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:12px;overflow:hidden}.pages{font-variant-numeric:tabular-nums;flex-shrink:0;align-items:center;gap:4px;font-size:12px;display:flex}.pages button{border:0;width:44px;padding:0;font-size:22px}.workspace{background:#e3e9e5;flex:1;min-height:140px;position:relative;overflow:hidden}.viewer{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:relative;overflow:hidden}.paper{transform-origin:0 0;pointer-events:none;background:#fff;position:absolute;top:0;left:0;box-shadow:0 1px 5px #18382926}.paper canvas{position:absolute;inset:0}.paper svg{position:absolute;inset:0;overflow:visible}.selected-line{stroke:var(--accent);stroke-linecap:round}.saved-line{stroke:#b85e10;stroke-dasharray:5 4}.view-tools{border:1px solid #b7c6be;border-radius:6px;gap:1px;display:flex;position:absolute;top:12px;right:12px;overflow:hidden}.view-tools button{border:0;border-radius:0;min-width:44px}.zoom-label{font-variant-numeric:tabular-nums;background:#ffffffed;border-radius:3px;padding:5px 8px;font-size:12px;position:absolute;top:14px;left:14px}.offline-badge{color:#e0aa5c;white-space:nowrap;border:1px solid;padding:3px 5px;font-size:9px;font-weight:700}.measurement-label{fill:#10262f;stroke:#fff;paint-order:stroke;letter-spacing:.02em;pointer-events:none;font-weight:800}.view-tools .rotation-value{font-variant-numeric:tabular-nums;min-width:48px;padding-inline:6px}.path-undo-fixed{border-color:var(--accent);min-height:34px;color:var(--accent-bright,var(--accent));white-space:nowrap;flex:none;padding:5px 10px}.path-history-fixed{flex:none;gap:4px;display:flex}.display-settings{gap:12px;display:grid}.layer-heading{justify-content:space-between;align-items:baseline;margin-top:4px;display:flex}.layer-heading span{color:var(--muted);font-size:.88rem}.layer-actions{gap:8px;display:flex}.layer-actions button{flex:1}.layer-presets{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.layer-presets button{min-height:38px;padding:6px;font-size:11px}.layer-list{border:1px solid var(--line);max-height:min(42vh,420px);overflow:auto}.layer-row{border-bottom:1px solid var(--line);grid-template-columns:24px 48px 1fr;align-items:center;gap:6px;padding:10px 12px;display:grid}.layer-row:last-child{border-bottom:0}.layer-row span{color:var(--muted);font-variant-numeric:tabular-nums}.layer-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layer-row{cursor:pointer;min-height:48px;margin:0}.layer-search{margin:0}.layer-search span{color:var(--muted);margin-bottom:5px;font-size:12px;display:block}.layer-search input{margin-top:0!important}.layer-empty{color:var(--muted);margin:0;padding:16px}.drawing-status{color:#344c41;pointer-events:none;background:#f8faf9ed;border-top:1px solid #d1dcd5;justify-content:space-between;gap:6px;padding:7px 12px;font-size:11px;display:flex;position:absolute;bottom:0;left:0;right:0}.render-status{background:#fff;padding:6px 10px;font-size:12px;position:absolute;top:66px;right:12px}.render-error{color:var(--danger);overflow-wrap:anywhere;background:#fff;padding:15px;position:absolute;inset:70px 15px auto}.empty{text-align:center;background:#f3f6f4;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:24px;display:flex;overflow:auto}.empty-mark{width:76px;height:70px;color:var(--accent);margin-bottom:16px;overflow:visible}.empty-mark path{fill:none;stroke:currentColor;stroke-width:2.3px;stroke-linecap:square;stroke-linejoin:miter;vector-effect:non-scaling-stroke}.empty-mark .mark-sheet,.empty-mark .mark-fold{stroke:#78929d}.empty-mark .mark-dimension{stroke-width:1.8px}.empty h1{margin:8px 0;font-size:22px;line-height:1.5}.empty p{color:var(--muted);margin:10px 0 24px;line-height:1.9}.empty button{width:min(100%,300px);margin:5px 0}.empty small{color:var(--muted);margin-top:23px;line-height:1.8}.instruction{color:#344b40;border-top:1px solid var(--border);background:#f3f7f4;flex-shrink:0;padding:8px 14px;font-size:12px;line-height:1.45}.sheet{border-top:1px solid var(--border);background:#fff;flex-shrink:0}.sheet-summary{text-align:left;background:#fff;border:0;border-radius:0;justify-content:space-between;align-items:center;width:100%;padding:9px 16px;display:flex}.sheet-summary>span:first-child{color:var(--muted);font-size:11px}.sheet-summary strong{color:#19382b;font-variant-numeric:tabular-nums;letter-spacing:.01em;font-size:30px;font-weight:650;line-height:1.3;display:block}.sheet-summary strong small{color:var(--muted);font-size:14px;font-weight:400}.sheet-hint{color:var(--muted);font-size:11px;font-weight:400}.sheet-body{max-height:28dvh;padding:0 16px 10px;overflow-y:auto}.metrics{grid-template-columns:repeat(3,1fr);gap:10px 16px;margin:5px 0 8px;display:grid}.metrics div{min-width:0}.metrics dt{color:var(--muted);margin-bottom:4px;font-size:11px}.metrics dd{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:16px}.metrics small{font-size:11px}.axis-note{color:var(--muted);margin:10px 0;font-size:11px;line-height:1.65}.row-actions{gap:8px;display:flex}.row-actions button{flex:1;padding:8px;font-size:12px}.toolbar{padding:7px 10px max(9px, env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fff;flex-shrink:0;gap:5px;display:flex}.toolbar button{border-color:#0000;flex:1;min-width:0;padding:10px 3px;font-size:13px}.toolbar button[aria-pressed=true]{color:#005640;background:#e4f1eb;border-color:#8ab7a3}.no-selection{justify-content:space-between;gap:8px;padding:14px;font-size:12px;display:flex}.no-selection span{color:var(--muted);font-size:11px}.magnifier{border:2px solid var(--accent);pointer-events:none;background:#fff;border-radius:6px;position:absolute;top:55px;left:12px;overflow:hidden}.magnifier canvas{width:140px;height:100px;display:block}.magnifier span{text-align:center;padding:5px;font-size:12px;display:block}.recent-drawings{text-align:left;width:min(100%,520px);margin-top:18px}.recent-drawings>strong{color:var(--muted);margin-bottom:6px;font-size:11px;display:block}.recent-drawings button{text-align:left;grid-template-columns:1fr auto;width:100%;min-height:48px;margin:4px 0;padding:7px 10px;display:grid}.recent-drawings button span{color:var(--accent-bright,var(--accent));font-size:11px}.recent-drawings button b{text-overflow:ellipsis;white-space:nowrap;grid-column:1;overflow:hidden}.recent-drawings button small{grid-area:1/2/span 2;align-self:center;margin:0}.recent-drawings p{color:var(--muted);margin:7px 0 0;font-size:10px;line-height:1.5}.magnifier span b{color:var(--accent);letter-spacing:.04em;margin-right:7px;font-size:11px;display:inline-block}.preview-line{stroke:var(--accent);stroke-dasharray:7 5;vector-effect:non-scaling-stroke}.snap-marker{color:var(--accent);animation:.16s ease-out snap-pulse}.snap-marker path,.snap-marker rect{fill:#fff;fill-opacity:.86;stroke:currentColor;stroke-width:2px;vector-effect:non-scaling-stroke}.snap-marker text{fill:#005b48;stroke:#fff;stroke-width:3px;paint-order:stroke;letter-spacing:.04em;font-weight:800}@keyframes snap-pulse{0%{opacity:.35;transform:scale(1.65)}to{opacity:1;transform:scale(1)}}.live-measure{color:#173e31;font-variant-numeric:tabular-nums;pointer-events:none;background:#fffffff2;border:1px solid #aac1b6;border-radius:5px;align-items:baseline;gap:9px;padding:7px 10px;display:flex;position:absolute;bottom:44px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #19372b1a}.live-measure b{font-size:18px}.live-measure span{color:var(--muted);white-space:nowrap;font-size:11px}.mode-banner{z-index:4;pointer-events:none;white-space:nowrap;background:#fffffff2;border:1px solid #b8cac1;border-radius:5px;align-items:center;gap:8px;min-height:34px;padding:6px 10px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 1px 6px #17352b1a}.mode-banner strong{color:var(--accent);font-size:12px}.mode-banner span{color:#3c5148;font-size:11px}.render-status{pointer-events:none;color:var(--muted);border:1px solid var(--border);opacity:.88;border-radius:4px}.render-status-short{display:none}@media (width<=799px){.render-status-long{display:none}.render-status-short{display:inline}}.error-banner{color:#8f2721;background:#fff0ed;justify-content:space-between;align-items:center;gap:10px;max-height:150px;padding:10px 14px;font-size:12px;display:flex;overflow:auto}.error-banner button{flex-shrink:0}dialog{border:1px solid var(--border);width:min(94vw,460px);max-height:85dvh;color:inherit;background:#fff;border-radius:10px;padding:20px;box-shadow:0 8px 30px #001a1729}.dialog-title{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.dialog-title h2{margin:0;font-size:19px}.dialog-title button{font-size:12px}dialog p{font-size:13px;line-height:1.8}label{margin:16px 0;font-size:13px;display:block}label input:not([type=checkbox]),label select{width:100%;min-height:48px;color:inherit;background:#fff;border:1px solid #9cafa5;border-radius:5px;margin-top:8px;padding:10px;font-size:16px;display:block}.raw-values{background:#f2f6f3;justify-content:space-between;gap:12px;padding:12px;font-size:12px;display:flex}.raw-values dt{color:var(--muted)}.raw-values dd{font-variant-numeric:tabular-nums;margin:5px 0 0}.form-error{color:var(--danger)}details{border-block:1px solid var(--border);margin:16px 0;padding:12px 0}summary{cursor:pointer;min-height:30px}.check{align-items:center;gap:10px;display:flex}.check input{width:20px;height:20px}.history{padding-left:0;list-style:none}.history li{gap:6px;margin:8px 0;display:flex}.history li button:first-child{text-align:left;flex:1;justify-content:space-between;gap:10px;display:flex}.debug{color:#d6eee1;pointer-events:none;z-index:5;background:#17271fed;max-width:50vw;max-height:35vh;padding:10px;font-size:10px;position:fixed;top:110px;left:5px;overflow:auto}a{color:var(--accent)}@media (width>=800px){.sheet{padding-inline:calc(50% - 380px)}.toolbar{padding-inline:max(16px,50% - 380px)}.sheet-body{max-height:220px}.workspace{min-height:200px}header{padding-inline:24px}.metrics{gap:12px 36px}.metrics dd{font-size:19px}.sheet-summary strong{font-size:32px}}@media (width<=370px){.metrics{grid-template-columns:repeat(2,1fr);gap:8px}.metrics dd{font-size:15px}.no-selection{flex-direction:column}.brand span{font-size:9px}header{gap:5px;padding-inline:10px}header button{padding-inline:10px}}@media (height<=520px) and (orientation:landscape){.app{padding-right:290px;position:relative}.sheet{border-left:1px solid var(--border);width:290px;padding:8px;position:absolute;top:0;bottom:62px;right:0}.sheet-body{max-height:calc(100dvh - 170px);padding:0 6px}.metrics{grid-template-columns:repeat(2,1fr);gap:12px}.toolbar{width:290px;padding-inline:4px;position:absolute;bottom:0;right:0}.no-selection{flex-direction:column}.workspace{min-height:100px}.instruction{font-size:11px}.sheet-summary strong{font-size:25px}.row-actions{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.snap-marker{animation:none}}@media (width<=799px) and (height>=521px){header{min-height:54px;padding-block:5px}.brand strong{font-size:16px}.brand span{display:none}.workspace{min-height:0}.cad-notes{display:none}.instruction{z-index:8;left:10px;right:10px;bottom:calc(min(32dvh, 340px) + 70px + env(safe-area-inset-bottom));pointer-events:none;background:#f9fbfaee;border:1px solid #b9cbc2;border-radius:5px;padding:9px 12px;position:fixed;box-shadow:0 2px 10px #19382b1c}.sheet{z-index:7;left:0;right:0;bottom:calc(59px + env(safe-area-inset-bottom));border:1px solid var(--border);border-bottom:0;border-radius:12px 12px 0 0;max-height:min(32dvh,340px);position:fixed;overflow:hidden;box-shadow:0 -4px 18px #17352b20}.sheet:before{content:"";background:#aab8b1;border-radius:2px;width:38px;height:4px;margin:6px auto 1px;display:block}.sheet-body{max-height:calc(32dvh - 82px)}.toolbar{z-index:9;min-height:calc(59px + env(safe-area-inset-bottom));padding:5px 8px max(6px, env(safe-area-inset-bottom));scroll-snap-type:x proximity;position:relative;overflow-x:auto;box-shadow:0 -2px 8px #17352b12}.toolbar button{scroll-snap-align:start;flex:0 0 72px;min-height:48px}.magnifier canvas{width:144px;height:112px}.drawing-status{bottom:0}.view-tools{top:52px}.zoom-label{pointer-events:none;top:104px}.live-measure{bottom:40px}.no-selection{padding:10px 14px 12px}}@keyframes field-instruction{0%,72%{opacity:1}to{opacity:0}}.sheet-grabber small{display:none}:root{color:#eaf3f5;--surface:#14232d;--surface-raised:#192d38;--muted:#91a7b0;--border:#334b58;--accent:#1699b3;--accent-bright:#67c9da;--danger:#f08b82;--radius:2px;background:#0d161d;font-family:BIZ UDPGothic,Yu Gothic UI,Hiragino Kaku Gothic ProN,sans-serif}body{background:#0d161d}button{border-color:var(--border);color:#dce9ec;letter-spacing:.015em;background:#13232d;border-radius:2px;font-weight:650}button:hover:not(:disabled){background:#1c3440;border-color:#4c6977}button:active:not(:disabled){background:#23424f}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-color:var(--accent-bright)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:#117f96}.app{background:#0d161d}header{background:#0f1921;border-bottom-color:#2b424e;min-height:64px}.brand{gap:0}.brand strong{color:#f0f7f8;letter-spacing:.025em;font-size:18px}.brand span{color:#6ebed0;letter-spacing:.09em;font-size:10px}header>button{color:#bed0d6;background:0 0}.document-bar{background:#172934;border-bottom-color:#304955}.filename{color:#e7f1f3;font-weight:650}.pages{color:#8ebfca}.pages button{color:#a8c0c7}.workspace{background:#1b2a33}.paper{box-shadow:0 0 0 1px #344b57,0 2px 12px #0006}.selected-line{stroke:var(--accent)}.saved-line{stroke:#e28649}.view-tools{background:#12212a;border-color:#3d5966;border-radius:2px}.view-tools button{color:#d9e8eb;background:#12212a}.view-tools button+button{border-left:1px solid #304954}.zoom-label{color:#70ccdd;background:#10202a;border:1px solid #294651;border-radius:2px}.mode-banner{box-shadow:none;background:#13242eee;border-color:#304b58;border-radius:2px}.mode-banner strong{color:#6fd0e1}.mode-banner span{color:#bbccd1}.drawing-status{color:#9eb5bd;letter-spacing:.02em;background:#14262ff2;border-top-color:#304955}.render-status{color:#9db2ba;background:#14242d;border-color:#34515e}.render-error{color:#ffaaa1;background:#26191b;border:1px solid #6e3b3d}.live-measure{color:#f0f8f9;box-shadow:none;background:#10232df2;border-color:#2e5867;border-radius:2px}.live-measure b{color:#70d1e2;font-family:Bahnschrift,Arial Narrow,sans-serif}.live-measure span{color:#94abb4}.magnifier{border-color:var(--accent);background:#13252f;border-radius:2px}.magnifier span{color:#dcebed}.magnifier span b{color:#67cbdc}.snap-marker{color:#1598b2}.snap-marker text{fill:#057b92}.measurement-overlay path[stroke=\#00735c],.measurement-overlay circle[stroke=\#00735c]{stroke:var(--accent)}.measurement-overlay circle[fill=\#00735c]{fill:var(--accent)}.measurement-overlay text[fill=\#00735c],.measurement-overlay text[fill=\#004e3f]{fill:#087f96}.measurement-overlay path[fill=\#00735c18]{fill:#1699b31f}.instruction{color:#d7e6e9;background:#172b35f2;border-color:#35515d}.sheet{color:#e6f0f2;background:#172a34;border-color:#344e5a}.sheet-grabber{background:#172a34}.sheet-grabber span{background:#5b727c}.sheet-summary{color:#e6f1f3;background:#172a34}.sheet-summary>span:first-child,.sheet-hint{color:#829ca6;letter-spacing:.04em}.sheet-summary strong,.path-value,.coordinate-result p{color:#eef8f9;letter-spacing:.025em;font-family:Bahnschrift,Arial Narrow,Yu Gothic UI,sans-serif}.sheet-summary strong small{color:#8fa7b0}.metrics dt{color:#78939d;text-transform:uppercase;letter-spacing:.06em}.metrics dd{color:#eaf4f5;font-family:Bahnschrift,Arial Narrow,sans-serif}.axis-note,.no-selection span,.coordinate-result small{color:#8da5ae}.row-actions{border-top:1px solid #2c4652;padding-top:8px}.row-actions button{background:#152732}.dimension-check-button{color:#65c8da}.no-selection{color:#dce9ec}.toolbar{box-shadow:none;background:#0f1921;border-top-color:#304854}.toolbar button{color:#aebfc5;background:0 0;border:0;border-radius:0}.toolbar button[aria-pressed=true]{color:#6dd0e1;box-shadow:inset 0 3px 0 var(--accent);background:#142a34;border-color:#0000}.tool-menu{background:#142630;border-color:#395461;border-radius:4px 4px 2px 2px;box-shadow:0 -8px 24px #0008}.tool-menu-title{color:#e8f2f4}.tool-menu-grid button{background:#182c36;border-color:#395460}.tool-menu-grid button span{color:#8ea4ad}.tool-menu-grid button[aria-pressed=true]{color:#74d6e7;background:#12313c;border-color:#21a4bc}.cad-notes{color:#a5b8bf;background:#12212a;border-color:#304853}dialog{color:#e4eff1;background:#14252f;border-color:#3a5562;border-radius:4px;box-shadow:0 12px 36px #0009}dialog::backdrop{background:#071016b8}.dialog-title{border-bottom:1px solid #2c4652;padding-bottom:10px}.dialog-title h2{color:#f0f7f8;letter-spacing:.025em}label input:not([type=checkbox]),label select{color:#eff7f8;background:#0f1c24;border-color:#47616c;border-radius:2px}.raw-values,.wizard-map-step{background:#10212a;border-color:#304a56}details,.comparison>div{border-color:#304955}.layer-list{border-color:#36515d}.layer-row{border-color:#2e4651}.layer-row:hover{background:#1b323d}.layer-row span,.layer-heading span,.settings-preview-note{color:#8fa5ad}.wizard-steps span{color:#708d98}.wizard-steps b{background:#10212a;border-color:#45616d}.wizard-steps .active{color:#dcecef}.wizard-steps .active b{background:var(--accent);border-color:var(--accent)}.wizard-heading span,.wizard-control-step summary span{color:#69cddd}.history li button:first-child{background:#172b35}.error-banner{color:#ffb0a8;background:#2a191c}.empty{background:#111e26}.empty-mark{color:#6bcadb}.empty p,.empty small{color:#91a6ae}.map-panel{color:#dfebee;background:#0f1921}.map-title,.map-tools,.map-navigation,.map-info{background:#14252f;border-color:#304955}.map-canvas{background:#1b2b34}.map-tools select{color:#e4eff1;background:#0e1b23;border-color:#405b67}.mobile-map-entry{display:none}@media (width<=799px){header{min-height:58px}.brand span{font-size:8px;display:block}.mobile-map-entry{margin-bottom:8px;display:block}.sheet{border-radius:4px 4px 0 0;box-shadow:0 -5px 18px #0007}.instruction{border-radius:2px;box-shadow:0 3px 12px #0007}.display-dialog[open]{background:#14252f;border-radius:4px 4px 0 0}.sheet-half{height:auto}}@media (height<=520px) and (orientation:landscape){.sheet{flex-direction:column;display:flex}.sheet-summary{flex-shrink:0;padding:8px}.sheet-body{flex:1;min-height:0;max-height:none}.metrics{gap:8px 12px}.metrics dt{font-size:10px}.metrics dd{font-size:16px}.axis-note{margin:8px 0;font-size:10px}.row-actions{background:#fff;flex-wrap:nowrap;padding-top:6px;position:sticky;bottom:0}}.dimension-check-button{color:var(--accent);background:0 0;border:0;padding:4px 0;font-size:12px;text-decoration:underline}.comparison>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;padding:8px 0;display:flex}.comparison dd{font-variant-numeric:tabular-nums;margin:0}.detail-layer{pointer-events:none;position:absolute;overflow:hidden}.measurement-overlay{pointer-events:none;position:absolute;inset:0;overflow:hidden}.cad-notes{border-bottom:1px solid var(--border);flex-shrink:0;max-height:100px;margin:0;padding:6px 12px;font-size:11px;overflow:auto}.cad-notes summary{cursor:pointer}.cad-notes p{margin:6px 0}.toolbar{overflow-x:auto}.toolbar button{white-space:nowrap;flex:1 0 44px;padding-inline:4px;font-size:12px}.path-panel{padding:12px 16px}.path-value{font-variant-numeric:tabular-nums;margin:8px 0;font-size:28px;font-weight:700}.path-lengths{max-height:80px;padding-left:24px;overflow:auto}.coordinate-result{padding:12px 16px;overflow:auto}.coordinate-result p{font-variant-numeric:tabular-nums;margin:0 0 8px;font-size:24px;font-weight:650}.coordinate-result small{margin-bottom:8px;display:block}.map-panel{background:var(--bg,#f8faf9);flex-direction:column;display:flex;position:fixed;inset:0}.map-title{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.map-tools{flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.map-tools label{flex:1;min-width:100px;margin:0}.map-tools select{min-height:44px;padding:8px}.map-tools input[type=range]{min-height:32px;padding:0}.map-navigation{flex-wrap:wrap;gap:6px;padding:0 12px 8px;display:flex}.map-navigation button{min-width:42px;min-height:38px;padding:4px 9px}.map-canvas{touch-action:none;overscroll-behavior:contain;cursor:grab;background:#e8edea;flex:1;min-height:180px}.map-canvas:active{cursor:grabbing}.map-canvas .ol-viewport{touch-action:none}.map-info{max-height:30dvh;padding:8px 12px;font-size:13px;overflow:auto}.map-info p{margin:6px 0}.location-status{border:1px solid;padding:8px 10px;font-weight:700}.location-status.inside{color:#58bfa4}.location-status.outside{color:#e0aa5c}.map-actions{gap:8px;display:flex}.map-panel .ol-zoom button{width:40px;height:40px}.map-panel .ol-attribution{max-width:80%;font-size:11px}.map-panel .ol-scale-line{bottom:6px}@media (height<=520px){.map-canvas{min-height:80px}.map-tools{padding:4px 8px}.map-info{max-height:25dvh}.map-title{padding:4px 8px}}@media (width<=450px){header{gap:5px;padding-inline:8px}header button{padding-inline:8px;font-size:12px}.brand span{font-size:10px}.brand strong{letter-spacing:.025em;white-space:nowrap;font-size:14px}.brand span{white-space:nowrap;font-size:8px}}.accuracy-summary{gap:12px;display:grid}.accuracy-summary section{border:1px solid var(--border);background:var(--surface-raised,var(--surface));padding:12px}.accuracy-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.accuracy-heading h3{margin:0;font-size:15px}.accuracy-heading span{border:1px solid;padding:3px 6px;font-size:10px;font-weight:700}.accuracy-heading .verified{color:#67c9da}.accuracy-heading .unverified{color:#d3a45e}.accuracy-row{border-top:1px solid var(--border);grid-template-columns:auto 1fr;gap:3px 10px;margin:8px 0 0;padding-top:8px;font-size:12px;display:grid}.accuracy-row dt{grid-row:span 2;font-weight:700}.accuracy-row dd{font-variant-numeric:tabular-nums;margin:0}.sheet-grabber{touch-action:none;border:0;border-radius:0;width:100%;min-height:22px;padding:5px 0 3px;display:none}.sheet-grabber span{background:#9faca6;border-radius:2px;width:40px;height:4px;margin:auto;display:block}.tool-menu{z-index:12;left:8px;right:8px;bottom:calc(66px + env(safe-area-inset-bottom));border:1px solid var(--border);background:#fff;border-radius:10px 10px 6px 6px;padding:12px;position:fixed;box-shadow:0 -6px 24px #17352b2b}.tool-menu-title{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.tool-menu-title button{min-height:40px}.tool-menu-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.tool-menu-grid button{text-align:left;min-height:64px}.tool-menu-grid button strong,.tool-menu-grid button span{display:block}.tool-menu-grid button span{color:var(--muted);margin-top:3px;font-size:11px;font-weight:400}.tool-menu-grid button[aria-pressed=true]{background:#e7f2ed;border-color:#79aa94}.settings-preview-note{color:var(--muted);margin:0;font-size:12px}.wizard-steps{grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:16px;display:grid}.wizard-steps span{color:#71827a;text-align:center;flex-direction:column;align-items:center;gap:3px;font-size:10px;display:flex}.wizard-steps b{background:#fff;border:1px solid #aebdb6;border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.wizard-steps .done b{color:#075b47;background:#dcebe4;border-color:#8eb29f}.wizard-steps .active{color:#123f32;font-weight:700}.wizard-steps .active b{background:var(--accent);border-color:var(--accent);color:#fff}.wizard-heading{margin:14px 0 6px;font-size:16px}.wizard-heading span,.wizard-control-step summary span{color:var(--accent);letter-spacing:.04em;font-size:11px}.wizard-map-step{border:1px solid var(--border);background:#f5f8f6;flex-direction:column;gap:4px;margin:10px 0;padding:10px 12px;display:flex}.wizard-map-step span{color:var(--muted);font-size:12px;line-height:1.5}@media (width<=799px) and (height>=521px){.sheet:before{display:none}.sheet-grabber{display:block}.sheet{transition:max-height .16s,height .16s}.sheet-half{height:min(34dvh,340px);max-height:min(34dvh,340px)}.sheet-expanded{height:min(66dvh,620px);max-height:min(66dvh,620px)}.sheet-collapsed .sheet-body,.sheet-collapsed .coordinate-result,.sheet-collapsed .no-selection{display:none}.sheet-half .sheet-body{max-height:calc(min(34dvh,340px) - 88px)}.sheet-expanded .sheet-body{max-height:calc(min(66dvh,620px) - 88px)}.compact-toolbar{overflow:visible}.compact-toolbar button{flex:20%;min-width:0;padding-inline:2px}.display-dialog[open]{width:100%;max-width:none;max-height:58dvh;padding-bottom:max(16px, env(safe-area-inset-bottom));border-radius:12px 12px 0 0;margin:0;position:fixed;inset:auto 0 0}.display-dialog::backdrop{background:#10251f26}.workspace>.instruction{z-index:8;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;width:auto;max-width:min(72%,420px);margin:0;padding:7px 10px;animation:3.4s ease-out forwards field-instruction;position:absolute;inset:146px auto auto 12px;overflow:hidden}.tool-menu{z-index:12;max-height:min(31dvh,260px);box-shadow:none;background:var(--surface);border-width:1px 0 0;border-radius:0;flex:none;margin:0;padding:8px 12px 10px;position:relative;inset:auto;overflow:auto}.tool-menu-title{margin-bottom:6px}.tool-menu-title button{min-height:36px;padding-block:5px}.tool-menu-grid{gap:6px;margin-bottom:6px}.tool-menu-grid button{min-height:48px;padding:7px 10px}.tool-menu-open .sheet{display:none}.sheet-grabber{flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:31px;padding:5px 0 3px;display:flex}.sheet-grabber span{margin:0}.sheet-grabber small{color:var(--muted);font-size:9px;font-weight:600;line-height:1.1;display:block}.sheet-collapsed{height:94px;max-height:94px}.sheet-collapsed .sheet-summary{align-items:center;min-height:60px;padding:2px 16px 7px}.sheet-collapsed .sheet-summary>span:first-child{align-items:baseline;gap:8px;min-width:0;display:flex}.sheet-collapsed .sheet-summary strong{margin:0;font-size:25px;line-height:1;display:inline}.sheet-collapsed .sheet-hint{display:none}}.device-validation{gap:10px;display:grid}.validation-counts{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.validation-counts div{border:1px solid var(--line,#40535d);padding:10px}.validation-counts dt{color:var(--muted,#91a4ad);font-size:12px}.validation-counts dd{font-variant-numeric:tabular-nums;margin:4px 0 0;font-weight:700}.validation-check{border:1px solid var(--line,#40535d);align-items:center;gap:12px;min-height:48px;padding:8px 12px;display:flex}.validation-check input{flex:none;width:22px;height:22px}.device-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.device-fields label{margin:0}@media (width>=800px) and (width<=1180px) and (pointer:coarse){.app{max-width:none;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}button,select{min-height:48px}header{padding-inline:16px}.workspace{min-height:240px}.sheet{padding-inline:max(24px,50% - 360px)}.sheet-body{max-height:min(28dvh,280px)}.toolbar{padding-inline:max(24px,50% - 360px);padding-bottom:max(8px, env(safe-area-inset-bottom))}.tool-menu{box-shadow:none;border-width:1px 0 0;border-radius:0;flex:none;margin:0;position:relative;inset:auto}.tool-menu-open .sheet{display:none}dialog{width:min(720px,100vw - 48px);max-height:calc(100dvh - 72px)}}@media (width<=520px){.device-fields{grid-template-columns:1fr}}@media (hover:none){button:hover:not(:disabled){background:var(--surface)}button.primary:hover{background:var(--accent)}}html,body{overscroll-behavior:none}
