.site-map-draw-link{display:inline-flex;align-items:center;gap:var(--space-2)}.site-map-draw-link svg{width:16px;height:16px}.site-map-save{margin:0 0 0 auto;font-size:13px;color:var(--color-text-secondary)}.site-map-save[data-state=conflict],.site-map-save[data-state=error]{color:var(--color-danger);font-weight:600}.site-map-alert{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-danger);border-radius:var(--radius-card);background:var(--color-danger-soft);color:var(--color-text)}.site-map-alert p{margin:0;flex:1 1 320px}.site-map-draw-tools{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.site-map-draw-toolset{display:flex;flex-wrap:wrap;gap:var(--space-2)}.site-map-draw-tools button{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;min-width:44px;justify-content:center;padding:0 var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-control);background:var(--color-surface-raised);color:var(--color-text);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.site-map-draw-tools button:hover{border-color:var(--color-border);background:var(--color-surface-subtle)}.site-map-draw-tools button[aria-expanded=true],.site-map-draw-tools button[aria-pressed=true]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-text)}.site-map-draw-tools button:disabled,.site-map-draw-tools button:disabled:hover{border-color:var(--color-divider);background:var(--color-surface-raised);color:var(--color-text-muted);cursor:default}ul.site-map-rows{margin:0;padding:0;list-style:none}.site-map-draw-tools svg{flex:0 0 auto}.site-map-paper{position:relative;width:100%;background:var(--color-surface-raised)}.site-map-frame-drawing .site-map-viewport{background:var(--color-surface-subtle)}.site-map-frame-drawing .site-map-paper{box-shadow:0 0 0 1px var(--color-divider)}.site-map-paper .site-map-image{position:absolute;inset:0;height:100%;object-fit:contain}.site-map-drawing,.site-map-drawing-wrap{position:absolute;inset:0}.site-map-drawing{display:block;width:100%;height:100%;overflow:visible}.site-map-grid-line{fill:none;stroke:var(--color-divider);stroke-width:1;vector-effect:non-scaling-stroke}.site-map-shape{stroke-width:2;stroke-linejoin:round}.site-map-shape[data-kind=rect]{fill:var(--color-surface);stroke:var(--color-text-secondary);stroke-width:2.5}.site-map-shape[data-kind=polygon]{fill:var(--type-garden-soft);stroke:var(--type-garden)}.site-map-shape[data-kind=path]{fill:var(--color-text-secondary);stroke:none}.site-map-shape[data-selected][data-kind=polygon],.site-map-shape[data-selected][data-kind=rect]{stroke:var(--color-primary);stroke-width:3}.site-map-shape[data-selected][data-kind=path]{fill:var(--color-primary)}.site-map-drawing[data-plan] .site-map-shape[data-kind=rect][data-symbol]:not([data-material]){fill:transparent;stroke:transparent}.site-map-drawing[data-plan] .site-map-shape[data-kind=rect][data-symbol][data-selected]:not([data-material]){stroke:var(--color-primary);stroke-width:2;stroke-dasharray:6 4}.site-map-canvas[data-tool=select] .site-map-shape{cursor:move}.site-map-canvas[data-tool]:not([data-tool=select]){cursor:crosshair}.site-map-canvas[data-tool]:not([data-tool=select]) .site-map-label{pointer-events:none}.site-map-canvas[data-tool=path]{touch-action:none}.site-map-draft polygon,.site-map-draft rect{fill:var(--color-primary-soft);stroke:var(--color-primary);stroke-width:2;stroke-dasharray:6 4}.site-map-draft polyline{fill:none;stroke:var(--color-primary);stroke-width:2.5;stroke-dasharray:6 4}.site-map-draft circle{fill:var(--color-surface);stroke:var(--color-primary);stroke-width:2.5}.site-map-draft circle[data-first]{fill:var(--color-primary)}.site-map-label{position:absolute;transform:translate(-50%,-50%);display:inline-flex;align-items:center;min-height:28px;max-width:220px;box-sizing:border-box;padding:0 var(--space-2);border:1px solid var(--color-border-control);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:var(--shadow-segment)}span.site-map-label{pointer-events:none}.site-map-label[data-fit]{flex-direction:column;justify-content:center;min-height:0;padding:2px var(--space-2);border-radius:var(--radius-control);line-height:1.25}.site-map-label[data-fit]>span{max-width:100%;overflow:hidden;text-overflow:ellipsis}.site-map-label-detail{font-size:11px;font-weight:500;color:var(--color-text-secondary)}.site-map-label[data-kind=text]{border-color:transparent;box-shadow:none;font-size:14px}button.site-map-label{z-index:1;cursor:pointer}button.site-map-label:hover{border-color:var(--color-text-secondary);background:var(--color-surface-subtle)}button.site-map-label[aria-pressed=true]{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}button.site-map-label:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.site-map-label[data-align=start]{transform:translate(-12px,-50%)}.site-map-label[data-align=end]{transform:translate(calc(-100% + 12px),-50%)}.site-map-frame[data-labels=off] .site-map-label:not([aria-pressed=true]){display:none}.site-map-zoom .site-map-labels-toggle[aria-pressed=true]{background:var(--color-primary-soft);color:var(--color-primary-text)}.site-map-zoom .site-map-labels-toggle[aria-pressed=true]:hover{background:var(--color-primary-soft)}.site-map-draw-marker,.site-map-draw-marker:hover{position:absolute;z-index:4;transform:translate(-50%,-50%);width:44px;height:44px;padding:0;border:0;background:transparent;cursor:crosshair}.site-map-draw-marker:before{content:"";position:absolute;inset:10px;border:2px dashed var(--color-primary);border-radius:50%;background:var(--color-primary-soft)}.site-map-draw-marker:after{content:"";position:absolute;inset:19px;border-radius:50%;background:var(--color-primary)}.site-map-draw-marker:focus-visible{outline:none}.site-map-draw-marker:focus-visible:before{box-shadow:0 0 0 3px var(--color-surface),0 0 0 5px var(--color-focus)}.site-map-shape-badge{--map-soft:var(--color-surface-subtle);--map-ink:var(--color-text-secondary)}.site-map-scale-form,.site-map-size{display:flex;flex-direction:column;gap:var(--space-3)}.site-map-scale-form .btn-primary,.site-map-size .btn-secondary{align-self:flex-start}.site-map-size{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.site-map-size .btn-secondary{grid-column:1/-1}.site-map-row-remove.btn-secondary{align-self:flex-start}.site-map-under summary{display:flex;align-items:center;min-height:44px;font-weight:600;color:var(--color-primary-text);cursor:pointer}.site-map-add-draw{margin:var(--space-2) 0 0;font-size:16px}.site-map-materials{margin:0;padding:0;border:0;min-width:0}.site-map-materials legend{padding:0;margin-bottom:var(--space-2);font-size:14px;font-weight:600}.site-map-material-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.site-map-material{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;line-height:1.2;text-align:center;color:var(--color-text-secondary);cursor:pointer}.site-map-material .site-map-swatch{width:100%;max-width:56px;height:auto;aspect-ratio:52/40;border:1px solid var(--color-border);border-radius:8px}.site-map-material:hover .site-map-swatch{border-color:var(--color-text-secondary)}.site-map-material:has(input:checked){color:var(--color-text);font-weight:600}.site-map-material:has(input:checked) .site-map-swatch{outline:3px solid var(--color-primary);outline-offset:2px}.site-map-material:has(input:focus-visible) .site-map-swatch{outline:3px solid var(--color-focus);outline-offset:2px;box-shadow:0 0 0 6px var(--color-surface-raised)}.site-map-materials:disabled .site-map-material{cursor:default;opacity:.6}.site-map-swatch-none{fill:var(--color-surface-raised)}.site-map-swatch-slash{stroke:var(--color-text-muted);stroke-width:1.5}.site-map-material-sums{margin:0;padding:0;list-style:none}.site-map-material-sums li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);min-height:40px;border-top:1px solid var(--color-divider);font-size:14px}.site-map-material-sums .site-map-swatch{border:1px solid var(--color-border);border-radius:5px}.site-map-material-sums b{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.site-map-base-short,.site-map-draw-phonebar,.site-map-tool-short{display:none}@media (max-width:640px){body:has(.site-map-drawing-mode) :is(.shell-narrow-topbar,.shell-bottom-nav){display:none}body:has(.site-map-drawing-mode) .shell-main{padding-bottom:env(safe-area-inset-bottom,0)}body:has(.site-map-drawing-mode) main.page-v2{padding-top:0;gap:var(--space-2)}body:has(.site-map-drawing-mode) .area-head>:not(.page-title){display:none}body:has(.site-map-drawing-mode) .area-head .page-title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.site-map-drawing-mode>.site-map-toolbar{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:0 var(--space-2);margin:0;padding:calc(6px + env(safe-area-inset-top, 0px)) 0 6px;background:var(--color-app-bg)}.site-map-drawing-mode .site-map-editing-base{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-map-drawing-mode .site-map-save{grid-column:1/-1;order:3;margin:0}.site-map-drawing-mode .site-map-base-full{display:none}.site-map-drawing-mode .site-map-base-short{display:inline}.site-map-frame-drawing #site-map-more-toggle .site-map-tool-name{display:none}.site-map-frame-drawing #site-map-more-toggle .site-map-tool-short{display:inline}.site-map-draw-phonebar{display:flex;align-items:center}.site-map-draw-phonebar>button:not(.help-button),.site-map-draw-phonebar>button:not(.help-button):hover{display:grid;place-items:center;width:var(--tap-target);height:var(--tap-target);padding:0;border:0;border-radius:var(--radius-control);background:transparent;color:var(--color-text)}.site-map-draw-phonebar>button:disabled{color:var(--color-text-muted);cursor:default}.site-map-draw-phonebar svg{width:20px;height:20px}.site-map-frame-drawing{display:flex;flex-direction:column;overflow:clip}.site-map-frame-drawing .site-map-stage{order:1}.site-map-frame-drawing .site-map-viewport{height:calc(100dvh - 164px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));min-height:280px;max-height:none;display:flex;flex-direction:column;justify-content:safe center}.site-map-frame-drawing .site-map-draw-tools{order:2;position:sticky;bottom:env(safe-area-inset-bottom,0);z-index:5;background:var(--color-surface-raised);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:6px;border-bottom:0;border-top:1px solid var(--color-divider)}.site-map-frame-drawing :is(.site-map-draw-main,.site-map-draw-history){display:contents}.site-map-frame-drawing .site-map-draw-history>button:not(#site-map-more-toggle){display:none}.site-map-frame-drawing :is(.site-map-draw-main,.site-map-draw-history)>button{flex-direction:column;gap:2px;min-height:52px;padding:var(--space-1) 2px;font-size:12px}.site-map-frame-drawing .site-map-draw-more{position:absolute;z-index:6;bottom:calc(100% + 6px);inset-inline-end:6px;flex-direction:column;flex-wrap:nowrap;min-width:200px;padding:6px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-raised);box-shadow:var(--shadow-overlay)}.site-map-frame-drawing .site-map-draw-more button{justify-content:flex-start}.site-map-frame-drawing .site-map-zoom{position:absolute;z-index:4;inset-inline-end:var(--space-2);bottom:var(--space-2);flex-direction:column;margin:0;box-shadow:var(--shadow-overlay)}.site-map-frame-drawing .site-map-zoom button+button{border-inline-start:0;border-top:1px solid var(--color-divider)}.site-map-frame-drawing .site-map-zoom>button:first-child{border-radius:calc(var(--radius-card) - 1px) calc(var(--radius-card) - 1px) 0 0}.site-map-frame-drawing .site-map-zoom>button:last-child{border-radius:0 0 calc(var(--radius-card) - 1px) calc(var(--radius-card) - 1px)}.site-map-frame-drawing .site-map-zoom button:after{inset-inline-end:calc(100% + 8px);top:50%;bottom:auto;transform:translateY(-50%)}}.site-map-shape[data-material]{stroke:var(--material-shadow);stroke-width:1.2}.site-map-shape[data-material=tree]{stroke:var(--material-tree-ink);stroke-width:1}.site-map-shape[data-material=plot]{fill:none;stroke:var(--material-plot);stroke-width:2.5;stroke-dasharray:12 5 2 5}.site-map-roof{fill:none;stroke:var(--material-building-ink);stroke-width:1.2}.site-map-crown,.site-map-roof{pointer-events:none}.site-map-swatch-plot{fill:none;stroke:var(--material-plot);stroke-width:2;stroke-dasharray:6 3 1.5 3}.site-map-viewport{touch-action:pan-x pan-y}.site-map-stage{position:relative}.site-map-frame-drawing .site-map-draw-tools{padding:var(--space-2);border-bottom:1px solid var(--color-divider);background:var(--color-surface-raised)}.site-map-draw-tools kbd{display:none}@media (min-width:900px){.site-map-frame-drawing .site-map-draw-tools{position:absolute;z-index:5;inset-inline-start:var(--space-3);top:var(--space-3);flex-direction:column;gap:var(--space-1);padding:6px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-raised);box-shadow:var(--shadow-overlay)}.site-map-frame-drawing .site-map-draw-toolset{flex-direction:column;flex-wrap:nowrap;gap:var(--space-1)}.site-map-frame-drawing .site-map-draw-toolset+.site-map-draw-toolset{padding-top:var(--space-1);border-top:1px solid var(--color-divider)}.site-map-frame-drawing .site-map-draw-tools button{position:relative;width:44px;padding:0;border-color:transparent;background:transparent;color:var(--color-text-secondary)}.site-map-frame-drawing .site-map-draw-tools button:hover{border-color:transparent;background:var(--color-surface-subtle)}.site-map-frame-drawing .site-map-draw-tools button[aria-expanded=true],.site-map-frame-drawing .site-map-draw-tools button[aria-pressed=true]{border-color:transparent;background:var(--color-primary-soft);color:var(--color-primary-text)}.site-map-frame-drawing .site-map-draw-tools svg{width:20px;height:20px}.site-map-frame-drawing .site-map-tool-name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.site-map-frame-drawing .site-map-draw-tools kbd{display:block;position:absolute;right:3px;bottom:1px;font:600 9px/1 inherit;color:var(--color-text-muted)}.site-map-frame-drawing .site-map-viewport{padding-inline-start:72px;min-height:480px}.site-map-frame-drawing .site-map-scalebar{inset-inline-start:84px}}.site-map-handle{position:absolute;z-index:3;width:14px;height:14px;box-sizing:border-box;transform:translate(-50%,-50%);border:2px solid var(--color-primary);border-radius:3px;background:var(--color-surface);touch-action:none;cursor:nwse-resize}.site-map-handle:before{content:"";position:absolute;inset:-12px}.site-map-handle[data-corner="1"],.site-map-handle[data-corner="3"]{cursor:nesw-resize}.site-map-handle-turn{border-radius:50%;width:16px;height:16px;cursor:grab}.site-map-handle-turn:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--color-primary)}.site-map-measure{z-index:2;transform:translate(-50%,-50%);padding:1px var(--space-2);border:1px solid var(--color-primary);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-primary-text);font-size:11.5px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.site-map-measure,.site-map-north{position:absolute;pointer-events:none}.site-map-north{z-index:4;top:var(--space-3);inset-inline-end:var(--space-3);display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface-raised);box-shadow:var(--shadow-segment)}.site-map-north-needle{fill:var(--color-text)}.site-map-north-letter{fill:var(--color-text);font:700 9px/1 inherit}.site-map-scalebar{position:absolute;z-index:4;inset-inline-start:var(--space-3);bottom:var(--space-3);display:flex;flex-direction:column;gap:3px;padding:6px 10px;border-radius:var(--radius-control);background:var(--color-surface-raised);box-shadow:var(--shadow-segment);color:var(--color-text);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;pointer-events:none}.site-map-scalebar-bar{display:flex;height:6px;border:1.5px solid var(--color-text);box-sizing:border-box}.site-map-scalebar-bar i{flex:1 1}.site-map-scalebar-bar i:first-child{background:var(--color-text)}.site-map-scalebar-labels{display:flex;justify-content:space-between}.site-map-scalebar-labels span:nth-child(2){transform:translateX(50%)}.site-map-layers li{grid-template-columns:28px minmax(0,1fr) auto 44px}.site-map-layers li[data-hidden] .site-map-swatch,.site-map-layers li[data-hidden]>b,.site-map-layers li[data-hidden]>span{opacity:.5}.site-map-layer-toggle[aria-pressed=false]{color:var(--color-text-muted)}.site-map-turn{display:flex;flex-direction:column;gap:var(--space-2)}.site-map-print-only{display:none}@media print{body:has(.site-map-print-area) *{visibility:hidden}body:has(.site-map-print-area) .site-map-print-area,body:has(.site-map-print-area) .site-map-print-area *{visibility:visible}.site-map-print-area{position:absolute;inset:0 auto auto 0;width:100%}.site-map-print-area .site-map-print-only{display:block}.site-map-print-head h2{margin:0 0 4px;font-size:20px}.site-map-print-head p{margin:0 0 12px;color:var(--color-text-secondary);font-size:12px}.site-map-print-area .site-map-draw-marker,.site-map-print-area .site-map-draw-tools,.site-map-print-area .site-map-foot,.site-map-print-area .site-map-handle,.site-map-print-area .site-map-hint,.site-map-print-area .site-map-measure,.site-map-print-area .site-map-zoom{display:none!important}.site-map-print-area .site-map-frame{border:1px solid var(--color-divider);page-break-inside:avoid;break-inside:avoid}.site-map-print-area .site-map-viewport{max-height:none;overflow:visible;padding:0!important}.site-map-print-area .site-map-canvas{width:100%!important}.site-map-print-area .site-map-scalebar{inset-inline-start:var(--space-3)}.site-map-print-area,.site-map-print-area *{print-color-adjust:exact;-webkit-print-color-adjust:exact}body:has(.site-map-print-area) .site-map-aside{display:none}body:has(.site-map-print-area) .site-map-layout{display:block}.site-map-print-area button.site-map-label[aria-pressed=true]{border-color:var(--color-border-control);background:var(--color-surface);color:var(--color-text)}.site-map-print-area .site-map-shape[data-selected][data-material]{stroke:var(--material-shadow);stroke-width:1.2}.site-map-print-area .site-map-shape[data-selected][data-kind=rect]:not([data-material]){stroke:var(--color-text-secondary);stroke-width:2.5}.site-map-print-area .site-map-shape[data-selected][data-kind=polygon]:not([data-material]){stroke:var(--type-garden);stroke-width:2}.site-map-print-legend{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 16px;margin:12px 0 0;padding:0;list-style:none;font-size:11px}.site-map-print-legend li{display:flex;align-items:center;gap:6px}.site-map-print-legend b{margin-inline-start:auto;font-weight:600}}.symbol-library{width:min(760px,calc(100vw - 32px));max-height:min(84vh,760px);padding:24px;border:1px solid var(--color-divider);border-radius:var(--radius-panel);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-overlay)}.symbol-library::backdrop{background:var(--scrim)}.symbol-library-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.symbol-library-head h2{margin:0;font-size:24px}.symbol-library-label{display:block;font-weight:600;margin-bottom:6px}.symbol-library-search{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--color-border-control);border-radius:var(--radius-control);background:var(--color-surface-raised);font:inherit;font-size:16px}.symbol-library-cats{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.symbol-library-cats button{min-height:40px;padding:0 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:15px;font-weight:600;cursor:pointer}.symbol-library-cats button:hover{background:var(--color-surface-subtle);color:var(--color-text)}.symbol-library-cats button[aria-pressed=true],.symbol-library-cats button[aria-pressed=true]:hover{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-text);font-weight:700}.symbol-library-empty{margin:var(--space-4) 0 0;color:var(--color-text-secondary)}:is(.symbol-library-grid,.symbol-library-recent-grid){list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:var(--space-2)}:is(.symbol-library-grid,.symbol-library-recent-grid) button{width:100%;display:grid;justify-items:center;gap:6px;padding:10px 6px;border:1px solid var(--color-divider);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:14px;font-weight:600;text-align:center;cursor:pointer}:is(.symbol-library-grid,.symbol-library-recent-grid) button:hover{border-color:var(--color-nature);background:var(--color-nature-soft);color:var(--color-text)}:is(.symbol-library-grid,.symbol-library-recent-grid) img{width:84px;height:84px;object-fit:contain}@media (max-width:640px){.symbol-library{padding:16px}:is(.symbol-library-grid,.symbol-library-recent-grid){grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}:is(.symbol-library-grid,.symbol-library-recent-grid) img{width:68px;height:68px}}.site-map-pin-symbols{position:absolute;inset:0;pointer-events:none}.site-map-pin-symbols img{position:absolute;height:auto;transform:translate(-50%,-50%);filter:drop-shadow(3px 5px 4px var(--material-shadow))}@media print{.site-map-pin-symbols img{filter:none}}.site-map-label[data-symbol]:not([aria-pressed=true]):not(:focus-visible){opacity:0;pointer-events:none}.site-map-roof-choice{border:0;margin:0;padding:0;display:grid;gap:var(--space-2)}.site-map-roof-choice legend{font-weight:600;margin-bottom:var(--space-1)}.site-map-roof-types{display:flex;flex-wrap:wrap;gap:var(--space-3)}.site-map-roof-types label{display:inline-flex;align-items:center;gap:6px;min-height:32px}.site-map-roof-colors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.site-map-roof-color{display:grid;justify-items:center;gap:4px;padding:6px;border:1px solid var(--color-divider);border-radius:var(--radius-control);font-size:13px;text-align:center;cursor:pointer}.site-map-roof-color input{position:absolute;opacity:0;width:1px;height:1px}.site-map-roof-color img{width:44px;height:32px;object-fit:cover;border-radius:4px}.site-map-roof-color:has(input:checked){border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.site-map-roof-color:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.symbol-library-to-place{margin-top:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-divider)}.symbol-library-to-place h3{margin:0;font-size:16px}.symbol-library-to-place .symbol-library-grid{margin-top:var(--space-2)}.symbol-library-meta{font-size:12px;font-weight:400;color:var(--color-text-secondary)}.site-map-link{display:grid;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-divider)}.site-map-link h3{margin:0;font-size:16px}.site-map-link .site-map-hint{margin:0}.site-map-link-existing,.site-map-link-new{display:grid;gap:var(--space-2);justify-items:start}.site-map-link-existing .field,.site-map-link-new .field{width:100%}.site-map-open-record{justify-self:start;font-weight:600}.site-map-draw-tools button[data-active]{position:relative}.site-map-draw-tools button[data-active]:after{content:"";position:absolute;top:6px;inset-inline-end:6px;width:7px;height:7px;border-radius:50%;background:var(--color-primary)}.site-map-draw-more{flex-basis:100%}@media (min-width:900px){.site-map-frame-drawing .site-map-draw-tools .site-map-draw-more{position:absolute;inset-inline-start:calc(100% + 8px);bottom:0;min-width:210px;padding:6px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-raised);box-shadow:var(--shadow-overlay)}.site-map-frame-drawing .site-map-draw-tools .site-map-draw-more button{width:100%;justify-content:flex-start;gap:var(--space-2);padding:0 var(--space-3)}.site-map-frame-drawing .site-map-draw-more .site-map-tool-name{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:nowrap;color:var(--color-text)}.site-map-frame-drawing .site-map-draw-tools .site-map-draw-more kbd{position:static;margin-inline-start:auto;font-size:11px}}.site-map-picture{width:min(1180px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-overlay);overflow:auto}.site-map-picture::backdrop{background:var(--scrim)}.site-map-picture-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4)}.site-map-picture-head h2{margin:0;font-size:24px}.site-map-picture-head p{margin:4px 0 0;color:var(--color-text-secondary)}.site-map-picture-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.site-map-picture-actions .btn-secondary{display:inline-flex;align-items:center;gap:var(--space-2)}.site-map-picture-frame{position:relative;overflow:hidden}.site-map-picture-frame .site-map-canvas{width:100%}.site-map-legend-shown{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 16px;margin:var(--space-3) 0 0;padding:0;list-style:none;font-size:13px}.site-map-legend-shown li{display:flex;align-items:center;gap:6px}.site-map-legend-shown b{margin-inline-start:auto;font-weight:600}@media (max-width:640px){.site-map-picture{padding:var(--space-3);width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}}@media print{body:has(.site-map-picture[open]) .site-map-print-area{display:none}body:has(.site-map-picture[open]) *{visibility:hidden}body:has(.site-map-picture[open]) .site-map-picture[open],body:has(.site-map-picture[open]) .site-map-picture[open] *{visibility:visible}.site-map-picture[open]{position:absolute;inset:0 auto auto 0;width:100%;max-height:none;margin:0;padding:0;border:0;box-shadow:none;overflow:visible}.site-map-picture-head{display:none}.site-map-picture .site-map-print-only{display:block}.site-map-picture .site-map-zoom{display:none!important}.site-map-picture,.site-map-picture *{print-color-adjust:exact;-webkit-print-color-adjust:exact}}.site-map-kickoff-form{display:grid;gap:var(--space-3)}.site-map-kickoff-shapes{border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:var(--space-2)}.site-map-kickoff-shapes legend{font-weight:600;margin-bottom:var(--space-2)}.site-map-kickoff-shape{display:grid;justify-items:center;gap:4px;padding:var(--space-2);border:1px solid var(--color-divider);border-radius:var(--radius-control);font-size:13px;text-align:center;cursor:pointer}.site-map-kickoff-shape input{position:absolute;opacity:0;width:1px;height:1px}.site-map-kickoff-shape svg{fill:var(--material-lawn,var(--color-nature-soft));stroke:var(--color-text-secondary);stroke-width:1.5}.site-map-kickoff-shape:has(input:checked){border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.site-map-kickoff-shape:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.site-map-kickoff .site-map-hint{margin:0}.site-map-order{display:flex;flex-wrap:wrap;gap:var(--space-2)}.site-map-order .btn-small{flex:1 1 auto;min-height:44px}body:has(.site-map-drawing-mode) .area-head>:is(.part-tabs,.area-tabs,.area-hint){display:none}.site-map-measure-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-control);background:var(--color-surface)}.site-map-measure-status p{margin:0;font-size:14px;color:var(--color-text-secondary)}.site-map-more-props{border-top:1px solid var(--color-divider);padding-top:var(--space-2)}.site-map-more-props>summary{display:flex;align-items:center;min-height:var(--tap-target);font-size:14px;font-weight:600;color:var(--color-primary-text);cursor:pointer}.site-map-more-props[open]{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-2)}.symbol-library-recent{margin-top:var(--space-3)}.symbol-library-recent h3{margin:0 0 var(--space-2);font-size:15px}.site-map-full-toggle svg{width:18px;height:18px}body:has(.site-map-full){overflow:hidden}.site-map-full{position:fixed;inset:0;z-index:80;display:flex;flex-direction:column;gap:0;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);background:var(--color-app-bg)}.site-map-full>.site-map-toolbar{flex:none;margin:0;padding:var(--space-2) var(--space-4)}.site-map-full>.site-map-layout{position:relative;flex:1 1;min-height:0;display:block}.site-map-full .site-map-main{height:100%;display:flex;flex-direction:column}.site-map-full .site-map-main>:not(.site-map-frame){display:none}.site-map-full .site-map-frame-drawing{flex:1 1;min-height:0;display:flex;flex-direction:column;border-radius:0}.site-map-full .site-map-frame-drawing .site-map-viewport{flex:1 1;height:auto;min-height:0;max-height:none}.site-map-full .site-map-aside>:not(.site-map-selected,[role=alert]){display:none}.site-map-full .site-map-aside:not(:has(>.site-map-selected,>[role=alert])){display:none}.site-map-full .site-map-aside{position:absolute;z-index:6;top:var(--space-3);right:var(--space-3);width:min(360px,calc(100% - 2 * var(--space-3)));max-height:calc(100% - 2 * var(--space-3));overflow-y:auto;padding:var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 8px 24px rgb(0 0 0/.12)}@media (max-width:640px){.site-map-full .site-map-full-label{display:none}.site-map-full-toggle{width:var(--tap-target);padding:0;justify-content:center}.site-map-full-toggle .site-map-full-label{display:none}.site-map-full>.site-map-toolbar{padding:var(--space-1) var(--space-2)}.site-map-full .site-map-frame-drawing .site-map-viewport{height:auto}.site-map-full .site-map-aside{top:auto;left:var(--space-2);right:var(--space-2);bottom:calc(64px + var(--space-2));width:auto;max-height:50%}}.file-drop{position:relative;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.file-drop>input[type=file]{width:1px;height:1px;margin:-1px;padding:0;border:0}.file-drop-zone{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);border:1.5px dashed var(--color-border-control);border-radius:var(--radius-control);background:var(--color-surface);text-align:center;cursor:pointer;transition:border-color .12s ease,background-color .12s ease}.file-drop-zone:hover{border-color:var(--color-primary)}.file-drop[data-over] .file-drop-chosen,.file-drop[data-over] .file-drop-zone{border-style:solid;border-color:var(--color-primary);background:var(--color-primary-soft)}.file-drop:has(>input:focus-visible) .file-drop-zone{outline:3px solid var(--color-focus);outline-offset:2px}.file-drop:has(>input[aria-invalid=true]) .file-drop-zone{border-color:var(--color-danger)}.file-drop-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary-text)}.file-drop[data-over] .file-drop-icon{background:var(--color-primary);color:var(--color-on-primary)}.file-drop-title{font-size:15px;font-weight:600;color:var(--color-text)}.file-drop-buttons{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-2)}.file-drop-or{flex-basis:100%;font-size:13px;color:var(--color-text-muted)}.file-drop[data-over] .file-drop-buttons{visibility:hidden}.file-drop .file-drop-choose{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 16px;border:1px solid var(--color-border-control);border-radius:var(--radius-pill);background:var(--color-surface-raised);color:var(--color-text);font:inherit;font-size:14px;font-weight:600;line-height:1.2}.file-drop .file-drop-choose:hover{border-color:var(--color-primary);background:var(--color-surface-raised);color:var(--color-text)}.file-drop-chosen{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:var(--space-3);padding:10px;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.file-drop-thumb{display:block;width:112px;height:84px;border-radius:8px;object-fit:cover;background:var(--color-surface-subtle)}.file-drop-thumb.is-small{width:48px;height:36px;border-radius:6px}.file-drop-thumb.is-badge{display:grid;place-items:center;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--color-text-muted)}.file-drop-thumb.is-small.is-badge{font-size:11px}.file-drop-chosen-text,.file-drop-list-text{display:flex;flex-direction:column;gap:2px;min-width:0}.file-drop-name{font-size:14px;font-weight:600;color:var(--color-text);overflow-wrap:anywhere}.file-drop-meta{font-size:13px;color:var(--color-text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.file-drop-actions{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:6px}.file-drop .file-drop-link{padding:0;min-height:24px;border:0;border-radius:0;background:transparent;color:var(--color-primary-text);font:inherit;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:3px}.file-drop .file-drop-link:hover{border-color:transparent;background:transparent;color:var(--color-primary-hover)}.file-drop-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.file-drop-list li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 10px 6px 6px;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.file-drop-list .file-drop-link{color:var(--color-text-muted);font-weight:500;font-size:13px}.file-drop-error{margin:0;font-size:13px;color:var(--color-danger)}.file-drop-hint{margin:0;font-size:13px;color:var(--color-text-muted)}@media (prefers-reduced-motion:reduce){.file-drop-zone{transition:none}}.help-sheet-feedback{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-divider)}.help-feedback-link{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 var(--space-3);border:1px solid var(--color-border-control);border-radius:var(--radius-pill);background:var(--color-surface-raised);color:var(--color-text);font-size:15px;font-weight:600;text-align:center;text-decoration:none}.help-feedback-link:hover{border-color:var(--color-primary)}.feedback-page{gap:var(--space-6);max-width:760px}.feedback-card,.feedback-page{display:flex;flex-direction:column}.feedback-card{gap:var(--space-4);padding:18px 20px;border:1px solid var(--color-divider);border-radius:var(--radius-card);background:var(--color-surface)}.feedback-card h2{margin:0;font-size:18px}.feedback-form{display:flex;flex-direction:column;gap:var(--space-4)}.feedback-kinds{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;border:0}.feedback-kinds legend{margin-bottom:var(--space-2);padding:0;font-weight:600}.feedback-kind-choice{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-border-control);border-radius:var(--radius-pill);background:var(--color-surface-raised);font-weight:600;cursor:pointer}.feedback-kind-choice input{position:absolute;opacity:0;pointer-events:none}.feedback-kind-choice:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-text)}.feedback-kind-choice:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.feedback-hint{margin:0;font-size:13px;color:var(--color-text-muted)}.feedback-contact{display:flex;align-items:flex-start;gap:var(--space-2);font-size:15px}.feedback-contact input{width:20px;height:20px;margin-top:2px;flex:none}.feedback-empty{margin:0;color:var(--color-text-secondary)}.feedback-list{list-style:none;margin:0;padding:0}.feedback-list,.feedback-list li{display:flex;flex-direction:column}.feedback-list li{gap:4px;padding:var(--space-3) 0;border-top:1px solid var(--color-divider)}.feedback-row-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.feedback-kind,.feedback-status{font-size:13px;font-weight:600;color:var(--color-text-secondary)}.feedback-status{padding:2px 10px;border-radius:var(--radius-pill);background:var(--color-surface-subtle)}.feedback-status[data-status=in_progress]{background:var(--color-attention-soft);color:var(--color-attention-text)}.feedback-status[data-status=done]{background:var(--color-nature-soft);color:var(--color-nature)}.feedback-message{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.feedback-date{font-size:13px;color:var(--color-text-muted)}@media (max-width:480px){.help-sheet-feedback{grid-template-columns:minmax(0,1fr)}}[data-category=shutoff],[data-category=water]{--home-color:var(--home-water)}[data-category=electric]{--home-color:var(--home-electric)}[data-category=safety]{--home-color:var(--home-safety)}[data-category=heating]{--home-color:var(--home-heating)}[data-category=appliance]{--home-color:var(--home-appliance)}[data-category=other]{--home-color:var(--home-other)}.home-item-badge{display:inline-grid;place-items:center;flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:var(--home-color);color:var(--color-on-primary)}.home-item-badge svg{width:16px;height:16px}.home-items-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block:var(--space-4)}.home-items-actions a{display:inline-flex;align-items:center;gap:var(--space-2)}.home-items-actions svg{width:16px;height:16px}.area-section>.home-items-group{margin:var(--space-4) 0 0;font-size:15px;font-weight:700;color:var(--color-text-secondary)}.area-section>.home-items-list{margin:0;padding:0;gap:0;list-style:none}.home-items-list li+li{border-top:1px solid var(--color-divider)}.home-item-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-2) var(--space-1);color:var(--color-text);text-decoration:none}.home-item-row:hover .home-item-row-name{text-decoration:underline}.home-item-row-name{display:block;font-weight:600}.home-item-row-meta{display:block;font-size:13px;color:var(--color-text-secondary)}.home-item-warranty{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--color-attention-soft);color:var(--color-attention-text);font-size:12px;font-weight:700;white-space:nowrap}.home-items-unplaced{margin:0 0 var(--space-2)}.home-item-form .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.field-optional{font-weight:400;color:var(--color-text-muted)}.checkbox-row{display:flex;align-items:center;gap:var(--space-2);min-height:44px}.checkbox-row input{width:auto}@media (max-width:640px){.home-item-form .form-row{grid-template-columns:1fr}}.home-item-title{display:flex;align-items:center;gap:var(--space-3)}.home-item-title h1{margin:0}.home-item-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-2);margin:var(--space-3) 0}.home-item-facts div{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.home-item-facts dt{font-size:12px;color:var(--color-text-muted)}.home-item-facts dd{margin:0;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.home-item-notes{white-space:pre-line}.home-item-flags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-2) 0 0;padding:0;list-style:none}.home-item-flags li{padding:2px var(--space-3);border-radius:var(--radius-pill);background:var(--color-surface-subtle);font-size:13px}.home-item-page .area-section>.record-list{margin:0}.home-item-task{align-items:center;justify-content:space-between;padding-block:var(--space-2)}.home-item-link,.home-item-task{display:flex;flex-wrap:wrap;gap:var(--space-2)}.home-item-link{align-items:flex-end;margin-top:var(--space-3)}.home-item-link .field{margin:0;flex:1 1 220px}.service-suggestions{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-divider);border-radius:var(--radius-card);background:var(--color-surface);display:flex;flex-direction:column;gap:var(--space-2)}.service-suggestions h3{margin:0;font-size:16px;font-family:inherit}.service-suggestions .hint{margin:0}.service-suggestions ul{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-1)}.service-suggestions label{display:flex;gap:var(--space-2);align-items:flex-start;min-height:44px;padding-block:var(--space-1);cursor:pointer}.service-suggestions input[type=checkbox]{margin-top:3px;width:18px;height:18px;flex-shrink:0}.service-suggestions label>span{display:flex;flex-direction:column}.service-suggestions button{align-self:flex-start}.site-map-drawing[data-plan=house] .site-map-shape[data-kind=polygon]:not([data-material]),.site-map-drawing[data-plan=house] .site-map-shape[data-kind=rect]:not([data-material]){fill:var(--plan-floor);stroke:var(--plan-wall);stroke-width:5}.site-map-shape[data-material=door],.site-map-shape[data-material=window]{fill:var(--plan-floor);stroke:none}.site-map-shape[data-selected][data-material=door],.site-map-shape[data-selected][data-material=window]{stroke:var(--color-primary);stroke-width:2}.site-map-door{fill:none;stroke:var(--plan-door);stroke-width:1.5}.site-map-window{fill:none;stroke:var(--plan-window);stroke-width:2}.site-map-kinds{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin-block:var(--space-3) 0}.site-map-kind-toggle{display:inline-flex;gap:var(--space-2)}.site-map-kind-toggle a{display:inline-flex;align-items:center;min-height:40px;padding:0 var(--space-4);border:1px solid var(--color-border-control);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-weight:600;text-decoration:none}.site-map-kind-toggle a:hover:not([aria-current=page]){background:var(--color-surface-subtle)}.site-map-kind-toggle a[aria-current=page]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-text);font-weight:700}.site-map-floors{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.site-map-floors a{display:inline-flex;align-items:center;gap:var(--space-1);min-height:40px;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-weight:600;text-decoration:none}.site-map-floors a[aria-current=page]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-text);font-weight:700}.site-map-floors svg{width:14px;height:14px}[data-type=home_item]{--map-ink:var(--type-reminder-text);--map-fill:var(--type-reminder-soft);--map-soft:var(--type-reminder-soft);--map-radius:999px}.site-map-pin[data-category]{--map-ink:var(--home-color);--map-fill:var(--home-color)}.site-map-pin[data-category] .site-map-pin-dot{color:var(--color-on-primary);border-color:var(--color-surface)}.page-v2-form form.home-item-link{flex-direction:row;flex-wrap:wrap;align-items:flex-end}.page-v2-form form.home-item-link button{align-self:flex-end}.site-map-shape[data-kind=path][data-wall]{fill:none;stroke:var(--plan-wall);stroke-width:5;stroke-linecap:square;stroke-linejoin:miter}.site-map-shape[data-kind=path][data-wall][data-selected]{stroke:var(--color-primary)}.site-map-draft-wall{fill:none;stroke:var(--plan-wall);stroke-width:5;stroke-linecap:square;opacity:.7}.home-items-scan-hint{margin:0 0 var(--space-3)}.scan-pick{display:flex;flex-direction:column;gap:var(--space-3)}.manual-finder [role=status],.scan-status[role=status]{padding:0;border-radius:0;background:transparent}.scan-status{display:flex;align-items:center;gap:var(--space-2);margin:0;color:var(--color-text-secondary)}.scan-dot{flex:0 0 auto;width:10px;height:10px;border-radius:50%;background:var(--color-primary)}@media (prefers-reduced-motion:no-preference){.scan-dot{animation:scan-pulse 1s ease-in-out infinite alternate}}@keyframes scan-pulse{0%{opacity:.35}to{opacity:1}}.scan-review{display:flex;flex-direction:column;gap:var(--space-4)}.scan-review h2{margin:0}.scan-review h2:focus{outline:none}.scan-review-doc{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.scan-preview{display:block;max-width:min(100%,280px);max-height:240px;border:1px solid var(--color-border);border-radius:var(--radius-control);object-fit:contain;background:var(--color-surface-subtle)}.scan-item,.scan-receipt{margin:0;padding:var(--space-3) var(--space-4) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);min-width:0}.scan-item legend,.scan-receipt legend{padding:0 var(--space-1);font-weight:700}.scan-item[data-use=skip]{background:var(--color-surface-subtle)}.scan-item[data-use=skip] legend{color:var(--color-text-secondary)}.scan-item-fields{gap:var(--space-3);margin-top:var(--space-2)}.scan-choice,.scan-item-fields{display:flex;flex-direction:column}.scan-currency{max-width:200px}.scan-saved[role=status]{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);background:var(--color-nature-soft);color:var(--color-text)}.manual-finder{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.manual-finder .hint{margin:0}.manual-links{display:flex;flex-direction:column;gap:var(--space-2);width:100%;margin:0;padding:0;list-style:none}.manual-links li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-1) var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.manual-links a{font-weight:600;overflow-wrap:anywhere}.manual-link-path{grid-column:1;font-size:13px;color:var(--color-text-secondary);overflow-wrap:anywhere}.manual-links button{grid-column:2;grid-row:1/span 2}@media (max-width:480px){.manual-links li{grid-template-columns:1fr}.manual-links button{grid-column:1;grid-row:auto;justify-self:start}}[data-tone=emergency]{--tone:var(--color-attention);--tone-soft:var(--color-attention-soft);--tone-text:var(--color-attention-text)}.property-identity-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}a.btn-secondary.emergency-button{display:inline-flex;align-items:center;gap:var(--space-2);border-color:var(--color-attention);background:var(--color-attention-soft);color:var(--color-attention-text);font-weight:600}a.btn-secondary.emergency-button:hover{border-color:var(--color-attention-text);background:var(--color-attention-soft)}a.btn-secondary.emergency-button svg{width:18px;height:18px}.property-identity-top a.btn-secondary.emergency-button{width:auto;padding:0 var(--space-3)}.shell-drawer-row.shell-drawer-emergency,.shell-drawer-row.shell-drawer-emergency svg{color:var(--color-attention-text)}.shell-drawer-row.shell-drawer-emergency{font-weight:600}.emergency-call{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);margin-block:var(--space-4);padding:var(--space-4);border:1px solid var(--color-attention);border-radius:var(--radius-card);background:var(--color-attention-soft);color:var(--color-attention-text)}.emergency-call-icon{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;border-radius:50%;background:var(--color-attention);color:var(--color-on-primary)}.emergency-call-icon svg{width:22px;height:22px}.emergency-call-text{flex:1 1 220px;min-width:0}.emergency-call-text h2{margin:0;font-size:17px;color:var(--color-attention-text)}.emergency-call-text p{margin:2px 0 0;color:var(--color-text)}.emergency-call-numbers{display:flex;gap:var(--space-2)}.emergency-call-number{display:inline-grid;place-items:center;min-width:72px;min-height:var(--tap-target);padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--color-attention);color:var(--color-on-primary);font-size:20px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-decoration:none}.emergency-call-number:hover{background:var(--color-attention-text)}.emergency-toolbar{display:flex;justify-content:flex-end;margin-bottom:var(--space-2)}.emergency-print{display:inline-flex;align-items:center;gap:var(--space-2)}.emergency-print svg{width:18px;height:18px}.emergency-suggest{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin:var(--space-3) 0;padding:var(--space-3);border-radius:var(--radius-control);background:var(--color-surface-subtle)}.emergency-suggest p{margin:0;flex:1 1 auto;min-width:min(100%,18rem)}.emergency-suggest button{flex:0 0 auto}.emergency-list{list-style:none;margin:var(--space-3) 0;padding:0;display:grid;gap:var(--space-3)}.emergency-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.emergency-card-head{display:flex;align-items:flex-start;gap:var(--space-3)}.emergency-badge{width:40px;height:40px}.emergency-badge svg{width:20px;height:20px}.emergency-card-title{flex:1 1 auto;min-width:0}.emergency-card-title h3{margin:0;font-size:17px;line-height:1.3;overflow-wrap:anywhere}.emergency-card-meta{margin:2px 0 0;font-size:13px;color:var(--color-text-muted)}.emergency-card-eyebrow{margin:0 0 2px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.emergency-private{flex:0 0 auto}.emergency-facts{margin:0;display:grid;gap:var(--space-2)}.emergency-facts>div{display:grid;grid-template-columns:9.5em minmax(0,1fr);gap:var(--space-3)}.emergency-facts dt{font-weight:600;color:var(--color-text-secondary)}.emergency-facts dd{margin:0;white-space:pre-line;overflow-wrap:anywhere}.emergency-photos{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.emergency-photos img{display:block;width:112px;height:84px;object-fit:cover;border-radius:var(--radius-control);border:1px solid var(--color-border)}.emergency-card-link{margin:0;font-size:14px}.emergency-phone{margin:0;font-size:20px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.emergency-phone-link{display:inline-flex;align-items:center;min-height:var(--tap-target);color:var(--color-primary-text)}.emergency-note{margin:0;color:var(--color-text-secondary);overflow-wrap:anywhere}.emergency-edit{border-top:1px solid var(--color-divider);padding-top:var(--space-2)}.emergency-add>summary,.emergency-edit>summary{cursor:pointer;display:inline-flex;align-items:center;min-height:var(--tap-target);list-style:none}.emergency-add>summary::-webkit-details-marker,.emergency-edit>summary::-webkit-details-marker{display:none}.emergency-edit>summary{color:var(--color-primary-text);font-weight:600}.emergency-add>summary{padding:0 var(--space-4);border:1px solid var(--color-border-control);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font-weight:600}.emergency-add>summary:hover{background:var(--color-surface-raised)}.emergency-add[open]>summary{align-self:flex-start}.emergency-add>summary:after,.emergency-edit>summary:after{content:"▾";margin-left:var(--space-2);font-size:12px}.emergency-add[open]>summary:after,.emergency-edit[open]>summary:after{content:"▴"}.emergency-add[open],.emergency-edit[open]{display:flex;flex-direction:column;gap:var(--space-4)}.emergency-edit-danger{display:flex;justify-content:flex-start}.emergency-add{margin-top:var(--space-3)}.emergency-form{display:flex;flex-direction:column;gap:var(--space-3)}.emergency-form .form-actions{margin-top:0}.emergency-check{display:flex;align-items:center;gap:var(--space-2);min-height:var(--tap-target);cursor:pointer}.emergency-check input{width:18px;height:18px;flex:0 0 auto}.emergency-check-sub{min-height:32px;font-size:14px;color:var(--color-text-secondary)}.emergency-docs{list-style:none;margin:var(--space-3) 0;padding:0;display:grid;gap:var(--space-2)}.emergency-docs li{display:flex}.emergency-doc,.emergency-docs li{align-items:center;gap:var(--space-3)}.emergency-doc{display:inline-flex;min-height:var(--tap-target);min-width:0;overflow-wrap:anywhere}.emergency-doc-thumb{display:grid;place-items:center;flex:0 0 auto;width:48px;height:48px;overflow:hidden;border-radius:var(--radius-control);border:1px solid var(--color-border);background:var(--color-surface-subtle);color:var(--color-text-muted)}.emergency-doc-thumb img{width:100%;height:100%;object-fit:cover}.emergency-doc-thumb svg{width:22px;height:22px}.emergency-doc-choices{border:0;margin:0;padding:0;display:grid;gap:var(--space-3)}.emergency-doc-choice{display:flex;align-items:flex-start;gap:var(--space-3)}.emergency-doc-choice-text{display:flex;flex-direction:column;min-width:0}.emergency-share-state{margin:var(--space-2) 0}.emergency-share-create{align-items:flex-end;flex-wrap:wrap;gap:var(--space-3)}.emergency-share-days{display:flex;flex-direction:column;gap:4px;font-weight:600}.emergency-share-url{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.emergency-share-copy{display:flex;gap:var(--space-2);flex-wrap:wrap}.emergency-share-copy input{flex:1 1 240px;min-width:0;font-family:ui-monospace,Consolas,monospace;font-size:13px}.emergency-share-status:empty{display:none}.emergency-shared-head{display:flex;flex-direction:column;gap:4px;margin-top:var(--space-4)}.emergency-shared-head .page-title{margin:0}.emergency-shared-address{margin:0;font-size:17px}.emergency-shared-foot{margin-top:var(--space-6)}.emergency-print-footer,.emergency-print-title{display:none}@media print{body:has(.emergency-page) *{visibility:hidden}body:has(.emergency-page) .emergency-page,body:has(.emergency-page) .emergency-page *{visibility:visible}.emergency-page{position:absolute;inset:0 auto auto 0;width:100%;max-width:none;margin:0;padding:0}.emergency-page .area-head,.emergency-page .emergency-add,.emergency-page .emergency-edit,.emergency-page .emergency-empty .hint,.emergency-page .emergency-no-print,.emergency-page .emergency-share,.emergency-page .emergency-toolbar{display:none}.emergency-print-title{display:block;margin:0 0 var(--space-3);font-size:22px;font-weight:700}.emergency-print-footer{display:block;margin-top:var(--space-6);font-size:12px;color:var(--color-text-muted)}.emergency-badge,.emergency-call,.emergency-call-icon,.emergency-call-number{print-color-adjust:exact;-webkit-print-color-adjust:exact}.emergency-card,.emergency-docs li{page-break-inside:avoid;break-inside:avoid}.emergency-photos img{width:160px;height:120px}}@media (max-width:520px){.emergency-facts>div{grid-template-columns:minmax(0,1fr);gap:2px}}[data-type=photo_point]{--map-ink:var(--color-primary);--map-fill:var(--color-surface-raised);--map-soft:var(--color-primary-soft);--map-radius:999px}.site-map-photo-pin{width:48px;height:48px}.site-map-photo-pin .site-map-pin-dot{width:38px;height:38px;overflow:hidden;border-width:3px;border-color:var(--color-surface);box-shadow:0 0 0 2px var(--map-ink),var(--shadow-segment)}.site-map-photo-pin .site-map-pin-dot img{width:100%;height:100%;object-fit:cover;display:block}.site-map-photo-pin[data-selected] .site-map-pin-dot{width:46px;height:46px;background:var(--map-fill);color:var(--map-ink)}.site-map-photo-cone{position:absolute;left:50%;top:50%;width:56px;height:72px;margin:-72px 0 0 -28px;transform-origin:50% 100%;clip-path:polygon(50% 100%,0 0,100% 0);background:linear-gradient(to top,var(--photo-cone),transparent);pointer-events:none}.site-map-photo-count{position:absolute;top:-2px;right:-2px;min-width:20px;height:20px;padding:0 5px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);font-size:11px;font-weight:700;line-height:20px;box-shadow:0 0 0 2px var(--color-surface)}.site-map-selected-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.site-map-selected-actions a{display:inline-flex;align-items:center;gap:var(--space-2)}.site-map-photo-link svg,.site-map-selected-actions svg{width:16px;height:16px}.photo-timeline{display:grid;gap:var(--space-3)}.photo-thumbs{display:flex;gap:var(--space-2);margin:0;padding:2px 2px var(--space-1);list-style:none;overflow-x:auto}.photo-thumb{display:grid;width:104px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);overflow:hidden;text-align:start;cursor:pointer}.photo-timeline[data-compact] .photo-thumb{width:84px}.photo-thumb img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.photo-thumb span{padding:4px 8px;font-size:12px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.photo-thumb[aria-pressed=true]{outline:2.5px solid var(--color-primary);outline-offset:2px}.photo-thumb:focus-visible{outline:2.5px solid var(--color-primary);outline-offset:2px}.photo-compare{--split:50%;position:relative;aspect-ratio:4/3;max-height:520px;border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden;background:var(--color-surface-subtle)}.photo-compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.photo-compare-after{clip-path:inset(0 0 0 var(--split))}.photo-compare-bar{top:0;bottom:0;left:var(--split);width:3px;margin-left:-1.5px;box-shadow:var(--shadow-segment);pointer-events:none}.photo-compare-bar,.photo-compare-bar:after{position:absolute;background:var(--color-surface)}.photo-compare-bar:after{content:"";top:50%;left:50%;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;box-shadow:var(--shadow-overlay)}.photo-compare-tag{position:absolute;bottom:var(--space-2);padding:3px 8px;border-radius:var(--radius-pill);background:var(--scrim);color:var(--color-on-primary);font-size:12px;font-weight:600;pointer-events:none}.photo-compare-tag[data-side=before]{left:var(--space-2)}.photo-compare-tag[data-side=after]{right:var(--space-2)}.photo-compare-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}.photo-compare:has(.photo-compare-range:focus-visible){outline:3px solid var(--color-primary);outline-offset:2px}.photo-compare-choose{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.photo-compare-choose .field{margin:0}.photo-point-title{display:flex;align-items:center;gap:var(--space-3)}.photo-point-title h1{margin:0}.photo-point-badge{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary)}.photo-point-badge svg{width:18px;height:18px}.photo-point-facts{margin:var(--space-2) 0 var(--space-4);padding:0;list-style:none;display:grid;gap:var(--space-1)}.photo-point-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.photo-camera-open{display:inline-flex;align-items:center;gap:var(--space-2)}.photo-camera-open svg{width:18px;height:18px}.photo-add-form{margin-top:var(--space-3)}.photo-point-manage{margin-top:var(--space-6)}.photo-point-manage-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.photo-camera{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:var(--photo-camera-bg);color:var(--photo-camera-text)}.photo-camera[open]{display:grid;grid-template-rows:minmax(0,1fr) auto auto}.photo-camera::backdrop{background:var(--photo-camera-bg)}.photo-camera-stage{position:relative;overflow:hidden}.photo-camera-ghost,.photo-camera-shot,.photo-camera-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.photo-camera-ghost{opacity:.38;pointer-events:none}.photo-camera-status{position:absolute;inset:auto 0 50% 0;text-align:center}.photo-camera-error{margin:0;padding:var(--space-2) var(--space-4)}.photo-camera-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom, 0px))}.photo-camera-ghost-toggle{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px}.photo-camera-ghost-toggle input{width:auto}.photo-camera-shutter{width:72px;height:72px;padding:0;border:4px solid var(--photo-camera-text);border-radius:50%;background:transparent;display:grid;place-items:center}.photo-camera-shutter span{width:56px;height:56px;border-radius:50%;background:var(--photo-camera-text)}.photo-camera-shutter:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.map-photos{margin-top:var(--space-6);display:grid;gap:var(--space-3);justify-items:start}.map-photos h2{margin:0}.map-photos-list{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-2);width:100%}.map-photos-row{display:flex;align-items:center;gap:var(--space-3);min-height:56px;color:var(--color-text);text-decoration:none}.map-photos-row:hover .map-photos-name{text-decoration:underline}.map-photos-thumb{display:inline-grid;place-items:center;flex:0 0 auto;width:56px;height:42px;border-radius:8px;overflow:hidden;background:var(--color-primary-soft);color:var(--color-primary)}.map-photos-thumb img{width:100%;height:100%;object-fit:cover}.map-photos-thumb svg{width:18px;height:18px}.map-photos-name{display:block;font-weight:600}.map-photos .button-link{display:inline-flex;align-items:center;gap:var(--space-2)}.map-photos .button-link svg{width:16px;height:16px}@media (max-width:640px){.photo-compare-choose{grid-template-columns:1fr}}