:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--tap-min:44px;--toolbar-height:64px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--color-border:#e5e7eb;--color-panel:#fff;--color-muted-bg:#f8f9fa;--color-primary:#3b82f6;--sidebar-docked-width:360px;--app-bottom-gap:max(18px, env(safe-area-inset-bottom));--app-bottom-gap-roomy:max(28px, env(safe-area-inset-bottom));--app-floating-bottom:calc(18px + env(safe-area-inset-bottom))}@media (width>=700px) and (width<=1100px) and (orientation:portrait),(width>=700px) and (orientation:landscape){:root{--app-bottom-gap:max(30px, env(safe-area-inset-bottom));--app-bottom-gap-roomy:max(42px, env(safe-area-inset-bottom))}}html,body{width:100%;height:100%;padding:0;padding-bottom:env(safe-area-inset-bottom);background-color:#f5f5f5;margin:0;font-family:Apple SD Gothic Neo,Malgun Gothic,sans-serif;overflow:hidden}#map{z-index:1;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transition:left .3s cubic-bezier(.25,1,.5,1);position:absolute;inset:0}.map-top-controls{top:env(safe-area-inset-top);pointer-events:none;box-sizing:border-box;z-index:1800;width:100%;height:0;position:absolute;left:0;right:0}.map-top-left,.map-top-right{top:var(--space-3);gap:var(--space-2);pointer-events:auto;flex-direction:column;display:flex;position:absolute}.map-top-left{left:var(--space-3);transition:left .3s cubic-bezier(.25,1,.5,1)}.map-top-right{right:var(--space-3)}.map-control-btn{cursor:pointer;color:#333;background:#fffffff0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:transform .1s,background-color .2s;display:flex;box-shadow:0 3px 8px #0f172a3d}.map-control-btn:active{background-color:#f0f0f0;transform:scale(.96)}.svg-icon{fill:currentColor;width:22px;height:22px}.svg-icon-lg{width:30px;height:30px;display:block}.svg-inline{fill:currentColor;vertical-align:middle;flex-shrink:0;width:16px;height:16px;margin-right:4px}.top-info-container{cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;margin:0 5px;display:flex;overflow:hidden}#address-display{color:#333;white-space:nowrap;text-overflow:ellipsis;text-align:center;width:100%;margin-bottom:2px;font-size:12px;font-weight:700;overflow:hidden}#coord-display{color:#666;font-family:monospace;font-size:10px}#search-container{top:calc(64px + env(safe-area-inset-top));z-index:2000;background:#fff;border-radius:8px;flex-direction:column;gap:5px;width:90%;max-width:400px;padding:10px;display:none;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 4px 10px #0003}.search-tabs{border-bottom:1px solid #ddd;margin-bottom:5px;display:flex}.search-tab-btn{color:#888;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:8px 0;font-size:13px;font-weight:600}.search-tab-btn.active{color:#007bff;border-bottom:2px solid #007bff}.search-tab-content{flex-direction:row;gap:5px;display:none}.search-tab-content.active{display:flex}.coord-search-content{flex-direction:column;gap:10px}.coord-search-input-row{align-items:stretch;gap:5px;display:flex}.coord-input-container{flex-direction:column;flex:1;gap:4px;display:flex}.coord-input-container input{text-align:center;box-sizing:border-box;border:1px solid #ccc;border-radius:4px;width:100%;padding:8px 4px;font-size:13px}.coord-input-container input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.coord-input-container input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.coord-input-container input[type=number]{appearance:textfield}.coord-search-help{color:#6b7280;text-align:center;word-break:keep-all;margin-top:0;font-size:11px;line-height:1.35}#search-input-address,#search-input-national{border:1px solid #ccc;border-radius:4px;flex:1;padding:8px}#search-go-btn,#search-go-btn-national,#search-go-btn-coord{color:#fff;cursor:pointer;box-sizing:border-box;background:#007bff;border:none;border-radius:4px;min-width:60px;margin:0;padding:0 15px;font-weight:700}#history-panel,.search-result-panel{z-index:2001;box-sizing:border-box;background:#fff;border:1px solid #ddd;border-radius:0 0 8px 8px;width:100%;margin-top:5px;display:none;position:absolute;top:100%;left:0;overflow:hidden;box-shadow:0 4px 10px #0003}.search-result-panel{z-index:2100;max-height:250px;overflow-y:auto}.history-header,.search-result-header{color:#666;background:#f8f9fa;border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;display:flex}.history-list,.search-result-list{max-height:200px;margin:0;padding:0;list-style:none;overflow-y:auto}.history-item,.search-result-item{cursor:pointer;border-bottom:1px solid #f1f1f1;padding:10px 12px;font-size:13px;display:flex}.history-item{justify-content:space-between;align-items:center}.search-result-item{flex-direction:column;align-items:flex-start;gap:4px}.history-item:hover,.search-result-item:hover{background-color:#fcfcfc}.search-result-title{color:#000;font-size:13px}.search-result-addr{color:#666;font-size:12px}.badge-road,.badge-parcel,.badge-coord,.badge-length,.badge-area{border-radius:3px;margin-right:4px;padding:2px 4px;font-size:10px;display:inline-block}.badge-road{color:#3b82f6;background:#eef4ff}.badge-parcel{color:#f97316;background:#fff4e6}.badge-coord{color:#7e22ce;background:#f3e8ff}.badge-length{color:#0369a1;background:#e6f7ff}.badge-area{color:#15803d;background:#eaf8ee}.leaflet-middle-icon{color:#3388ffb3;text-align:center;text-shadow:0 0 2px #fff;cursor:pointer;font-size:18px;font-weight:700;line-height:14px;background:0 0!important;border:none!important;width:14px!important;height:14px!important;margin-top:-7px!important;margin-left:-7px!important}.leaflet-div-icon.leaflet-editing-icon:not(.leaflet-middle-icon){box-sizing:border-box!important;background:#fff!important;border:1px solid #2563eb!important;width:14px!important;height:14px!important;margin-top:-7px!important;margin-left:-7px!important}.leaflet-div-icon.leaflet-editing-icon.edit-selected-vertex:not(.leaflet-middle-icon){z-index:1000!important;background:#fef08a!important;border:2px solid #ef4444!important;width:18px!important;height:18px!important;margin-top:-9px!important;margin-left:-9px!important;box-shadow:0 0 0 2px #fffffff2,0 0 6px #ef4444bf!important}.gps-btn-group{top:calc(140px + env(safe-area-inset-top));z-index:1500;flex-direction:column;gap:15px;display:flex;position:absolute;right:15px}.circle-btn{cursor:pointer;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:transform .1s;display:flex;box-shadow:0 4px 8px #0000004d}.circle-btn:active{background:#f8f8f8;transform:scale(.95)}#tracking-svg-icon{filter:grayscale();opacity:.6;width:30px;height:30px;transition:all .3s}.tracking-active #tracking-svg-icon{filter:none;opacity:1}.tracking-btn-on{background-color:#e8f0fe!important;border:2px solid #aecbfa!important}.record-fab{right:16px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:2100;pointer-events:none;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:absolute}.record-fab-menu{opacity:0;visibility:hidden;pointer-events:none;flex-direction:column;align-items:flex-end;gap:10px;transition:opacity .18s,transform .18s,visibility 0s linear .18s;display:flex;transform:translateY(10px)}.record-fab.expanded .record-fab-menu{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translateY(0)}.record-fab-group{background:#fffffffa;border-radius:12px;width:164px;padding:8px 0;overflow:hidden;box-shadow:0 4px 14px #0f172a38}.record-fab-main{background:var(--color-primary);color:#fff;box-sizing:border-box;cursor:pointer;pointer-events:auto;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:26px;font-weight:300;line-height:1;transition:background-color .18s,color .18s,transform .12s,box-shadow .18s;display:flex;box-shadow:0 4px 12px #0f172a47}.record-fab-main.is-recording{background:var(--color-primary);color:#fff;cursor:default;pointer-events:auto;box-shadow:0 6px 16px #3b82f65c}.record-fab.expanded .record-fab-main{color:#111827;background:#fff;box-shadow:0 6px 18px #0f172a59}.record-fab-main:focus{outline:none}.record-fab-main:active,.bottom-btn:active{transform:scale(.95)}.record-fab-plus,.record-fab-close,.record-fab-active-icon{justify-content:center;align-items:center;display:none}.record-fab-close{font-size:26px;font-weight:300;line-height:1}.record-fab:not(.expanded) .record-fab-main:not(.is-recording) .record-fab-plus,.record-fab.expanded .record-fab-close,.record-fab:not(.expanded) .record-fab-main.is-recording .record-fab-active-icon{display:flex}.record-fab-active-icon,.record-fab-active-icon .icon-box,.record-fab-active-icon svg{width:22px;height:22px}.record-fab-label{color:#222;white-space:nowrap;align-items:center;font-size:13px;font-weight:700;display:flex}.bottom-btn{color:#555;width:100%;min-width:0;height:38px;min-height:var(--tap-min);box-sizing:border-box;cursor:pointer;box-shadow:none;pointer-events:none;background:0 0;border:none;flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;padding:0 14px;transition:background-color .16s,color .16s;display:flex}.record-fab.expanded .bottom-btn{pointer-events:auto}.bottom-btn:active{background:#f3f4f6;transform:none}.bottom-btn .icon-circle{width:22px;height:22px;color:var(--record-icon-color,var(--color-primary));flex:0 0 22px;justify-content:center;align-items:center;display:flex}.bottom-btn .icon-box{justify-content:center;align-items:center;width:22px;height:22px;margin-bottom:0;display:flex}.bottom-btn .icon-box svg{width:22px;height:22px}#btn-poly{--record-icon-color:#f97316}#btn-line{--record-icon-color:#0ea5e9}#btn-point{--record-icon-color:#22c55e}#btn-track{--record-icon-color:#8b5cf6}#btn-photo-point{--record-icon-color:#ec4899}#auth-status-btn.premium{color:#0f766e}.active-btn{background:#eff6ff;color:var(--color-primary)!important}.active-btn .icon-circle{color:var(--color-primary)!important}.active-btn .svg-icon{fill:currentColor;stroke:currentColor}.action-toolbar{right:68px;bottom:calc(18px + env(safe-area-inset-bottom));width:min(340px,100vw - 86px);max-width:340px;height:auto;padding:var(--space-2);box-sizing:border-box;-webkit-backdrop-filter:blur(12px);justify-content:center;align-items:stretch;gap:var(--space-3);z-index:2000;background:#fffffff0;border:1px solid #e5e7ebf2;border-radius:20px;flex-direction:column;transition:all .3s;display:none;position:absolute;box-shadow:0 6px 18px #0f172a2e}@media (hover:none) and (pointer:coarse){.action-toolbar{-webkit-backdrop-filter:none;background:#fffffffa}}.action-toolbar-main{justify-content:space-evenly;align-items:center;gap:var(--space-2);flex-direction:row;display:flex}.edit-action-toolbar{width:min(370px,100vw - 86px);max-width:370px}.edit-action-group{gap:var(--space-1);width:100%;min-width:0;display:flex}.edit-vertex-action-group{display:none}.edit-confirm-action-group,.edit-action-toolbar.vertex-selected .edit-vertex-action-group{display:flex}.edit-action-toolbar.vertex-selected .edit-confirm-action-group{display:none}.edit-action-toolbar.marker-edit .edit-vertex-action-group,.edit-action-toolbar.marker-edit .edit-confirm-action-group{display:contents}.edit-action-toolbar.marker-edit .action-toolbar-main{gap:var(--space-1)}.edit-action-toolbar.marker-edit .action-btn{flex:1 1 0;width:0}.action-btn{min-width:0;min-height:50px;padding:var(--space-2) var(--space-1);justify-content:center;align-items:center;gap:var(--space-1);color:#555;cursor:pointer;border-radius:var(--radius-lg);white-space:nowrap;background:0 0;border:none;flex-direction:column;flex:1;font-size:11px;font-weight:600;transition:all .2s;display:flex}.edit-action-group .action-btn{min-height:48px;font-size:10px}.edit-vertex-action-group .action-btn{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb}.edit-vertex-action-group .action-btn svg{fill:#4b5563!important}.action-btn:active{background-color:#0000000d;transform:scale(.95)}.action-btn:disabled{opacity:.4;cursor:default;pointer-events:none}.btn-gps{color:#3b82f6}.btn-gps svg{fill:#3b82f6!important}.btn-delete-vertex{color:#ef4444}.btn-delete-vertex svg{fill:#ef4444!important}.edit-vertex-action-group .action-btn.btn-gps{color:#3b82f6}.edit-vertex-action-group .action-btn.btn-gps svg{fill:#3b82f6!important}.edit-vertex-action-group .action-btn.btn-delete-vertex{color:#ef4444}.edit-vertex-action-group .action-btn.btn-delete-vertex svg{fill:#ef4444!important}.btn-done{color:#10b981;background-color:#10b9811a}.btn-done svg{fill:#10b981!important}.action-btn svg{fill:#666;width:24px;height:24px;margin-bottom:2px;transition:fill .2s}.admin-layer{filter:invert(84%)sepia()saturate(2200%)hue-rotate(28deg)brightness(120%)contrast(135%)}.sidebar-overlay{z-index:5000;opacity:0;background:0 0;width:100%;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.sidebar-overlay.visible{opacity:1}.sidebar-content{width:86%;max-width:360px;height:100%;padding-top:env(safe-area-inset-top);background:#f2f4f6;flex-direction:column;transition:transform .3s cubic-bezier(.25,1,.5,1);display:flex;position:absolute;top:0;left:0;transform:translate(-100%);box-shadow:5px 0 25px #00000026}.sidebar-overlay.visible .sidebar-content{transform:translate(0)}.sidebar-header{background:#fff;justify-content:space-between;align-items:center;height:50px;padding:0 15px;display:flex}.btn-sidebar-action{cursor:pointer;color:#555;background:#f0f2f5;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:background .2s;display:flex;position:relative}.btn-sidebar-action:active{background:#e4e6eb}.btn-sidebar-action.signed-in{color:#2563eb;background:#eff6ff}.btn-sidebar-action.signed-in:active{background:#dbeafe}.notice-badge-dot{box-sizing:content-box;background:#dc2626;border:2px solid #fff;border-radius:50%;width:9px;height:9px;display:none;position:absolute;top:3px;right:3px}#btn-notice.has-notice-badge .notice-badge-dot{display:block}.sidebar-tabs{background:#fff;border-bottom:1px solid #eee;display:flex}.tab-btn{color:#8898aa;cursor:pointer;background:0 0;border:none;flex:1;padding:12px 0;font-size:14px;font-weight:600;position:relative}.tab-btn.active{color:#3b82f6;font-weight:800}.tab-btn.active:after{content:"";background:#3b82f6;width:100%;height:3px;position:absolute;bottom:0;left:0}.sidebar-body{flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}@media (width>=832px){body.sidebar-docked-open #map{left:var(--sidebar-docked-width)}body.sidebar-docked-open .map-top-left{left:calc(var(--sidebar-docked-width) + var(--space-3))}body.sidebar-docked-open .leaflet-control-scale{left:calc(var(--sidebar-docked-width) + 15px)!important}body.sidebar-docked-open #map-active-project-badge{left:calc(var(--sidebar-docked-width) + ((100vw - var(--sidebar-docked-width)) / 2));max-width:calc((100vw - var(--sidebar-docked-width)) * .54)}body.sidebar-docked-open .sidebar-overlay{width:var(--sidebar-docked-width);background:0 0}body.sidebar-docked-open .sidebar-content{width:var(--sidebar-docked-width);max-width:var(--sidebar-docked-width)}body.sidebar-docked-open #search-container{left:calc(var(--sidebar-docked-width) + ((100vw - var(--sidebar-docked-width)) / 2));width:min(400px, calc(100vw - var(--sidebar-docked-width) - 24px));max-width:calc(100vw - var(--sidebar-docked-width) - 24px)}body.sidebar-docked-open #bottom-sheet{left:calc(var(--sidebar-docked-width) + ((100vw - var(--sidebar-docked-width)) / 2));width:calc(100vw - var(--sidebar-docked-width));max-width:min(500px, calc(100vw - var(--sidebar-docked-width)))}body.sidebar-docked-open #location-action-modal-overlay{padding-left:var(--sidebar-docked-width);box-sizing:border-box}body.sidebar-docked-open #location-action-modal-overlay .nav-modal-content{width:calc(100vw - var(--sidebar-docked-width));max-width:min(500px, calc(100vw - var(--sidebar-docked-width)))}}.tab-content{height:100%;display:none}#content-map.active{padding:var(--space-3);padding-bottom:calc(var(--space-3) + var(--app-floating-bottom));-webkit-overflow-scrolling:touch;display:block;overflow-y:auto}#content-project.active,#content-record.active{padding:var(--space-3) var(--space-3) calc(var(--space-5) + var(--app-floating-bottom));box-sizing:border-box;flex-direction:column;display:flex;overflow:hidden}.project-bottom-actions{padding-bottom:0}.tab-content.active{animation:.3s fadeIn;display:block}.menu-section{border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4);background:#fff;box-shadow:0 2px 8px #0000000a}#content-map .menu-section{padding:var(--space-3) var(--space-2)}.menu-section.flex-card{flex-direction:column;flex:1;margin-bottom:0;display:flex;overflow:hidden}.menu-title{color:#8898aa;margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid #f0f0f0;font-size:14px;font-weight:700}.option-row{padding:var(--space-2) 0;justify-content:space-between;align-items:center;font-size:14px;display:flex}.option-row input[type=checkbox]{appearance:none;cursor:pointer;background:#e0e0e0;border-radius:10px;width:36px;height:20px;transition:background .3s;position:relative}.option-row input[type=checkbox]:checked{background:#3b82f6}.option-row input[type=checkbox]:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .3s;position:absolute;top:2px;left:2px}.option-row input[type=checkbox]:checked:after{transform:translate(16px)}.option-row{padding:var(--space-2) 0}#content-map .map-layer-row{justify-content:flex-start;gap:6px;min-width:0;padding:8px 0}#content-map .accordion-content[id$=-options]{background:0 0!important;border-radius:0!important;margin:0!important;padding:0!important}#content-map .map-layer-row-depth-3,#user-map-list .map-layer-row-depth-3{margin-left:24px}#content-map .vworld-legend{margin-top:-2px!important;margin-bottom:8px!important;margin-left:30px!important;padding:0!important}#content-map .topic-map-groups .vworld-legend{margin-left:54px!important}#user-map-list .survey-item{gap:6px;padding:8px 0}#content-map .map-layer-toggle{color:#6b7280;cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:28px;padding:0;display:flex}#content-map .map-layer-toggle svg{fill:currentColor;width:12px;height:12px;transition:transform .15s}#content-map .map-layer-toggle.expanded svg{transform:rotate(90deg)}#content-map .map-layer-toggle.disabled{visibility:hidden;cursor:default}#content-map .map-layer-row input[type=checkbox],#content-map .map-layer-row input[type=radio],#user-map-list .map-layer-row-depth-3 input[type=checkbox]{appearance:auto;background:initial;accent-color:#3b82f6;border-radius:0;flex-shrink:0;width:16px;height:16px;margin:0}#content-map .map-layer-row input[type=checkbox]:checked{background:initial}#content-map .map-layer-row input[type=checkbox]:after,#user-map-list .map-layer-row-depth-3 input[type=checkbox]:after{content:none}#content-map .map-layer-row input[type=checkbox]:disabled{opacity:.45;cursor:default}#content-map .map-layer-style-placeholder{color:#9ca3af;box-sizing:border-box;background:#fff;border:1px solid #ddd;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex}#content-map .map-layer-style-placeholder svg{fill:currentColor;width:27px;height:27px}#content-map button.map-layer-style-placeholder{appearance:none;cursor:pointer}#content-map .map-layer-style-placeholder.group-icon{background:0 0;border-color:#0000}#content-map .map-layer-text{flex-direction:column;flex:1;justify-content:center;gap:1px;min-width:0;display:flex}#content-map .map-layer-name{color:#333;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:14px;font-weight:600;display:block;overflow:hidden}#content-map .map-layer-meta{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:400;line-height:1.2;display:block;overflow:hidden;color:#888!important;font-size:11px!important}#content-map .map-layer-row-depth-3 .map-layer-name{font-weight:400}#user-map-list .survey-name{font-size:14px;font-weight:400}#user-map-list .map-layer-row-depth-3 .survey-name{font-size:13px;font-weight:400}#user-map-list .survey-group-name{font-size:14px}#user-map-list .survey-group-icon svg,#user-map-list .style-setting-btn svg,#user-map-list .style-legend-svg{width:27px;height:27px}#user-map-list .map-layer-toggle{color:#6b7280;cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:28px;padding:0;display:flex}#user-map-list .map-layer-toggle svg{fill:currentColor;width:12px;height:12px;transition:transform .15s}#user-map-list .map-layer-toggle.expanded svg{transform:rotate(90deg)}#user-map-list .map-layer-toggle.disabled{visibility:hidden;cursor:default}.accordion-header{cursor:pointer;flex:1;align-items:center;display:flex}#content-map .menu-title.accordion-header{gap:6px;justify-content:flex-start!important}#content-map .menu-title.accordion-header.user-map-section-header{box-sizing:border-box;width:100%;justify-content:space-between!important}#content-map .user-map-section-title{flex:1;min-width:0}#content-map .user-map-section-more{flex-shrink:0;margin-left:auto}#content-map .section-toggle-triangle{color:#6b7280;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;display:flex}#content-map .section-toggle-triangle svg{fill:currentColor;width:11px;height:11px;transition:transform .15s}#content-map .menu-title.accordion-header.active .section-toggle-triangle svg{transform:rotate(90deg)}.toggle-icon,.static-icon{text-align:center;color:#666;width:14px;margin-bottom:2px;margin-right:8px;font-family:monospace;font-size:16px;display:inline-block}.toggle-icon:before{content:"+"}.accordion-header.active .toggle-icon:before,.static-icon:before{content:"-"}.accordion-content{transition:max-height .3s cubic-bezier(.25,1,.5,1);display:none;overflow:hidden}.accordion-content .option-row span{color:#666;font-size:14px}.option-row input[type=radio]{cursor:pointer;accent-color:#3b82f6;width:20px;height:20px;margin:0}.mono-btn{color:#333;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.mono-btn:active{background:#f0f0f0;transform:scale(.98)}.mono-btn svg{fill:#555;width:16px;height:16px}.mono-btn.small{border-radius:6px;padding:4px 8px;font-size:11px}.mono-btn.danger{color:#ef4444;border-color:#ef4444}.mono-btn.danger svg{fill:#ef4444}.mono-btn.circle{border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.dropdown-container{position:relative}.dropdown-menu{z-index:1000;background:#fff;border:1px solid #ddd;border-radius:8px;min-width:140px;margin-top:4px;display:none;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 4px 12px #0000001a}.dropdown-menu.visible{animation:.2s fadeIn;display:block}.dropdown-menu-title{color:#9ca3af;letter-spacing:.02em;cursor:default;padding:10px 12px 6px;font-size:11px;font-weight:700}.dropdown-item{color:#333;cursor:pointer;align-items:center;gap:8px;padding:10px 12px;font-size:13px;transition:background .2s;display:flex}.dropdown-item:active{background:#f5f5f5}.dropdown-item.danger{color:#ef4444}.dropdown-item svg{fill:currentColor;width:16px;height:16px}.survey-list-container{box-sizing:border-box;background:#fdfdfd;border:1px solid #eee;border-radius:8px;min-height:100px;margin-bottom:15px;padding:0 6px;box-shadow:inset 0 2px 4px #00000008}.survey-item{background:#fff;border-bottom:1px solid #f0f0f0;align-items:center;gap:6px;min-width:0;padding:8px 0;transition:background .2s;display:flex}.survey-item:active{background-color:#f7f9fc}.survey-group{background:#fff;border-bottom:1px solid #f0f0f0}.survey-group-header{background:#fff;align-items:center;gap:6px;min-width:0;padding:8px 0;display:flex}.survey-group-toggle,.survey-row-toggle-spacer{color:#6b7280;cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:28px;padding:0;display:flex}.survey-row-toggle-spacer{visibility:hidden;cursor:default}.survey-group-toggle svg,.survey-row-toggle-spacer svg{fill:currentColor;width:12px;height:12px;transition:transform .15s}.survey-group-toggle.expanded svg{transform:rotate(90deg)}.survey-group-icon{color:#9ca3af;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.survey-group-icon svg{fill:currentColor;width:27px;height:27px}.survey-group-name{color:#334155;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.survey-group-meta{color:#94a3b8;margin-top:1px;font-size:11px;font-weight:400}.survey-group-items{background:#fff;margin-left:24px}.survey-group-items .survey-item{border-bottom:none;margin-left:24px;padding-left:0}#user-map-list .survey-group-items>.user-map-item>.survey-item{margin-left:0}.survey-group-items .survey-row-toggle-spacer{display:none}.record-group-select-item{text-align:left;cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:44px;padding:9px 12px;display:flex}.record-group-select-item:active{background:#f8fafc}.record-group-select-icon{color:#9ca3af;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.record-group-select-icon svg{fill:currentColor;width:22px;height:22px}.record-group-select-name{color:#334155;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.survey-check-area{flex-shrink:0;justify-content:center;align-items:center;width:16px;display:flex}.survey-checkbox{cursor:pointer;accent-color:#3b82f6;width:16px;height:16px;margin:0}.survey-info{cursor:pointer;flex-direction:column;flex:1;min-width:0;display:flex}.survey-name{color:#333;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;display:block;overflow:hidden}.survey-actions{flex-shrink:0;align-items:center;display:flex}.record-label-indicator{color:#2563eb;cursor:pointer;background:0 0;border:0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;display:inline-flex}.record-label-indicator:hover,.record-label-indicator:focus-visible{background:#dbeafe}.record-label-indicator svg{width:22px;height:22px}.survey-group-items .survey-name{font-size:13px}.survey-item .style-setting-btn svg,.survey-item .style-legend-svg{width:27px;height:27px}.survey-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.action-icon-btn{cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;padding:4px;display:flex}.action-icon-btn svg{fill:currentColor;width:16px;height:16px}.color-picker-input{cursor:pointer;background:0 0;border:none;width:24px;height:26px;padding:0}.btn-del{color:#d32f2f;background:#fff0f0;border-color:#ffcdd2}.btn-save-single{color:#2e7d32;background:#e8f5e9;border-color:#c8e6c9}.btn-edit-memo-inline{cursor:pointer;color:#555;background:0 0;border:none;align-items:center;margin-left:5px;padding:0;display:flex}.btn-edit-memo-inline svg{fill:currentColor;width:14px;height:14px}.btn-group{gap:10px;margin-top:10px;display:flex}.btn-group .half-btn{cursor:pointer;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:5px;padding:12px;font-size:14px;font-weight:700;transition:transform .1s,opacity .2s;display:flex}.btn-group .half-btn:active{opacity:.9;transform:scale(.98)}.btn-import-card{color:#fff;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);box-shadow:0 4px 6px #3b82f640}.btn-save-all{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);margin-top:0;box-shadow:0 4px 6px #10b98140}.full-width-btn{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:10px;padding:14px;font-size:15px;font-weight:700;transition:transform .1s;display:flex}.btn-reset-all{color:#ef4444;background:#fff;border:1px solid #ef4444;margin-top:15px}#survey-list-area .survey-name{color:#111827}#survey-list-area .record-hidden .survey-name{color:#9ca3af}.record-visibility{color:#111827;cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:32px;padding:0;display:flex}.record-visibility svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}#record-list-controls{color:#374151;align-items:center;gap:12px;display:flex}#record-list-controls label{align-items:center;gap:4px;display:flex}#record-list-controls button{min-height:36px;color:var(--color-primary);cursor:pointer;background:0 0;border:0;font-weight:600}#more-menu [hidden]{display:none}#record-list-controls .record-all-control{cursor:pointer;flex-shrink:0;justify-content:center;width:32px;height:36px;margin:0;padding:0}#record-list-controls .record-all-control+[role=status]{margin-left:-12px}#record-more-button.selection-active{color:var(--color-primary)}#record-more-button.selection-active svg{fill:var(--color-primary)}.record-search-controls{margin-bottom:var(--space-3);flex-shrink:0;align-items:stretch;gap:6px;display:flex}.record-search-controls input{color:#111827;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;flex:1;min-width:0;height:40px;padding:0 12px;font-size:14px}.record-search-controls input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #3b82f624}.record-search-controls input[readonly]{color:#374151;background:#f8fafc}.record-search-controls button{background:var(--color-primary);color:#fff;cursor:pointer;border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex}.record-search-controls button:active{transform:scale(.97)}.record-search-controls button svg{fill:currentColor;width:20px;height:20px}.record-search-empty{text-align:center;color:#9ca3af;padding:24px 15px;font-size:12px}.nav-modal-overlay{z-index:6000;opacity:0;background:#00000080;justify-content:center;align-items:flex-end;width:100%;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.nav-modal-overlay.visible{opacity:1;transform:translateY(0)}.nav-modal-content{width:100%;max-width:500px;padding:24px 24px calc(24px + var(--app-floating-bottom));box-sizing:border-box;background:#fff;border-radius:20px 20px 0 0;transition:transform .3s cubic-bezier(.16,1,.3,1);transform:translateY(100%)}.nav-modal-overlay.visible .nav-modal-content{transform:translateY(0)}.settings-page-overlay{box-sizing:border-box;background:#f2f3f5;justify-content:stretch;align-items:stretch;padding:0}.settings-page-content{width:100%;max-width:none;height:100%;min-height:100%;max-height:none;box-shadow:none;-webkit-overflow-scrolling:touch;border-radius:0;padding:0;overflow-y:auto;transform:translate(100%)}.nav-modal-overlay.visible .settings-page-content{transform:translate(0)}.sort-modal-overlay{padding:calc(18px + env(safe-area-inset-top)) 18px calc(18px + env(safe-area-inset-bottom));box-sizing:border-box;justify-content:center;align-items:center}.sort-modal-content{border-radius:16px;width:100%;max-width:420px;padding:22px 20px 20px;transform:translateY(16px)scale(.98);box-shadow:0 18px 42px #0f172a47}.nav-modal-overlay.visible .sort-modal-content{transform:translateY(0)scale(1)}.center-modal-overlay{padding:calc(18px + env(safe-area-inset-top)) 18px calc(18px + env(safe-area-inset-bottom));box-sizing:border-box;justify-content:center;align-items:center}.center-modal-content{border-radius:16px;width:100%;max-width:420px;padding:22px 20px 20px;transform:translateY(16px)scale(.98);box-shadow:0 18px 42px #0f172a47}.center-modal-content.compact{max-width:380px}.auth-modal-content{flex-direction:column;gap:14px;display:flex}.delete-account-modal-content{max-height:calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:hidden}.auth-modal-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-modal-title{color:#111827;font-size:18px;font-weight:800}.auth-modal-close{color:#111827;cursor:pointer;background:#f3f4f6;border:none;border-radius:50%;width:36px;height:36px;font-size:20px}.auth-status-text{color:#374151;font-size:13px;font-weight:700}.auth-hint{color:#4b5563;background:#f8f9fa;border-radius:8px;min-height:34px;padding:10px 12px;font-size:12px;line-height:1.45}.auth-section{flex-direction:column;gap:14px;display:flex}.auth-section.hidden{display:none}.auth-summary{background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.auth-avatar{color:#555;background:#f0f2f5;border-radius:50%;flex:0 0 38px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.auth-avatar.signed-in{color:#2563eb;background:#eff6ff}.auth-avatar svg{fill:currentColor;width:22px;height:22px}.auth-summary-main{flex:1;min-width:0}.auth-account-email{color:#6b7280;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.auth-tier-badge{color:#374151;letter-spacing:0;text-transform:uppercase;background:#f3f4f6;border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:11px;font-weight:900;display:inline-flex}.auth-tier-badge.premium{color:#047857;background:#ecfdf5}.auth-tier-badge.admin{color:#2563eb;background:#eff6ff}.auth-card{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;padding:13px 12px}.auth-card-title{color:#111827;margin-bottom:5px;font-size:13px;font-weight:900}.auth-card-copy{color:#6b7280;margin-bottom:11px;font-size:12px;line-height:1.45}.auth-message{color:#1d4ed8;background:#eff6ff;border-radius:8px;padding:10px 12px;font-size:12px;line-height:1.45}.auth-message.hidden{display:none}.auth-message[data-type=error]{color:#b91c1c;background:#fef2f2}.auth-divider{background:#e5e7eb;height:1px}.auth-form{flex-direction:column;gap:10px;display:flex}.auth-form.hidden{display:none}.auth-form input{box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;width:100%;height:44px;padding:0 12px;font-size:15px}.auth-primary-btn,.auth-secondary-btn{cursor:pointer;border:none;border-radius:8px;width:100%;height:44px;font-size:15px;font-weight:800}.auth-primary-btn{color:#fff;background:#dc2626}.auth-primary-btn:disabled{cursor:default;background:#9ca3af}.auth-google-btn{color:#111827;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:100%;height:44px;font-size:15px;font-weight:800;display:flex}.auth-google-mark{color:#fff;background:#4285f4;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:13px;font-weight:800;line-height:1;display:inline-flex}.auth-google-btn:disabled{color:#6b7280;cursor:default;background:#f9fafb}.auth-legal-copy{color:#8a8f98;text-align:center;font-size:11px;line-height:1.45}.auth-secondary-btn{color:#111827;background:#f3f4f6}.auth-danger-btn{color:#b91c1c;cursor:pointer;background:#fef2f2;border:none;border-radius:8px;width:100%;height:44px;font-size:15px;font-weight:800}.auth-danger-btn:disabled{color:#9ca3af;cursor:default;background:#f3f4f6}.auth-delete-link{color:#9ca3af;cursor:pointer;background:0 0;border:none;align-self:center;padding:2px 6px;font-size:12px;font-weight:700}.auth-delete-link:active{color:#b91c1c}.delete-account-list{color:#4b5563;margin:0;padding-left:18px;font-size:13px;line-height:1.55}.delete-account-info-box{overscroll-behavior:contain;color:#374151;-webkit-overflow-scrolling:touch;background:#f8fafc;border-radius:12px;max-height:min(230px,34dvh);margin-bottom:0;padding:14px;font-size:13px;line-height:1.55;overflow-y:auto}.delete-account-info-box::-webkit-scrollbar{width:5px}.delete-account-info-box::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.delete-account-confirm-input{box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;width:100%;height:44px;padding:0 12px;font-size:15px}.center-modal-content.tall{max-height:min(520px, calc(100vh - 36px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));-webkit-overflow-scrolling:touch;overflow-y:auto}.nav-modal-overlay.visible .center-modal-content{transform:translateY(0)scale(1)}.sort-modal-title{color:#111;text-align:center;margin-bottom:18px;font-size:18px;font-weight:700}.sort-modal-group{margin-bottom:18px}.sort-modal-group-title{color:#555;margin-bottom:10px;font-size:14px;font-weight:700}.sort-modal-options{background:#f8f9fa;border-radius:12px;flex-direction:column;padding:4px;display:flex}.sort-modal-option{color:#333;align-items:center;padding:10px;font-size:14px;display:flex}.sort-modal-option input{margin-right:10px}.sort-modal-apply-btn{color:#666;cursor:pointer;background:#f5f5f5;border:none;border-radius:12px;width:100%;padding:14px;font-weight:700}.sort-modal-apply-btn:active{transform:scale(.99)}.settings-page-header{z-index:1;height:calc(52px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);box-sizing:border-box;background:#fff;border-bottom:1px solid #eee;grid-template-columns:48px 1fr 48px;align-items:center;display:grid;position:sticky;top:0}.settings-back-btn{color:#111;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.settings-back-btn:before{content:"";border-bottom:2.5px solid;border-left:2.5px solid;width:13px;height:13px;margin-left:6px;transform:rotate(45deg)}.settings-page-title{color:#111;text-align:center;font-size:17px;font-weight:700;line-height:1}.settings-account-row{min-height:62px}.settings-account-avatar{color:#fff;background:#7e57c2;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;font-size:15px;font-weight:500;display:flex;overflow:hidden}.settings-account-avatar.signed-in{color:#fff;background:#7e57c2}.settings-account-avatar.signed-out{color:#6b7280;background:#f0f2f5}.settings-account-avatar.has-image{background:#f0f2f5}.settings-account-avatar img{object-fit:cover;width:100%;height:100%;display:block}.settings-account-avatar svg{fill:currentColor;width:21px;height:21px}.settings-account-main{flex:1;min-width:0}.settings-account-email{color:#222;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.settings-account-status{color:#8a8f98;margin-top:3px;font-size:12px;line-height:1.35}.settings-login-help{color:#6b7280;padding:8px 18px 12px;font-size:12px;line-height:1.5;display:none}.settings-login-help.visible{display:block}.settings-account-tier-badge{color:#6b7280;letter-spacing:0;box-sizing:border-box;background:#f3f4f6;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:48px;height:24px;padding:0 8px;font-size:10px;font-weight:900;display:inline-flex}.settings-account-tier-badge.verified{color:#047857;background:#ecfdf5}.settings-account-tier-badge.premium{color:#db2777;background:#fdf2f8}.settings-account-tier-badge.admin{color:#fff;background:#111827}.account-actions-content{flex-direction:column;gap:8px;display:flex}#account-actions-modal-overlay{z-index:7000}#delete-account-modal-overlay,#verification-code-create-modal-overlay,#notice-badge-settings-modal-overlay,#api-key-settings-modal-overlay,#auth-info-modal-overlay,#admin-users-modal-overlay{z-index:7100}#admin-menu-modal-overlay{z-index:7050}.account-actions-title{color:#111827;text-align:center;margin-bottom:2px;font-size:15px;font-weight:800}.settings-row.settings-code-row,.settings-row.settings-admin-menu-row,.settings-row.settings-code-create-row,.settings-row.settings-notice-badge-row,.settings-row.settings-api-key-row,.settings-row.settings-auth-info-row,.settings-row.settings-admin-users-row{display:none}.settings-row.settings-code-row.visible,.settings-row.settings-admin-menu-row.visible,.settings-row.settings-code-create-row.visible,.settings-row.settings-notice-badge-row.visible,.settings-row.settings-api-key-row.visible,.settings-row.settings-auth-info-row.visible,.settings-row.settings-admin-users-row.visible{display:flex}.verification-code-form{flex-direction:column;gap:12px;display:flex}.verification-code-field{flex-direction:column;gap:6px;display:flex}.verification-code-label{color:#374151;font-size:12px;font-weight:800}.verification-code-input,.verification-code-textarea{box-sizing:border-box;color:#111827;width:100%;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:10px;outline:none;padding:11px 12px;font-size:14px}.verification-code-textarea{resize:vertical;min-height:74px}.verification-code-help{color:#8a8f98;font-size:11px;line-height:1.35}.verification-code-result{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:12px;display:none}.verification-code-result.visible{display:block}.verification-code-value{-webkit-user-select:all;user-select:all;color:#111827;letter-spacing:.08em;text-align:center;font-size:20px;font-weight:900;line-height:1.2}.verification-code-meta{color:#6b7280;word-break:break-word;margin-top:8px;font-size:12px;line-height:1.5}.auth-info-list{flex-direction:column;gap:10px;display:flex}.auth-info-item{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;justify-content:space-between;gap:12px;padding:12px;display:flex}.auth-info-label{color:#6b7280;flex:none;font-size:12px;font-weight:800}.auth-info-value{color:#111827;text-align:right;word-break:break-word;min-width:0;font-size:13px;font-weight:700}.admin-users-toolbar{align-items:center;gap:8px;margin-bottom:10px;display:flex}.admin-users-search{min-width:0;font:inherit;border:1px solid #d1d5db;border-radius:10px;outline:none;flex:1;padding:10px 11px;font-size:13px}.admin-users-tier-tabs{gap:6px;margin-bottom:0;padding:0 0 3px;display:flex;overflow-x:auto}.admin-users-tier-tab{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:999px;flex:none;min-height:30px;padding:6px 10px;font-size:12px;font-weight:800}.admin-users-tier-tab.active{color:#fff;background:#111827;border-color:#111827}.admin-users-tier-count{color:#6b7280;text-align:right;margin:0 1px 5px;font-size:11px;font-weight:800;line-height:1.35}.admin-users-list{flex-direction:column;gap:10px;max-height:min(56vh,440px);padding-right:2px;display:flex;overflow-y:auto}.admin-user-item{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:12px}.admin-user-top{justify-content:space-between;gap:10px;margin-bottom:10px;display:flex}.admin-user-email{color:#111827;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:800;overflow:hidden}.admin-user-tier{color:#2563eb;text-transform:uppercase;flex:none;font-size:11px;font-weight:900}.admin-user-controls{grid-template-columns:1fr 1fr auto;align-items:center;gap:8px;display:grid}.admin-user-select,.admin-user-date{color:#111827;width:100%;min-width:0;font:inherit;box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:9px;padding:9px 8px;font-size:12px}.admin-user-save{color:#fff;background:#2563eb;border:none;border-radius:9px;padding:10px 12px;font-size:12px;font-weight:800}.admin-user-save:disabled{color:#6b7280;background:#d1d5db}.settings-update-banner{box-sizing:border-box;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:14px 18px;padding:12px;display:none}.settings-update-banner.visible{display:flex}.settings-update-banner-title{color:#1d4ed8;font-size:13px;font-weight:800;line-height:1.35}.settings-update-banner-meta{color:#64748b;margin-top:2px;font-size:11px;line-height:1.4}.settings-update-banner-btn{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:6px;flex:none;min-width:74px;height:34px;font-size:12px;font-weight:800}.settings-update-banner-btn:active{transform:scale(.98)}#btn-settings.has-update,#btn-settings.has-api-key-warning{position:relative}#btn-settings.has-update:after{content:"";background:#2563eb;border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:7px;box-shadow:0 0 0 2px #fff}#btn-settings.has-api-key-warning:after{content:"";background:#dc2626;border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:7px;box-shadow:0 0 0 2px #fff}.admin-api-key-warning{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:12px 18px;padding:11px 12px;font-size:12px;font-weight:800;line-height:1.45;display:none}.admin-api-key-warning.visible{display:block}.settings-section{background:#fff;border-bottom:10px solid #f2f3f5}.settings-section:last-child{padding-bottom:calc(14px + env(safe-area-inset-bottom));border-bottom:0}.settings-row{box-sizing:border-box;border-bottom:1px solid #eee;justify-content:space-between;align-items:center;gap:12px;min-height:52px;margin:0 18px;padding:11px 0;display:flex}.settings-row:last-child{border-bottom:0}.settings-app-download-card{display:none}.settings-app-download-card.visible{cursor:pointer;box-sizing:border-box;background:#f0f7ff;border:1px solid #b8d9ff;border-radius:8px;flex-direction:column;gap:10px;margin:14px 18px 16px;padding:14px;display:flex;box-shadow:0 2px 8px #1683e91f}.settings-app-download-copy{min-width:0}.settings-app-download-title{color:#095fae;font-size:15px;font-weight:800;line-height:1.35}.settings-app-download-meta{color:#4b6b8a;word-break:keep-all;margin-top:3px;font-size:12px;line-height:1.45}.settings-app-download-btn{color:#fff;background:#1683e9;border-radius:6px;justify-content:center;align-items:center;height:38px;font-size:14px;font-weight:800;display:flex}.settings-row-stacked{flex-direction:column;align-items:stretch;gap:9px}.settings-label{color:#222;font-size:14px;font-weight:600;line-height:1.35}.settings-help{color:#8a8f98;margin-top:2px;font-size:11px;line-height:1.45}.settings-choice-group{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.settings-choice{flex:none;position:relative}.settings-choice input{opacity:0;pointer-events:none;position:absolute}.settings-choice span{color:#5d6673;box-sizing:border-box;background:#fff;border:1px solid #d9dde3;border-radius:15px;justify-content:center;align-items:center;min-width:45px;height:30px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.settings-choice input:checked+span{color:#0b7fe8;background:#eef7ff;border-color:#1683e9}.settings-value{color:#0b7fe8;white-space:nowrap;font-size:14px;font-weight:700}.settings-row-action{flex:none;align-items:center;gap:10px;display:inline-flex}.settings-chevron{border-top:2px solid #0b7fe8;border-right:2px solid #0b7fe8;flex:none;width:9px;height:9px;transform:rotate(45deg)}.settings-toggle{box-sizing:border-box;background:#bdc3cc;border-radius:12px;flex:none;width:42px;height:24px;padding:2px;transition:background .2s;display:inline-flex;position:relative}.settings-toggle:has(input[value=true]:checked){background:#0b7fe8}.settings-toggle label{z-index:1;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.settings-toggle:has(input[value=false]:checked) label:has(input[value=true]){z-index:2}.settings-toggle:has(input[value=true]:checked) label:has(input[value=false]){z-index:2}.settings-toggle input{opacity:0;pointer-events:none;position:absolute}.settings-toggle-thumb{pointer-events:none;background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 2px 5px #0f172a33}.settings-toggle:has(input[value=true]:checked) .settings-toggle-thumb{transform:translate(18px)}.settings-version-row{align-items:center;min-height:76px}.settings-link-row{cursor:pointer}.settings-link-row:active{background:#f7f8fa}.settings-version-meta{color:#8a8f98;margin-top:5px;font-size:12px;line-height:1.45}.settings-update-btn{color:#9aa0a8;cursor:pointer;background:#eef0f3;border:0;border-radius:4px;min-width:68px;height:34px;padding:0 10px;font-size:12px;font-weight:700}.settings-update-btn.has-update{color:#fff;background:#0b7fe8}.settings-update-btn:active{transform:scale(.98)}#settings-choice-modal-overlay{z-index:7060}.settings-choice-modal-content{width:min(340px,100vw - 36px);max-height:min(560px, calc(100vh - 36px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));flex-direction:column;padding:18px 18px 12px;display:flex;overflow:hidden}.settings-choice-modal-title{color:#1f2933;margin-bottom:12px;font-size:17px;font-weight:800}.settings-choice-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;min-height:0;display:flex;overflow-y:auto}.settings-choice-option{color:#27313d;cursor:pointer;border-bottom:1px solid #edf0f3;align-items:center;gap:12px;min-height:48px;font-size:14px;font-weight:650;display:flex}.settings-choice-option:last-child{border-bottom:0}.settings-choice-option input{accent-color:#1683e9;flex:none;width:18px;height:18px}.settings-choice-option-copy{flex-direction:column;gap:3px;min-width:0;padding:10px 0;display:flex}.settings-choice-option-label{color:inherit;line-height:1.35}.settings-choice-option-example{color:var(--ui-secondary,#7b8794);overflow-wrap:anywhere;font-size:11px;font-weight:500;line-height:1.45}.nav-app-list{justify-content:space-around;margin-bottom:20px;display:flex}.nav-app-item{cursor:pointer;flex-direction:column;align-items:center;width:80px;display:flex}.nav-app-icon{color:#fff;border-radius:12px;justify-content:center;align-items:center;width:50px;height:50px;margin-bottom:8px;font-weight:700;display:flex;box-shadow:0 4px 6px #0000001a}.nav-icon-tmap{background:linear-gradient(135deg,#ff0054 0%,#e6004c 100%)}.nav-icon-naver{background:#07c860}.nav-icon-kakao{color:#191919;background:#fee500}.nav-icon-google{color:#4285f4;background:#fff;border:1px solid #ddd}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.leaflet-control-scale{bottom:calc(18px + env(safe-area-inset-bottom))!important;z-index:990!important;background:0 0!important;border:none!important;margin:0!important;position:fixed!important;left:15px!important}.scale-zoom-control{cursor:pointer;outline:none}.scale-zoom-menu{box-sizing:border-box;z-index:1200;background:#fffffff5;border:1px solid #1118271f;border-radius:8px;width:84px;max-height:min(58vh,430px);padding:6px;display:none;position:absolute;bottom:calc(100% + 8px);left:0;overflow-y:auto;box-shadow:0 12px 28px #0f172a2e}.scale-zoom-control.menu-open .scale-zoom-menu{flex-direction:column;gap:2px;display:flex}.scale-zoom-menu-item{color:#111827;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;min-height:28px;padding:5px 7px;font-size:13px;font-weight:800;display:block}.scale-zoom-menu-item.active{color:#111827;background:#e5e7eb}.scale-zoom-menu-item:active,.scale-zoom-menu-item:hover{background:#f3f4f6}.leaflet-control-scale-line{text-align:center;-webkit-text-stroke:2.5px white;paint-order:stroke fill;text-shadow:-2px 0 #fff,2px 0 #fff,0 -2px #fff,0 2px #fff,-1px -1px #fff,1px -1px #fff,-1px 1px #fff,1px 1px #fff,-1px 0 #fff,1px 0 #fff,0 -1px #fff,0 1px #fff;min-width:60px;line-height:1.4;display:block;position:relative;box-shadow:none!important;color:#111!important;background:0 0!important;border:none!important;margin:0!important;padding:0 0 6px!important;font-size:13px!important;font-weight:700!important;overflow:visible!important}.leaflet-control-scale-line:after{content:"";filter:drop-shadow(-1px 0 #fff)drop-shadow(1px 0 #fff)drop-shadow(0 -1px #fff)drop-shadow(0 1px #fff);border:2.5px solid #000;border-top:none;height:7px;display:block;position:absolute;bottom:0;left:0;right:0}.leaflet-draw-toolbar{display:none!important}.cadastral-layer{filter:invert()}.cadastral-continuous-layer{filter:invert()saturate(.7)hue-rotate(180deg)}.cityroad-layer{filter:drop-shadow(0 0 1px #ff00004d)drop-shadow(0 0 1px #ff00004d)}.vworld-legend{color:#555;background:0 0;border-radius:8px;margin:-4px 0 8px;padding:0;font-size:12px;line-height:1.4}.vworld-legend-item{margin-bottom:-4px;position:relative;overflow:hidden}.vworld-legend-item img{max-width:100%;height:auto;margin-top:-13px;display:block}.popup-btn{cursor:pointer;color:#333;background:#f8f9fa;border:1px solid #ddd;border-radius:20px;padding:10px 12px;font-size:13px}body.recording-mode:after{content:"";pointer-events:none;z-index:10000;border:0 solid #0064ff4d;position:fixed;inset:0;box-shadow:inset 0 0 30px #0064ff80}.btn-more{cursor:pointer;color:#888;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;margin-left:5px;transition:background .2s;display:flex}.btn-more:hover{color:#333;background-color:#f0f0f0}.btn-more:active{background-color:#e0e0e0}.btn-more svg{fill:currentColor;width:20px;height:20px}.more-context-menu{z-index:9999;opacity:0;transform-origin:100% 0;background:#fff;border:1px solid #ddd;border-radius:8px;flex-direction:column;min-width:140px;transition:opacity .1s ease-out,transform .1s ease-out;display:none;position:fixed;overflow:hidden;transform:scale(.95);box-shadow:0 4px 12px #0000001a}.more-context-menu.visible{opacity:1;transform:scale(1)}.more-menu-item{color:#333;cursor:pointer;align-items:center;gap:8px;padding:10px 12px;font-size:13px;transition:background .2s;display:flex}.more-menu-item:hover{background-color:#f5f5f5}.more-menu-item:active{background:#f5f5f5}.more-menu-item.disabled{color:#b0b7c3;cursor:default;pointer-events:none}.more-menu-item.disabled svg{color:#b0b7c3;fill:currentColor}.more-menu-item.danger{color:#ef4444}.more-menu-item.danger svg{fill:#ef4444}.more-menu-item svg{fill:currentColor;width:16px;height:16px}.sidebar-warning{color:#999;margin-top:15px;padding:0 5px;font-size:11px;line-height:1.4}.sidebar-warning p{word-break:keep-all;margin:5px 0}.sidebar-warning ul{margin:5px 0;padding:0;list-style:none}.sidebar-warning li{word-break:keep-all;margin-bottom:4px;padding-left:12px;position:relative}.sidebar-warning li:before{content:"※";position:absolute;top:0;left:0}.photo-container{white-space:nowrap;-webkit-overflow-scrolling:touch;gap:8px;margin-top:5px;padding:5px 0;display:flex;overflow-x:auto}.photo-thumbnail-wrapper{flex:none;width:60px;height:60px;position:relative}.photo-thumbnail{object-fit:cover;cursor:pointer;border:1px solid #ddd;border-radius:4px;width:100%;height:100%}.btn-delete-photo{color:#fff;cursor:pointer;z-index:10;background:#f00c;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:12px;display:flex;position:absolute;top:-5px;right:-5px}#photo-modal{z-index:9999;box-sizing:border-box;opacity:0;background-color:#000000f2;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:70px 0 12px;transition:opacity .3s;display:none;position:fixed;top:0;left:0}body.is-native-app #photo-modal{padding-top:calc(70px + max(env(safe-area-inset-top), 18px));padding-bottom:calc(12px + env(safe-area-inset-bottom))}#photo-modal.visible{opacity:1}.photo-modal-header{z-index:10001;align-items:center;gap:16px;display:flex;position:absolute;top:18px;left:16px;right:16px}.photo-modal-context{text-align:left;flex:auto;min-width:0}#photo-modal-project-name,#photo-modal-record-name{text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 4px #000000e6;overflow:hidden}#photo-modal-project-name{color:#ffffffb8;font-size:11px;line-height:1.3}#photo-modal-record-name{color:#fff;margin-top:2px;font-size:14px;font-weight:700;line-height:1.35}body.is-native-app .photo-modal-header{top:calc(18px + max(env(safe-area-inset-top), 18px))}#photo-modal-filename{color:#ffffffe6;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 4px #000000e6;max-width:calc(100% - 32px);min-height:19px;margin-top:7px;font-size:12px;font-weight:600;line-height:1.4;overflow:hidden}.photo-modal-content{touch-action:pan-y;flex:auto;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative}#photo-modal-img{object-fit:contain;opacity:1;will-change:transform, opacity;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:4px;max-width:100%;max-height:100%;transform:translate(0,0)}#photo-modal-thumbnails{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#ffffff59 transparent;align-items:center;gap:7px;width:min(100%,900px);min-height:66px;margin-top:7px;padding:4px 12px;display:flex;overflow:auto hidden}.photo-modal-thumbnail-btn{cursor:pointer;box-sizing:border-box;opacity:.62;background:#ffffff1f;border:2px solid #0000;border-radius:7px;flex:0 0 58px;width:58px;height:58px;padding:2px;transition:border-color .15s,opacity .15s,transform .15s}.photo-modal-thumbnail-btn.active{opacity:1;border-color:#3b82f6;transform:translateY(-2px)}.photo-modal-thumbnail-btn img{object-fit:cover;border-radius:4px;width:100%;height:100%;display:block}.photo-modal-controls{flex:none;gap:12px;display:flex}#photo-modal-download,#photo-modal-close{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:5px;display:flex}#photo-modal-download svg,#photo-modal-close svg{fill:#fff;filter:drop-shadow(0 0 3px #000c);width:30px;height:30px}#photo-modal-download:hover,#photo-modal-close:hover{opacity:.8;transition:transform .2s;transform:scale(1.1)}#photo-counter{color:#fff;letter-spacing:1px;text-shadow:0 0 3px #000c;min-height:18px;margin-top:2px;font-size:14px;font-weight:300}.modal-overlay{z-index:10000;opacity:0;background-color:#0009;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .2s;display:none;position:fixed;top:0;left:0}.modal-overlay.visible{opacity:1}.modal-container{padding:var(--space-4);border-radius:var(--radius-lg);z-index:10001;gap:var(--space-3);opacity:0;background:#fff;flex-direction:column;width:85%;max-width:340px;transition:transform .2s,opacity .2s;display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(.9);box-shadow:0 10px 30px #0003}.modal-container.visible{opacity:1;transform:translate(-50%,-50%)scale(1)}.modal-btn{width:100%;min-height:var(--tap-min);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);border:none;font-size:15px;font-weight:600;transition:transform .1s,background-color .2s;display:flex}.modal-btn:active{transform:scale(.98)}.modal-btn.primary{color:#fff;background-color:#3b82f6;box-shadow:0 4px 10px #3b82f64d}.modal-btn.secondary{color:#333;background-color:#f3f4f6}.modal-btn.cancel{color:#666;border:1px solid var(--color-border);background-color:#fff;margin-top:0}.modal-title{text-align:center;color:#111;margin-bottom:var(--space-1);font-size:18px;font-weight:700}.app-dialog-overlay{top:var(--app-dialog-viewport-top,0px);left:var(--app-dialog-viewport-left,0px);width:var(--app-dialog-viewport-width,100vw);height:var(--app-dialog-viewport-height,100dvh);z-index:20000;box-sizing:border-box;opacity:0;background:#0f172a7a;justify-content:center;align-items:center;padding:20px;transition:opacity .16s;display:none;position:fixed;bottom:auto;right:auto}.app-dialog-overlay.visible{opacity:1}.app-dialog{width:min(360px,100%);max-height:calc(var(--app-dialog-viewport-height,100dvh) - 32px);box-sizing:border-box;background:#fff;border-radius:12px;padding:18px;transition:transform .16s;overflow:auto;transform:translateY(8px)scale(.98);box-shadow:0 18px 44px #0f172a47}.app-dialog-overlay.visible .app-dialog{transform:translateY(0)scale(1)}.app-dialog-title{color:#111827;margin-bottom:10px;font-size:17px;font-weight:800}.app-dialog-message{color:#374151;word-break:keep-all;font-size:14px;line-height:1.55}.app-dialog-input{box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;width:100%;min-height:44px;margin-top:12px;padding:0 12px;font-size:15px;display:none}.app-dialog-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.app-dialog-btn{border:0;border-radius:8px;min-width:76px;height:42px;font-size:14px;font-weight:700}.app-dialog-btn.primary{color:#fff;background:#2563eb}.app-dialog-btn.secondary{color:#374151;background:#fff;border:1px solid #d1d5db}#bottom-sheet{z-index:4000;width:100%;max-width:500px;padding:0 var(--space-3) calc(var(--space-4) + var(--app-floating-bottom));box-sizing:border-box;-webkit-overflow-scrolling:touch;background:#fff;border-top-left-radius:16px;border-top-right-radius:16px;max-height:72vh;transition:transform .3s cubic-bezier(.25,1,.5,1);position:fixed;bottom:0;left:50%;overflow-y:auto;transform:translate(-50%,100%);box-shadow:0 -2px 10px #0000001a}#bottom-sheet.open{transform:translate(-50%)}#bottom-sheet-handle{width:40px;height:4px;margin:var(--space-2) auto var(--space-2);cursor:grab;background:#e0e0e0;border-radius:2px;flex-shrink:0}#bottom-sheet-handle:active{cursor:grabbing}#bottom-sheet-header{display:none}#bottom-sheet-more-btn{top:var(--space-2);right:calc(var(--space-3) + 36px);z-index:10;color:#666;cursor:pointer;background:#f0f0f0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:background .2s;display:flex;position:absolute}#bottom-sheet-more-btn:active{background:#ddd}#bottom-sheet-more-btn svg{fill:currentColor;width:16px;height:16px}#bottom-sheet-close{top:var(--space-2);right:var(--space-3);z-index:10;color:#666;cursor:pointer;background:#f0f0f0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;transition:background .2s;display:flex;position:absolute}#bottom-sheet-close:active{background:#ddd}#bottom-sheet-body{max-width:500px;margin:0 auto}.bottom-sheet-extra{opacity:0;pointer-events:none;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.25,1,.5,1),opacity .3s ease-out;display:grid}.bottom-sheet-extra .extra-inner{overflow:hidden}#bottom-sheet.full-open .bottom-sheet-extra{opacity:1;pointer-events:auto;grid-template-rows:1fr}@supports (-webkit-touch-callout:none){#bottom-sheet{padding-bottom:max(18px, env(safe-area-inset-bottom))}.nav-modal-content{padding-bottom:max(24px, env(safe-area-inset-bottom))}@media (display-mode:standalone){.record-fab{bottom:18px}}}.color-palette{flex-direction:column;align-items:stretch;gap:6px;margin-bottom:12px;display:flex}.palette-basic-row,.palette-basic-swatches{align-items:center;gap:2px;display:flex}.palette-basic-row{justify-content:flex-start}.palette-basic-swatches{min-width:0}.palette-grid{border-radius:6px;grid-template-columns:repeat(13,1fr);gap:0;display:none;overflow:hidden}.color-palette.expanded .palette-grid{display:grid}.color-circle{cursor:pointer;border:1px solid #00000029;border-radius:0;justify-content:center;align-items:center;width:19px;height:19px;transition:transform .1s;display:flex}.palette-basic-row .color-circle{aspect-ratio:1;width:100%;height:auto}.palette-basic-swatches{flex:1;grid-template-columns:repeat(12,1fr);min-width:0;max-width:calc(100% - 30px);display:grid}.palette-grid .color-circle{aspect-ratio:1;border:0;width:100%;height:auto}.palette-grid-spacer{aspect-ratio:1;background:0 0;width:100%}.color-circle.selected{border-width:2px;border-color:#333;transform:scale(1.1);box-shadow:0 0 4px #0003}.palette-expand-btn{color:#7c3aed;cursor:pointer;background:#fff;border:2px solid #22c55e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-left:8px;padding:0;font-size:18px;font-weight:800;line-height:1;display:flex}.palette-color-view-btn{color:#333;text-align:center;box-sizing:border-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#e5e5e5;border:0;border-radius:4px;width:100%;height:36px;font-size:13px;line-height:36px;display:none}#style-modal .color-palette{max-width:452px;margin-left:auto;margin-right:auto}#style-modal{max-height:calc(100dvh - 96px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-y:auto}#style-modal::-webkit-scrollbar{width:5px}#style-modal::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.style-modal-actions{gap:8px;margin-top:16px;display:flex}.style-modal-actions button{border:none;border-radius:10px;flex:1;padding:12px;font-size:14px;font-weight:700}.style-modal-cancel-btn{color:#666;background:#f5f5f5}.style-modal-apply-btn{color:#fff;background:#3b82f6}.color-palette.expanded .palette-color-view-btn{display:block}.color-picker-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.transparent-btn{color:#333;background:repeating-linear-gradient(45deg,#fff,#fff 5px,#fbcfe8 5px 10px);border:1px solid #ccc;border-radius:14px;width:auto;padding:0 8px;font-size:12px;font-weight:700}.style-choice-group{gap:8px;margin-bottom:12px;display:flex}.style-btn{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;flex:1;padding:8px;font-size:13px}.style-btn.selected{background:#eff6ff;border-width:1.5px;border-color:#3b82f6;font-weight:700}.style-tile-invert-row{color:#333;box-sizing:border-box;border:1px solid #e5e7eb;border-radius:8px;justify-content:space-between;align-items:center;min-height:38px;padding:0 10px;font-size:13px;font-weight:600;display:flex}.style-tile-invert-row input{accent-color:#3b82f6;width:18px;height:18px}.tile-color-adjust-list{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.tile-color-adjust-row{color:#374151;grid-template-columns:42px minmax(0,1fr) 34px;align-items:center;gap:8px;font-size:13px;font-weight:600;display:grid}.tile-color-adjust-row input{accent-color:#9ca3af;min-width:0}.tile-color-adjust-row input[type=range]{appearance:none;background:0 0;height:22px}.tile-color-adjust-row input[type=range]::-webkit-slider-runnable-track{background:#d1d5db;border-radius:999px;height:4px}.tile-color-adjust-row input[type=range]::-webkit-slider-thumb{appearance:none;background:#3b82f6;border:1px solid #2563eb;border-radius:50%;width:18px;height:18px;margin-top:-7px;box-shadow:0 1px 2px #0f172a2e}.tile-color-adjust-row input[type=range]::-moz-range-track{background:#d1d5db;border-radius:999px;height:4px}.tile-color-adjust-row input[type=range]::-moz-range-progress{background:#d1d5db;border-radius:999px;height:4px}.tile-color-adjust-row input[type=range]::-moz-range-thumb{background:#3b82f6;border:1px solid #2563eb;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 2px #0f172a2e}.tile-color-adjust-row strong{color:#111827;text-align:right;font-size:12px}.style-tile-reset-btn{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;min-height:36px;font-size:13px;font-weight:700}.line-style-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.line-style-btn.line-style-advanced{display:none}.line-style-grid.expanded .line-style-btn.line-style-advanced{display:flex}.line-style-btn{justify-content:center;align-items:center;min-height:38px;padding:6px 10px;display:flex}.line-style-btn svg{width:100%;height:22px;display:block}.line-style-more-btn{width:100%;min-height:34px;margin-top:8px}.line-style-more-btn .collapse-label,.line-style-more-btn.expanded .expand-label{display:none}.line-style-more-btn.expanded .collapse-label{display:inline}.fill-pattern-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:10px;display:grid}.fill-pattern-btn.fill-pattern-advanced{display:none}.fill-pattern-grid.expanded .fill-pattern-btn.fill-pattern-advanced{display:flex}.fill-pattern-btn{justify-content:center;align-items:center;min-height:38px;padding:6px 10px;display:flex}.fill-pattern-more-btn{width:100%;min-height:34px;margin-top:8px}.fill-pattern-more-btn .collapse-label,.fill-pattern-more-btn.expanded .expand-label{display:none}.fill-pattern-more-btn.expanded .collapse-label{display:inline}.fill-pattern-btn svg{width:100%;height:24px;display:block}@media (width>=520px){.line-style-grid,.fill-pattern-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.style-modal-tabs{background:#fff;border-bottom:1px solid #eee;margin:-4px 0 14px;display:none}.style-tab-btn{color:#8898aa;cursor:pointer;background:0 0;border:none;flex:1;padding:11px 0;font-size:14px;font-weight:600;position:relative}.style-tab-btn.selected{color:#3b82f6;font-weight:800}.style-tab-btn.selected:after{content:"";background:#3b82f6;border-radius:3px 3px 0 0;width:100%;height:3px;position:absolute;bottom:0;left:0}.emoji-palette{flex-wrap:wrap;gap:8px;max-height:none;margin-bottom:12px;padding-right:2px;display:flex;overflow:visible}.emoji-btn{cursor:pointer;color:#333;background:#fff;border:1px solid #ddd;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:4px;font-size:20px;display:flex}.emoji-btn svg{fill:currentColor;width:25px;height:25px}.emoji-btn span{line-height:1}.emoji-btn.selected{background:#eff6ff;border-width:1.5px;border-color:#3b82f6}.marker-emoji-btn{display:none}.emoji-palette.expanded .marker-emoji-btn{display:flex}.marker-emoji-more-btn{width:100%;min-height:34px;margin-top:-4px}.marker-emoji-more-btn .collapse-label,.marker-emoji-more-btn.expanded .expand-label{display:none}.marker-emoji-more-btn.expanded .collapse-label{display:inline}.setting-group{margin-bottom:12px}.setting-group .setting-title{color:#555;margin-bottom:8px;font-size:13px;font-weight:700}#map-active-project-badge{top:calc(env(safe-area-inset-top) + var(--space-3));z-index:1700;color:#374151;pointer-events:auto;cursor:pointer;background:#ffffffe6;border:1px solid #e5e7ebe6;border-radius:999px;align-items:center;gap:6px;max-width:54%;padding:7px 14px;font-size:12px;font-weight:700;transition:left .3s cubic-bezier(.25,1,.5,1);display:none;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 3px 8px #0f172a2e}#map-active-project-badge svg{fill:#3b82f6;flex-shrink:0;width:13px;height:13px}#map-active-project-badge span{white-space:nowrap;text-overflow:ellipsis;text-align:center;min-width:0;overflow:hidden}.location-summary{gap:var(--space-1);margin-bottom:var(--space-4);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--color-muted-bg);border:1px solid var(--color-border);flex-direction:column;display:flex}.location-summary-row{justify-content:center;align-items:center;min-width:0;display:flex}#address-display,#coord-display{color:#333;text-align:center;word-break:keep-all;overflow-wrap:anywhere;min-width:0;font-size:13px;line-height:1.45}#coord-display{color:#555;font-family:monospace}.style-switch-row{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex;position:relative}.setting-group .style-switch-row .setting-title{margin-bottom:0}.style-switch-input{opacity:0;cursor:pointer;z-index:1;width:44px;height:44px;margin:0;position:absolute;right:0}.style-switch-track{background:#9ca3af;border-radius:13px;flex:0 0 44px;height:26px;transition:background-color .15s;position:relative}.style-switch-track:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.style-switch-input:checked+.style-switch-track{background:#3b82f6}.style-switch-input:checked+.style-switch-track:after{transform:translate(18px)}.style-switch-input:focus-visible+.style-switch-track{outline-offset:3px;outline:2px solid #2563eb}.style-choice-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:10px;margin:8px 0;overflow:hidden}.style-choice-dropdown summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:44px;padding:0 12px;font-size:14px;list-style:none;display:flex}.style-choice-dropdown summary::-webkit-details-marker{display:none}.style-choice-dropdown summary svg{fill:none;stroke:#6b7280;stroke-width:2px;width:18px;height:18px}.style-choice-dropdown[open] summary svg{transform:rotate(180deg)}.style-choice-options{border-top:1px solid #e5e7eb;gap:2px;padding:4px;display:grid}.style-choice-options button{text-align:left;color:#374151;cursor:pointer;background:#fff;border:0;border-radius:6px;min-height:44px;padding:0 12px;font-size:14px}.style-choice-options button[aria-pressed=true]{color:var(--color-primary);background:#eff6ff;font-weight:600}.style-choice-options button[aria-pressed=true]:after{content:"✓";float:right}.style-choice-options button:hover{background:#f3f4f6}.style-choice-dropdown summary:focus-visible,.style-choice-options button:focus-visible{outline:2px solid var(--color-primary);outline-offset:-3px}.style-preview-options{max-height:280px;overflow-y:auto}.style-preview-options .style-btn,.style-preview-options .style-btn.line-style-advanced,.style-preview-options .style-btn.fill-pattern-advanced{text-align:left;justify-content:flex-start;align-items:center;gap:12px;width:100%;height:auto;min-height:44px;display:flex}.style-preview-options .style-btn svg,.style-choice-current svg{flex-shrink:0;width:80px!important;height:24px!important}.style-choice-current{align-items:center;gap:12px;display:flex}.style-preview-options button[aria-pressed=true]:after{margin-left:auto}.style-choice-dropdown summary .style-choice-current svg{stroke:none;transform:none}#style-modal .setting-group{margin-bottom:20px}:root{--color-primary:#2563eb;--sidebar-docked-width:416px;--sidebar-rail-width:64px;--ui-surface:#fff;--ui-background:#f5f7fb;--ui-ink:#16243a;--ui-navy:#182c4b;--ui-action:#182c4b;--ui-secondary:#728098;--ui-border:#e8edf4;--ui-selected:#eef4ff}.ui-icon{fill:none;vertical-align:middle;flex-shrink:0;width:21px;height:21px}button:focus-visible,[role=button]:focus-visible{outline-offset:2px;outline:3px solid #93b4fa}.sidebar-content{width:100%;max-width:var(--sidebar-docked-width);box-sizing:border-box;padding-left:var(--sidebar-rail-width);background:var(--ui-surface);color:var(--ui-ink)}.sidebar-rail{width:var(--sidebar-rail-width);padding:env(safe-area-inset-top) 6px max(14px, env(safe-area-inset-bottom));box-sizing:border-box;background:var(--ui-background);border-right:1px solid var(--ui-border);flex-direction:column;align-items:center;display:flex;position:absolute;inset:0 auto 0 0}.sidebar-rail-back{flex-shrink:0;justify-content:center;align-items:center;width:100%;height:64px;display:flex}.sidebar-rail-back .btn-sidebar-action{width:40px;height:40px;color:var(--ui-navy);border-radius:12px}.sidebar-tabs{background:0 0;border:0;flex-direction:column;gap:8px;width:100%;padding-top:10px;display:flex}.sidebar-tabs .tab-btn,.sidebar-utilities .btn-sidebar-action{box-sizing:border-box;width:100%;min-height:59px;color:var(--ui-secondary);background:0 0;border:0;border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:6px;padding:10px 0;font-size:11px;font-weight:500;line-height:1.25;display:flex}.sidebar-tabs .tab-btn.active{background:var(--ui-action);color:#fff;font-weight:600;box-shadow:0 3px 8px #142c3c1a}.sidebar-tabs .tab-btn.active:after{display:none}.sidebar-tabs .ui-icon,.sidebar-utilities .ui-icon,.sidebar-utilities .svg-icon{width:22px;height:22px}.sidebar-utilities .svg-icon{fill:none;stroke:currentColor}.sidebar-utilities{border-top:1px solid var(--ui-border);flex-direction:column;gap:3px;width:100%;margin-top:auto;padding-top:12px;display:flex}.sidebar-utilities .notice-badge-dot{top:5px;right:9px}.sidebar-header{background:var(--ui-surface);border-bottom:1px solid var(--ui-border);flex-shrink:0;justify-content:flex-start;gap:13px;height:64px;padding:0 16px}.sidebar-header .btn-sidebar-action{background:var(--ui-background);color:var(--ui-secondary);border-radius:9px;flex-shrink:0}#sidebar-panel-title{color:var(--ui-navy);letter-spacing:-.6px;margin:0;font-size:18px;font-weight:700}.sidebar-body{min-height:0}#content-map.active{padding:5px 16px max(26px, env(safe-area-inset-bottom))}#content-map .menu-section{box-shadow:none;border:0;border-bottom:1px solid var(--ui-border);background:0 0;border-radius:0;margin:0;padding:19px 0 20px}#content-map .menu-title{color:var(--ui-navy);letter-spacing:-.65px;font-size:17px;font-weight:750;border-bottom:0!important;margin-bottom:14px!important;padding-bottom:0!important}#content-map .section-toggle-triangle{color:var(--ui-secondary)}#content-map .map-layer-row{box-sizing:border-box;border-radius:9px;gap:8px;min-height:44px;padding:8px 4px}#content-map .map-layer-row:has(.map-layer-meta){min-height:57px}#content-map .map-layer-row:has(input:checked){background:0 0}#content-map .map-layer-toggle{width:14px;color:var(--ui-secondary)}#content-map .map-layer-style-placeholder{background:var(--ui-surface);border:1px solid var(--ui-border);width:28px;height:30px;color:var(--color-primary);border-radius:7px;box-shadow:0 2px 3px #122c4b08}#content-map .map-layer-style-placeholder svg{width:20px;height:20px}#content-map .map-layer-style-placeholder.group-icon{box-shadow:none;color:var(--ui-secondary);background:0 0;border:0}#content-map .map-layer-name{color:var(--ui-ink);letter-spacing:-.3px;font-size:14px;font-weight:600}#content-map .map-layer-text{gap:4px}#content-map .map-layer-meta{letter-spacing:.1px;color:var(--ui-secondary)!important}#content-map .map-layer-row input{accent-color:var(--color-primary)}#content-map .topic-map-groups>.map-layer-row{border-bottom:1px solid var(--ui-border);border-radius:0;min-height:45px;padding-top:7px;padding-bottom:7px}#content-map .topic-map-groups .map-layer-name{font-size:14px;font-weight:600}#content-record.active,#content-project.active{padding:16px 16px max(16px, env(safe-area-inset-bottom));background:var(--ui-surface)}#current-project-banner{box-shadow:0 3px 9px #152b4c18;background:var(--ui-action)!important;border:0!important;border-radius:12px!important;padding:13px 12px!important}#current-project-banner svg{fill:#fff!important}#current-project-name{color:#fff!important;font-size:14px!important}#survey-list-area{border:1px solid var(--ui-border);box-shadow:none;border-radius:14px}#survey-list-area .survey-item{border-bottom-color:var(--ui-border)}.record-search-controls{gap:8px;margin-top:12px}.record-search-controls input{background:var(--ui-background);border-color:#0000;border-radius:10px}.record-search-controls button{background:var(--ui-action);border-radius:10px}#record-search-button svg{flex-shrink:0;margin:0;display:block}.mono-btn{border-color:var(--ui-border);border-radius:10px;box-shadow:0 2px 3px #142c3c05}.sidebar-warning{color:var(--ui-secondary);line-height:1.65}.map-control-btn,.circle-btn{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-ink);border-radius:13px;box-shadow:0 3px 10px #10243c17}#map-active-project-badge{border-color:var(--ui-border);background:var(--ui-surface);color:var(--ui-ink);border-radius:10px;box-shadow:0 3px 10px #10243c17}#bottom-sheet{background:var(--ui-surface);border:1px solid var(--ui-border);padding-left:18px;padding-right:18px;padding-bottom:var(--app-floating-bottom);color:var(--ui-ink);scrollbar-width:thin;scrollbar-color:var(--ui-border) transparent;border-bottom:0;border-radius:24px 24px 0 0;max-height:72dvh;box-shadow:0 -8px 30px #142c3c20}#bottom-sheet-handle{background:#dce3ed;border:0;border-radius:3px;width:34px;height:4px;margin:8px auto 12px;padding:0;display:block}#bottom-sheet-handle:before{content:"";width:46px;height:20px;display:block;position:relative;top:-8px;left:-6px}#bottom-sheet-more-btn,#bottom-sheet-close{background:var(--ui-background);width:30px;height:30px;color:var(--ui-secondary);border-radius:9px;top:24px}#bottom-sheet-close{right:17px}#bottom-sheet-more-btn{right:52px}#bottom-sheet-more-menu{box-sizing:border-box;border:1px solid var(--ui-border);border-radius:12px;width:180px;max-width:calc(100vw - 16px);max-height:min(350px,48dvh);overflow-y:auto;box-shadow:0 7px 24px #142c3c24}.sheet-record-heading{border-bottom:1px solid var(--ui-border);align-items:center;gap:9px;min-height:36px;margin-bottom:12px;padding-bottom:7px;padding-right:69px;display:flex}.sheet-type-icon{background:var(--ui-selected);width:36px;height:36px;color:var(--color-primary);border-radius:11px;flex-shrink:0;place-items:center;display:grid}.sheet-type-icon svg{width:20px;height:20px}.sheet-title-wrap{min-width:0}.sheet-title-line{align-items:center;gap:6px;display:flex}.sheet-record-title{color:var(--ui-navy);letter-spacing:-.5px;overflow-wrap:anywhere;font-size:17px;font-weight:700;line-height:1.35}.sheet-rename{color:var(--ui-secondary);cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;padding:3px;display:grid}.sheet-rename .ui-icon{width:14px;height:14px}.sheet-record-kind{color:var(--ui-secondary);margin-top:3px;font-size:11px;display:block}.sheet-info-row{color:var(--ui-ink);overflow-wrap:anywhere;align-items:baseline;gap:10px;margin-bottom:13px;font-size:13px;line-height:1.65;display:flex}.sheet-badge,#bottom-sheet .badge-parcel,#bottom-sheet .badge-coord,#bottom-sheet .badge-road{text-align:center;background:var(--ui-background);width:35px;color:var(--ui-secondary);border-radius:5px;flex-shrink:0;padding:3px 5px;font-size:10px;line-height:1.5;display:inline-block}.sheet-metric{border-bottom:1px solid var(--ui-border);grid-template-columns:45px minmax(0,1fr);align-items:start;column-gap:10px;margin-bottom:14px;padding:3px 0 16px;display:grid}.sheet-metric>.badge-area,.sheet-metric>.badge-length{text-align:center;background:var(--ui-background);width:35px;color:var(--ui-secondary);border-radius:5px;margin-bottom:8px;padding:3px 5px;font-size:10px;line-height:1.5;display:inline-block}.sheet-metric-value{font-variant-numeric:tabular-nums;letter-spacing:-1px;color:var(--ui-navy);overflow-wrap:anywhere;font-size:30px;font-weight:650;line-height:1.2}.sheet-metric-value .sheet-unit{letter-spacing:0;color:var(--ui-secondary);margin-left:4px;font-size:14px;font-weight:500}.sheet-metric-values{flex-wrap:wrap;align-items:baseline;gap:6px 14px;display:flex}.sheet-metric-secondary{white-space:nowrap;color:var(--ui-secondary);font-size:13px}.sheet-vertex-distance-toggle{border:1px solid var(--ui-border);background:var(--ui-background);min-height:30px;color:var(--ui-secondary);white-space:nowrap;border-radius:8px;margin-left:auto;padding:4px 9px;font-size:11px;font-weight:700}.sheet-vertex-distance-toggle.active{border-color:var(--color-primary);background:var(--ui-selected);color:var(--color-primary)}.sheet-memo{background:var(--ui-background);border:1px solid var(--ui-border);white-space:pre-wrap;color:var(--ui-ink);overflow-wrap:anywhere;border-radius:10px;margin:0 0 13px;padding:12px 13px;font-size:13px;line-height:1.7}#bottom-sheet .popup-btn{box-sizing:border-box;border-radius:9px;min-height:42px;font-size:12px}.sheet-record-actions{gap:8px!important;margin-top:10px!important}#bottom-sheet .sheet-record-actions .popup-btn{justify-content:center;align-items:center;display:flex;background:var(--ui-surface)!important;color:var(--ui-ink)!important;border:1px solid var(--ui-border)!important;gap:6px!important}#bottom-sheet .sheet-record-actions .ui-icon{width:16px;height:16px;color:var(--ui-secondary)}.sheet-expand{color:var(--ui-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;width:100%;padding:12px 0 0;font-size:11px;display:flex}.sheet-expand .ui-icon{width:14px;height:14px;transform:rotate(180deg)}#bottom-sheet.full-open .sheet-expand .ui-icon{transform:none}.sheet-expand .when-expanded{display:none}#bottom-sheet.full-open .sheet-expand .when-expanded{display:inline}#bottom-sheet.full-open .sheet-expand .when-collapsed{display:none}.sheet-location-heading{letter-spacing:-.5px;color:var(--ui-navy);overflow-wrap:anywhere;border:0;margin-bottom:0;padding:0;font-size:17px;font-weight:650;line-height:1.5}.sheet-location-heading button{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.sheet-location-primary{border-top:1px solid var(--ui-border);grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:7px;padding-top:12px;display:grid}#bottom-sheet .sheet-location-primary .popup-btn{background:var(--ui-background);color:var(--ui-ink);border:1px solid var(--ui-border);white-space:nowrap;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px 0;font-size:11px;display:flex}.sheet-location-primary .ui-icon{width:18px;height:18px;color:var(--ui-secondary)}.sheet-location-secondary{grid-template-columns:1fr 1fr;gap:7px;margin-top:9px;display:grid}#bottom-sheet .sheet-location-secondary .popup-btn{border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-ink);padding:11px 5px}#bottom-sheet .sheet-location-secondary .popup-btn:last-child{background:var(--ui-action);color:#fff;border-color:var(--ui-navy)}#bottom-sheet .popup-btn:disabled,#bottom-sheet .popup-btn.disabled{opacity:.45}@media (width<416px){#content-record.active,#content-project.active,#content-map.active{padding-left:12px;padding-right:12px}}@media (width<=380px){.project-bottom-actions .mono-btn,#content-record .mono-btn{word-break:keep-all;gap:5px;padding-left:5px!important;padding-right:5px!important;font-size:11px!important}.sheet-record-title{font-size:15px}.sheet-metric-value{font-size:27px}}@media (width>=832px){.sidebar-content{width:var(--sidebar-docked-width);max-width:var(--sidebar-docked-width);border-radius:0 20px 20px 0}}.map-control-btn .ui-icon,.circle-btn .ui-icon{width:21px;height:21px}#tracking-svg-icon{width:21px;height:21px;color:var(--ui-ink)}.tracking-active #tracking-svg-icon{color:#2563eb;fill:currentColor}.tracking-btn-on{border:2px solid #2563eb!important}#project-list-area .project-card{border:1px solid var(--ui-border)!important;border-radius:14px!important;padding:12px 14px!important}#project-list-area .project-card.is-current{box-shadow:inset 3px 0 var(--color-primary);background:var(--ui-selected)!important;border-color:#cddcf8!important}#project-list-area .project-card>div:first-child{border-radius:10px!important}#section-user-map>.mono-btn{background:var(--ui-background)!important;color:var(--ui-ink)!important;border:1px dashed var(--ui-border)!important;border-radius:10px!important}.settings-page-overlay{background:var(--ui-background)}.settings-page-header{background:var(--ui-action);color:#fff;border-bottom:0}.settings-page-title,.settings-back-btn{color:#fff}.settings-section{border:1px solid var(--ui-border);background:var(--ui-surface);border-radius:14px;margin:12px;overflow:hidden}.settings-section:last-child{border-bottom:1px solid var(--ui-border);margin-bottom:max(14px, env(safe-area-inset-bottom))}.settings-row{border-color:var(--ui-border);min-height:58px;padding:14px 0}@media (prefers-reduced-motion:reduce){.sidebar-content,#map,#bottom-sheet,.map-top-left{transition:none}}#content-map .map-layer-row .map-layer-name,#user-map-list .survey-item .survey-name,#user-map-list .map-layer-row-depth-3 .survey-name,#user-map-list .survey-group-name{font-size:14px;font-weight:600;line-height:1.5}.layer-visibility{width:22px;height:32px;color:var(--color-primary);vertical-align:middle;border-radius:6px;flex:0 0 22px;justify-content:center;align-items:center;display:inline-flex;position:relative}#content-map .layer-visibility>input[type]{opacity:0;z-index:1;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.visibility-artwork{pointer-events:none;align-items:center;display:flex}.visibility-artwork .ui-icon{width:20px;height:20px;display:block}.visibility-artwork .eye-on,.visibility-artwork .eye-mixed{display:none}.visibility-artwork .eye-off{color:var(--ui-secondary);display:block}.layer-visibility>input:checked~.visibility-artwork .eye-on{display:block}.layer-visibility>input:checked~.visibility-artwork .eye-off,.layer-visibility>input:indeterminate~.visibility-artwork .eye-on,.layer-visibility>input:indeterminate~.visibility-artwork .eye-off{display:none}.layer-visibility>input:indeterminate~.visibility-artwork .eye-mixed{display:block}.layer-visibility:focus-within{outline:2px solid var(--color-primary);outline-offset:2px}.layer-visibility:has(input:disabled){opacity:.4}.record-visibility{color:var(--color-primary)}.record-visibility[aria-pressed=false]{color:var(--ui-secondary)}.record-visibility .ui-icon{flex-shrink:0;width:20px;height:20px}#search-container{border:1px solid var(--ui-border);background:var(--ui-surface);box-sizing:border-box;border-radius:16px;padding:14px;box-shadow:0 12px 36px #182c4b26}.search-tabs{background:var(--ui-background);border:0;border-radius:10px;gap:3px;margin-bottom:12px;padding:4px}.search-tab-btn{min-height:36px;color:var(--ui-secondary);border:0;border-radius:7px;padding:6px;font-size:12px;font-weight:600}.search-tab-btn.active{background:var(--ui-surface);color:var(--ui-navy);border:0;box-shadow:0 1px 4px #182c4b12}.search-tab-btn.active:after{display:none}#search-container input:not([type=checkbox]){box-sizing:border-box;border:1px solid var(--ui-border);background:var(--ui-background);min-width:0;min-height:44px;color:var(--ui-ink);border-radius:10px;padding:10px;font-size:16px}#search-container input:not([type=checkbox]):focus{outline-offset:0;border-color:var(--color-primary);outline:2px solid #b6cdf7}#search-go-btn,#search-go-btn-national,#search-go-btn-coord{background:var(--ui-action);color:#fff;border:0;border-radius:10px;min-width:52px;min-height:44px;font-weight:600}.coord-search-help{color:var(--ui-secondary);line-height:1.6}#history-panel{border-color:var(--ui-border);border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #182c4b1a}.history-header{background:var(--ui-background);color:var(--ui-secondary)}.record-fab-main,.record-fab-main.is-recording{background:#2563eb;border:0;border-radius:18px;width:56px;height:56px;font-size:32px;box-shadow:0 5px 18px #10254f55}.record-fab.expanded .record-fab-main{background:var(--ui-action);color:#fff}.record-fab-main:focus-visible{outline-offset:3px;outline:3px solid #93b4ff}.record-fab-group{box-sizing:border-box;border:1px solid var(--ui-border);background:#fff;border-radius:16px;width:190px;padding:6px;box-shadow:0 6px 24px #182c4b29}.record-fab-group .bottom-btn{min-height:48px;color:var(--ui-ink);border-radius:10px;gap:12px;padding:0 10px;font-size:14px}.record-fab-group .bottom-btn:hover{background:var(--ui-background)}.record-fab-group .icon-box{background:var(--ui-background);border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}#location-action-modal-overlay .nav-modal-content,#style-modal{border:1px solid var(--ui-border);background:var(--ui-surface);border-radius:24px 24px 0 0;box-shadow:0 -8px 40px #182c4b1a}#location-action-modal-overlay .nav-modal-header,#style-modal .nav-modal-header{color:var(--ui-navy);letter-spacing:-.4px;text-align:left!important;margin-bottom:18px!important;font-size:18px!important;font-weight:650!important}#location-action-modal-overlay .location-summary{border:1px solid var(--ui-border);background:var(--ui-background);border-radius:14px;margin-bottom:16px;padding:16px}#location-action-modal-overlay #address-display{color:var(--ui-ink);font-size:15px;font-weight:600;line-height:1.6}#location-action-modal-overlay #coord-display{color:var(--ui-secondary);font-variant-numeric:tabular-nums;font-size:13px;line-height:1.6}#location-action-modal-overlay .mono-btn{border:1px solid var(--ui-border);min-height:46px;color:var(--ui-ink);background:#fff;border-radius:10px;padding:10px 5px!important;font-size:12px!important}#location-action-modal-overlay .mono-btn:last-child{background:var(--ui-action);color:#fff;border-color:var(--ui-navy)}#location-action-modal-overlay .nav-modal-content>button:last-child{background:var(--ui-background)!important;color:var(--ui-secondary)!important;border-radius:10px!important}#user-map-modal-overlay>div,#user-map-representative-field-modal-overlay>div{border:1px solid var(--ui-border);box-sizing:border-box;color:var(--ui-ink);box-shadow:0 16px 60px #182c4b33;border-radius:20px!important;padding:22px!important}#user-map-modal-title{color:var(--ui-navy);letter-spacing:-.4px;font-size:18px!important}#user-map-modal-close,#user-map-representative-field-close{background:var(--ui-background)!important;color:var(--ui-secondary)!important;border-radius:10px!important}#user-map-form label>span{color:var(--ui-secondary);font-size:12px!important}#user-map-form input:not([type=checkbox]),#user-map-form textarea,#user-map-form select,#user-map-representative-field-btn{color:var(--ui-ink);box-sizing:border-box;min-height:44px;border:1px solid var(--ui-border)!important;background:var(--ui-background)!important;border-radius:10px!important;font-size:16px!important}#user-map-form input:focus,#user-map-form textarea:focus,#user-map-form select:focus{outline-offset:0;outline:2px solid #b6cdf7}#user-map-save-btn{background:var(--ui-action)!important;border-radius:10px!important}#user-map-cancel-btn{background:var(--ui-background)!important;color:var(--ui-secondary)!important;border-radius:10px!important}#user-map-action-panel{border:1px solid var(--ui-border);max-height:calc(100dvh - 24px);border-radius:14px!important;padding:4px!important;overflow-y:auto!important;box-shadow:0 10px 32px #182c4b29!important}#user-map-action-panel .more-menu-item{box-sizing:border-box;border-radius:8px;min-height:36px;margin:0;padding:7px 12px;line-height:20px}#style-modal .style-modal-tabs{background:var(--ui-background);border:0;border-radius:11px;gap:4px;padding:4px}#style-modal .style-tab-btn{color:var(--ui-secondary);border:0;border-radius:8px;min-height:40px;font-size:14px}#style-modal .style-tab-btn.selected{color:var(--ui-navy);background:#fff;box-shadow:0 1px 4px #182c4b12}#style-modal .style-tab-btn.selected:after{display:none}#style-modal .setting-group{border-color:var(--ui-border)}#style-modal .setting-title{color:var(--ui-ink);font-size:14px;font-weight:600}#style-modal .color-palette{background:var(--ui-background);border-radius:12px;padding:9px}#style-modal .color-circle{border-radius:4px}#style-modal .palette-grid .color-circle{border-radius:0}#style-modal .color-circle.selected{outline:2px solid var(--ui-navy);outline-offset:1px;border-color:#fff}#style-modal .palette-expand-btn{color:var(--ui-navy);background:#fff;border:1px solid #ccd5e2;border-radius:6px}#style-modal .palette-color-view-btn{border-color:var(--ui-border);color:var(--ui-navy);border-radius:8px}#style-modal .style-choice-dropdown{border-color:var(--ui-border);border-radius:12px}#style-modal .style-choice-dropdown summary{background:var(--ui-background)}#style-modal .style-choice-options button{border-radius:8px}#style-modal .style-choice-options button[aria-pressed=true]{background:var(--ui-selected)}#style-modal input[type=range]{accent-color:var(--color-primary)}#style-modal .style-modal-actions{border-top:1px solid var(--ui-border);z-index:2;background:#fff;padding:12px 0 0;position:sticky;bottom:0}#style-modal .style-modal-actions button{min-height:46px;font-weight:600}#style-modal .style-modal-cancel-btn,#style-modal .style-tile-reset-btn{background:var(--ui-background);color:var(--ui-secondary)}#style-modal .style-modal-apply-btn{background:var(--ui-action)}#style-modal{flex-direction:column;display:flex;overflow:hidden}#style-modal>.nav-modal-header{flex-shrink:0}#style-modal .style-modal-scroll-body{overscroll-behavior:contain;scrollbar-width:thin;flex:auto;min-height:0;padding:2px 2px 0;overflow-y:auto}#style-modal .style-modal-actions{background:var(--ui-surface);flex-shrink:0;position:static}#style-modal :is(.emoji-btn,.style-btn,.style-choice-dropdown){box-sizing:border-box;border:1px solid var(--ui-border);background:var(--ui-background);color:var(--ui-ink);border-radius:9px}#style-modal .emoji-btn{width:40px;height:40px;padding:5px}#style-modal .style-choice-dropdown summary{min-height:40px}#style-modal .style-choice-options button{box-sizing:border-box;min-height:40px;color:var(--ui-ink);background:var(--ui-background);border:1px solid #0000;border-radius:9px}#style-modal :is(.emoji-btn.selected,.style-btn.selected,.style-choice-options button[aria-pressed=true]){border:1px solid var(--color-primary);background:var(--ui-selected);color:var(--color-primary)}#style-modal :is(.emoji-btn,.style-btn):focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}#content-map .layer-visibility>input[type]:disabled{opacity:0;cursor:default}#record-list-controls #record-visibility-all{color:var(--color-primary)}#record-list-controls #record-visibility-all[aria-pressed=false]{color:var(--ui-secondary)}#content-map .layer-visibility,#content-map .layer-visibility span{color:var(--color-primary)}#content-map .layer-visibility .eye-off{color:var(--ui-secondary)}#user-map-form input[type=file]{font-size:13px!important}#user-map-form input[type=file]::file-selector-button{color:var(--ui-navy);font:inherit;cursor:pointer;background:#e7edf6;border:0;border-radius:6px;margin-right:8px;padding:7px 10px;font-weight:600}.sidebar-footer-actions{flex-shrink:0;gap:4px;display:grid}.project-bottom-actions.sidebar-footer-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.record-bottom-actions.sidebar-footer-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-footer-actions .mono-btn{min-width:0;min-height:64px;box-shadow:none;color:var(--ui-secondary);white-space:nowrap;background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:10px 2px;font-size:11px;font-weight:500;line-height:1.3;display:flex}.sidebar-footer-actions .mono-btn svg{fill:currentColor;width:22px;height:22px;margin:0}.sidebar-footer-actions .mono-btn:hover,.sidebar-footer-actions .mono-btn:active{background:var(--ui-selected);color:var(--color-primary)}.sidebar-footer-actions .mono-btn.danger{color:#dc454f}.action-toolbar{width:min(340px,100vw - 100px);right:84px}#content-map.active,#content-project.active,#content-record.active{box-sizing:border-box;flex-direction:column;flex:1;height:100%;min-height:0;display:flex;overflow:hidden}#content-map .map-list-scroll{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}#content-map>.sidebar-warning,#content-project>.sidebar-warning,#content-record>.sidebar-warning,#record-search-controls{flex-shrink:0}#project-list-area,#survey-list-area{overscroll-behavior-y:contain}#sidebar-panel-title{align-items:center;gap:9px;display:flex}#sidebar-panel-title .ui-icon{width:22px;height:22px}.sidebar-info{flex-shrink:0;margin-top:4px;position:relative}.sidebar-info>summary{width:fit-content;color:var(--ui-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:4px;margin-left:auto;padding:5px 6px;font-size:11px;line-height:18px;list-style:none;display:flex}.sidebar-info>summary::-webkit-details-marker{display:none}.sidebar-info>summary svg{width:14px;height:14px}.sidebar-info>summary:hover,.sidebar-info[open]>summary{background:var(--ui-background)}.sidebar-info>summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sidebar-info-popover.sidebar-warning{z-index:30;box-sizing:border-box;background:var(--ui-surface);border:1px solid var(--ui-border);width:min(300px,100%);color:var(--ui-secondary);border-radius:10px;margin:0;padding:10px 12px;font-size:11px;line-height:1.6;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 4px 16px #10243c20}.sidebar-info-popover ul{margin:0}#personal-api-key-row{text-align:left;width:calc(100% - 36px);font:inherit;color:var(--ui-ink);background:0 0;border:0}#personal-api-key-row .settings-label,#personal-api-key-row .settings-help{display:block}.personal-api-dialog{width:min(460px,100vw - 28px);max-height:calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom));box-sizing:border-box;border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-ink);border-radius:18px;padding:22px;overflow-y:auto}.personal-api-dialog::backdrop{background:#07132180}.personal-api-dialog h2{margin:0 0 18px;font-size:18px}.personal-api-option{border:1px solid var(--ui-border);cursor:pointer;border-radius:10px;margin:8px 0;padding:12px;display:block}.personal-api-option:has(input:checked){background:var(--ui-selected);border-color:var(--color-primary)}.personal-api-option small{color:var(--ui-secondary);margin:6px 0 0 24px;font-size:11px;display:block}#personal-api-fields{margin-top:14px;font-size:13px}#personal-api-input{box-sizing:border-box;border:1px solid var(--ui-border);background:var(--ui-background);width:100%;color:var(--ui-ink);border-radius:8px;margin:7px 0;padding:11px}.personal-api-dialog button{cursor:pointer;border:1px solid var(--ui-border);background:var(--ui-background);color:var(--ui-ink);border-radius:8px;padding:9px 12px}.personal-api-tools{justify-content:flex-start;align-items:center;gap:10px;display:flex}#personal-api-check{flex-shrink:0}.personal-api-input-wrap{position:relative}.personal-api-input-wrap #personal-api-input{padding-right:44px}#personal-api-reveal{width:36px;height:36px;color:var(--ui-secondary);background:0 0;border:0;place-items:center;padding:8px;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}#personal-api-reveal svg{width:20px;height:20px}#personal-api-copy-status{bottom:calc(24px + env(safe-area-inset-bottom));box-sizing:border-box;color:#fff;pointer-events:none;background:#182c4b;border-radius:10px;width:max-content;max-width:calc(100vw - 48px);padding:10px 16px;font-size:13px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0003}#personal-api-copy-status:empty{display:none}.personal-api-dialog details{margin-top:14px;font-size:12px;line-height:1.65}.personal-api-dialog summary{cursor:pointer;font-weight:600}.personal-api-dialog details p,.personal-api-dialog ol{color:var(--ui-secondary)}.personal-api-dialog a{color:var(--color-primary)}#personal-api-status{flex:1;min-width:0;margin:0;font-size:12px;line-height:1.5}.personal-api-actions{gap:8px;margin-top:20px;display:flex}.personal-api-actions button{flex:1;min-height:42px}#personal-api-apply{background:var(--ui-action);color:#fff}#personal-api-copy-url{color:var(--color-primary);font:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:2px 0;display:inline-flex}.personal-api-dialog details ul{color:var(--ui-secondary)}.user-map-category-field-btn{white-space:normal;overflow-wrap:anywhere;min-width:0}.user-map-category-field-btn>div{min-width:0;max-width:100%}.user-map-label-field{overflow-wrap:anywhere;color:inherit;cursor:pointer}.leaflet-tooltip.draw-segment-distance{box-shadow:none;color:#ff2020;white-space:nowrap;pointer-events:none;background:#fff;border:1px solid #ff2020;border-radius:2px;padding:1px 2px;font-size:12px;font-weight:400;line-height:1.2}.leaflet-tooltip-top.draw-segment-distance:before{background:#fff;border:1px solid #ff2020;border-top:0;border-left:0;width:6px;height:6px;margin:0;display:block;bottom:-4px;left:50%;transform:translate(-50%)rotate(45deg)}.leaflet-draw-tooltip .live-draw-measurement{color:#f8d5e4;font-weight:700}#style-modal .style-choice-popup{box-sizing:border-box;border:1px solid var(--ui-border);background:var(--ui-surface);width:min(340px,100vw - 40px);max-height:calc(100dvh - 48px);color:var(--ui-ink);border-radius:16px;padding:14px;box-shadow:0 16px 48px #0003}#style-modal .style-choice-popup::backdrop{background:#0005}#style-modal .style-choice-popup-header{justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;font-size:14px;display:flex}#style-modal .style-choice-popup-header button{background:var(--ui-background);width:30px;height:30px;color:var(--ui-secondary);cursor:pointer;border:0;border-radius:50%;font-size:22px}#style-modal .style-choice-popup .style-choice-options{overscroll-behavior:contain;max-height:min(320px,100dvh - 132px);overflow-y:auto}#style-live-preview{border:1px solid var(--ui-border);background:var(--ui-background);border-radius:12px;justify-content:center;align-items:center;min-height:86px;margin-bottom:16px;display:flex}#style-live-preview[hidden]{display:none}#style-live-preview>svg{width:240px;max-width:100%;height:82px}#style-modal #style-marker-choices{grid-template-columns:repeat(9,minmax(0,1fr)) 24px;align-items:center;gap:4px;display:grid}#style-modal #style-marker-choices>.emoji-btn{box-sizing:border-box;width:100%;min-width:0;height:36px;padding:2px}#style-modal #style-marker-choices>.emoji-btn svg{width:100%;max-width:25px}#style-modal .marker-extra-grid{grid-column:1/-1;min-width:0;margin-top:4px;display:none}#style-modal #style-marker-choices.expanded .marker-extra-grid{grid-template-columns:repeat(auto-fill,minmax(32px,1fr));gap:5px;display:grid}#style-modal .marker-extra-grid .emoji-btn{width:100%;height:36px;padding:3px}#style-modal #style-marker-emoji-more-btn{align-self:center;width:24px;min-width:24px;height:24px;min-height:24px;margin:0;padding:0}#style-modal #style-marker-emoji-more-btn.expanded{color:var(--color-primary);background:var(--ui-selected)}#record-label-modal .label-settings-dialog{color:var(--ui-ink);box-shadow:0 20px 70px #0003;background:var(--ui-surface)!important;border-radius:20px!important;width:min(440px,100vw - 24px)!important;max-height:calc(100dvh - 32px)!important;padding:20px!important}#record-label-modal #record-label-title{color:var(--ui-ink)!important;font-size:18px!important}#record-label-modal .label-count{color:var(--ui-secondary)!important;margin-bottom:12px!important}.label-preview-panel{border:1px solid var(--ui-border);background:var(--ui-background);border-radius:12px;margin-bottom:18px;position:relative;overflow:hidden}#record-label-modal .label-preview{white-space:pre-wrap}.label-preview-caption{color:var(--ui-secondary);padding:10px 12px 0;font-size:10px;display:block}#record-label-modal .label-preview{box-sizing:border-box;background:0 0;border:0;border-radius:0;min-height:62px;padding:12px 16px;margin:0!important}.label-settings-section{border-bottom:1px solid var(--ui-border);margin:0 0 14px;padding:0 0 14px}.label-settings-section h3{color:var(--ui-ink);margin:0 0 10px;font-size:12px;font-weight:750}#record-label-modal .label-settings-section label{min-width:0;margin-bottom:8px!important}#record-label-modal .label-settings-section label>span{color:var(--ui-secondary)!important;font-size:11px!important}#record-label-modal .label-settings-section :is(select,textarea,.user-map-label-field){color:var(--ui-ink);border-color:var(--ui-border)!important;background:var(--ui-background)!important;border-radius:9px!important;min-height:38px!important;font-size:13px!important}#record-label-modal .label-settings-section textarea{min-height:68px!important}.label-style-grid{gap:12px!important;margin-bottom:2px!important}.label-color-swatch{align-items:center;gap:8px;min-height:38px;display:flex}#record-label-modal .label-color-swatch input[type=color]{cursor:pointer;flex-shrink:0;border-color:var(--ui-border)!important;background:var(--ui-background)!important;border-radius:8px!important;width:32px!important;height:32px!important;padding:3px!important}.label-color-value{color:var(--ui-secondary);font-variant-numeric:tabular-nums;font-size:11px}.label-shape-row{align-items:center;gap:12px;display:flex;margin:2px 0 0!important}.label-shape-row>span{color:var(--ui-secondary)!important;margin:0!important;font-size:11px!important}.label-shape-row>div{gap:6px!important;display:flex!important}#record-label-modal .label-shape-row .record-label-toggle{border-color:var(--ui-border);width:38px;min-height:34px;color:var(--ui-ink);background:var(--ui-background);border-radius:8px;position:relative;margin:0!important}.label-shape-row .record-label-toggle input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}#record-label-modal .record-label-toggle:has(input:checked){background:var(--ui-selected);border-color:var(--color-primary)}#record-label-modal .record-label-toggle:has(input:focus-visible){outline:2px solid var(--color-primary);outline-offset:2px}#record-label-modal .record-label-toggle .label-bold-glyph{font-weight:800;color:inherit!important;font-size:16px!important}#record-label-modal .record-label-toggle .label-italic-glyph{font-family:Georgia,serif;font-style:italic;color:inherit!important;font-size:17px!important}.label-settings-help{color:var(--ui-secondary)!important;font-size:10px!important;line-height:1.5!important}.label-settings-footer{background:var(--ui-surface);border-top:1px solid var(--ui-border);margin:0 -20px -20px;padding:10px 20px 18px;position:sticky;bottom:-20px}.label-secondary-actions{justify-content:space-between;margin-bottom:10px;display:flex}#record-label-modal .label-secondary-actions button{cursor:pointer;border-radius:8px;padding:6px 12px;border:1px solid var(--ui-border)!important;background:var(--ui-background)!important;flex:none!important;min-height:34px!important;font-size:12px!important}#record-label-modal .label-secondary-actions .label-default{color:var(--ui-secondary)!important}#record-label-modal .label-secondary-actions .label-disable{color:#d54b64!important}#record-label-modal .label-primary-actions{margin-top:0!important}#record-label-modal .label-primary-actions button{border-radius:10px!important;min-height:42px!important;font-size:13px!important}#record-label-modal .label-primary-actions .label-cancel{background:var(--ui-background)!important;color:var(--ui-secondary)!important;flex:1!important}#record-label-modal .label-primary-actions button[type=submit]{flex:1!important}#record-label-modal .label-dropdown{border:1px solid var(--ui-border);background:var(--ui-background);color:var(--ui-ink);border-radius:9px;margin-top:6px;font-size:13px;overflow:hidden}#record-label-modal .label-dropdown-trigger{width:100%;min-height:38px;color:inherit;font:inherit;text-align:left;cursor:pointer;box-sizing:border-box;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;display:flex}#record-label-modal .label-dropdown-trigger:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;flex-shrink:0;width:6px;height:6px;margin-right:3px;transform:rotate(45deg)}#record-label-modal .label-choice-popup{box-sizing:border-box;border:1px solid var(--ui-border);background:var(--ui-surface);width:min(300px,100vw - 40px);max-height:calc(100dvh - 48px);color:var(--ui-ink);border-radius:16px;padding:14px;box-shadow:0 16px 48px #0003}#record-label-modal .label-choice-popup::backdrop{background:#0005}#record-label-modal .label-choice-header{justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;font-size:14px;display:flex}#record-label-modal .label-choice-header button{background:var(--ui-background);width:30px;height:30px;color:var(--ui-secondary);cursor:pointer;border:0;border-radius:50%;font-size:22px}#record-label-modal .label-dropdown-options{overscroll-behavior:contain;border-top:1px solid var(--ui-border);flex-direction:column;max-height:min(320px,100dvh - 132px);padding:4px;display:flex;overflow-y:auto}#record-label-modal .label-dropdown-options button{min-height:34px;color:var(--ui-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;padding:7px 8px}#record-label-modal .label-dropdown-options button:hover,#record-label-modal .label-dropdown-options button[aria-pressed=true]{background:var(--ui-selected);color:var(--color-primary)}#record-label-modal :is(.label-dropdown-trigger,.label-choice-popup button):focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}#settings-appearance-row{text-align:left;width:calc(100% - 36px);font:inherit;background:0 0;border:0}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ui-surface:#172235;--ui-background:#101a29;--ui-ink:#e4ebf5;--ui-navy:#edf3ff;--ui-action:#2d64c8;--ui-secondary:#a6b4c9;--ui-border:#2b3b51;--ui-selected:#213754;--color-primary:#8ab8ff;--color-border:#2b3b51;--color-panel:#172235;--color-muted-bg:#101a29}html[data-theme=dark] body{background:var(--ui-background);color:var(--ui-ink)}html[data-theme=dark] :is(.nav-modal-content,.settings-page-content,.app-dialog,.dropdown-menu,.more-context-menu,.record-group-select-item,.auth-card,.auth-summary,.auth-hint,.delete-account-info-box,#history-panel,#record-group-context-menu,#user-map-action-panel,#user-map-modal-overlay>div,#user-map-representative-field-modal-overlay>div,#user-map-category-modal-overlay>div){color:var(--ui-ink);background:var(--ui-surface)!important;border-color:var(--ui-border)!important}html[data-theme=dark] :is(.settings-page-overlay,.settings-page-content){background:var(--ui-background)!important}html[data-theme=dark] :is(.settings-page-header,.settings-section,.settings-row,.setting-group,.settings-choice-option,.survey-item,.survey-group-header,.dropdown-item,.more-menu-item,.app-dialog-actions,.auth-card,.auth-summary,.auth-divider,.sort-modal-option){border-color:var(--ui-border)}html[data-theme=dark] :is(.settings-label,.settings-value,.settings-account-email,.settings-choice-modal-title,.settings-choice-option,.settings-version-title,.sort-modal-title,.sort-modal-group-title,.nav-modal-header,.app-dialog-title,.app-dialog-message,.auth-modal-title,.auth-account-email,.auth-card-title,.auth-card-copy,.auth-status-text,.dropdown-item,.more-menu-item,.survey-group-name,.record-group-select-name){color:var(--ui-ink)!important}html[data-theme=dark] :is(.settings-help,.settings-login-help,.settings-account-status,.settings-version-meta,.auth-hint,.auth-legal-copy,.sort-modal-option,.record-search-empty,.survey-group-meta,.history-header,.history-item,.coord-search-help){color:var(--ui-secondary)}html[data-theme=dark] :is(.settings-back-btn,.settings-page-title){color:#fff}html[data-theme=dark] .settings-chevron{border-color:currentColor}html[data-theme=dark] :is(.dropdown-item:hover,.more-menu-item:hover,.record-group-select-item:hover,.settings-choice-option:hover,.history-item:hover){background:var(--ui-selected)}html[data-theme=dark] :is(.app-dialog-input,.auth-form input,.delete-account-confirm-input,.nav-modal-content input:not([type=range]):not([type=checkbox]):not([type=radio]):not([type=color]),.nav-modal-content textarea,.nav-modal-content select){background:var(--ui-background)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important}html[data-theme=dark] :is(input,textarea)::placeholder{color:#8f9fb6}html[data-theme=dark] :is(.app-dialog-btn,.auth-secondary-btn,.auth-google-btn,.auth-modal-close,.settings-update-btn:not(.has-update)){background:var(--ui-selected);color:var(--ui-ink);border-color:var(--ui-border)}html[data-theme=dark] :is(.app-dialog-btn.primary,.auth-primary-btn,.sort-modal-apply-btn){background:var(--ui-action);color:#fff}html[data-theme=dark] :is(#record-list-controls,#survey-list-area .survey-name,#survey-list-area .survey-group-name,.action-icon-btn,.btn-more,.btn-edit-memo-inline){color:var(--ui-ink)}html[data-theme=dark] :is(#survey-list-area .record-hidden .survey-name,.record-visibility[aria-pressed=false]){color:#8f9fb6}html[data-theme=dark] :is(.survey-item,.survey-group-header,.survey-group-items,#survey-list-area,.record-fab-group,.sidebar-rail-back .btn-sidebar-action),html[data-theme=dark] :is(#style-modal .style-tab-btn.selected,#style-modal .style-modal-actions,#style-modal .style-choice-options button,#style-modal .palette-expand-btn,.search-tab-btn.active,#location-action-modal-overlay .mono-btn,#history-panel){background:var(--ui-surface)}html[data-theme=dark] :is(#style-modal .style-choice-options button,#style-modal .palette-expand-btn,.history-item){color:var(--ui-ink)}html[data-theme=dark] #style-modal .style-choice-options button[aria-pressed=true]{background:var(--ui-selected);color:var(--color-primary)}html[data-theme=dark] #location-action-modal-overlay .mono-btn:last-child{background:var(--ui-action);color:#fff}html[data-theme=dark] #style-modal .style-modal-actions{border-color:var(--ui-border)}html[data-theme=dark] #style-modal .style-modal-apply-btn{color:#fff}html[data-theme=dark] #map-active-project-badge{color:var(--ui-ink)}html[data-theme=dark] :is(.action-toolbar,.track-toolbar,.action-toolbar-main,.action-toolbar-sub),html[data-theme=dark] .action-btn{background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-border)}html[data-theme=dark] .settings-choice-option input{accent-color:var(--color-primary)}html[data-theme=dark] .settings-choice-option-example{color:var(--ui-secondary)}html[data-theme=dark] :is(.nav-modal-content,.app-dialog,#user-map-modal-overlay,#user-map-action-panel,#user-map-representative-field-modal-overlay,#user-map-category-modal-overlay) :is(div,p,span,label,button,input,textarea,select):not(.color-circle):not(.color-palette *):not(.style-choice-current *):is([style*="color:#111"],[style*="color: #111"],[style*="color:#333"],[style*="color: #333"],[style*="color:#374151"],[style*="color:#444"],[style*="color:#4b5563"]){color:var(--ui-ink)!important}html[data-theme=dark] :is(.nav-modal-content,.app-dialog,#user-map-modal-overlay,#user-map-action-panel,#user-map-representative-field-modal-overlay,#user-map-category-modal-overlay) :is(div,p,span,label,button):not(.color-circle):not(.color-palette *):is([style*="color:#666"],[style*="color: #666"],[style*="color:#6b7280"],[style*="color:#888"],[style*="color:#999"]){color:var(--ui-secondary)!important}html[data-theme=dark] :is(.nav-modal-content,#user-map-modal-overlay,#user-map-representative-field-modal-overlay,#user-map-category-modal-overlay) :is(div,p,button):not(.color-circle):not(.color-palette *):not(.style-choice-current *):is([style*="background:#fff"],[style*="background: #fff"],[style*="background:#f5f5f5"],[style*="background:#f3f4f6"],[style*="background:#f8f9fa"],[style*="background:#eff6ff"]){background:var(--ui-background)!important;border-color:var(--ui-border)!important}html[data-theme=dark] #project-list-area .project-card{color:var(--ui-ink);background:var(--ui-surface)!important}html[data-theme=dark] #project-list-area .project-card.is-current{background:var(--ui-selected)!important;border-color:#47658d!important}html[data-theme=dark] #project-list-area .project-card :is(div,span)[style*="color:#333"]{color:var(--ui-ink)!important}html[data-theme=dark] .mono-btn{background:var(--ui-surface)!important;color:var(--ui-ink)!important;border-color:var(--ui-border)!important}html[data-theme=dark] .mono-btn svg{fill:currentColor}html[data-theme=dark] #project-list-area .project-card-name{color:var(--ui-ink)!important}html[data-theme=dark] #project-list-area .project-card>div:first-child{background:var(--ui-selected)!important}html[data-theme=dark] .mono-btn.danger{color:#ff969f!important}html[data-theme=dark] .app-dialog-btn.danger{color:#fff;background:#b73949}html[data-theme=dark] :is(.auth-info-item,.admin-user-item,.verification-code-result,.admin-users-tier-tab,.admin-users-search,.verification-code-textarea){background:var(--ui-background);color:var(--ui-ink);border-color:var(--ui-border)}html[data-theme=dark] :is(.auth-info-value,.admin-user-email,.admin-user-tier,.verification-code-value,.verification-code-label){color:var(--ui-ink)}html[data-theme=dark] :is(.survey-group,.survey-list-container){background:var(--ui-surface);border-color:var(--ui-border)}html[data-theme=dark] #user-map-list :is(.survey-name,.survey-group-name){color:var(--ui-ink)}html[data-theme=dark] #user-map-list .user-map-item{border-color:var(--ui-border)!important}html[data-theme=dark] :is(#user-map-list,#survey-list-area) .style-setting-btn{background:var(--ui-background)!important;border-color:var(--ui-border)!important}html[data-theme=dark] .record-fab-label{color:var(--ui-ink)}html[data-theme=dark] .scale-zoom-menu{background:var(--ui-surface);border-color:var(--ui-border)}html[data-theme=dark] .scale-zoom-menu-item{color:var(--ui-ink);background:0 0}html[data-theme=dark] .scale-zoom-menu-item.active,html[data-theme=dark] .scale-zoom-menu-item:hover{background:var(--ui-selected);color:var(--color-primary)}html[data-theme=dark] #style-modal :is(.style-choice-dropdown,.style-choice-options),html[data-theme=dark] #style-modal :is(.style-btn,.emoji-btn,.palette-color-view-btn,.style-tile-invert-row){background:var(--ui-background);color:var(--ui-ink);border-color:var(--ui-border)}html[data-theme=dark] #style-modal :is(.style-btn.selected,.emoji-btn.selected){background:var(--ui-selected);color:var(--color-primary);border-color:var(--color-primary)}html[data-theme=dark] #style-modal .palette-color-view-btn{background:var(--ui-selected);color:var(--ui-ink)}html[data-theme=dark] #style-modal :is(.style-choice-current,.style-preview-options) svg{color:var(--ui-ink);background:0 0}html[data-theme=dark] #style-modal :is(.style-choice-current,.style-preview-options) svg [stroke=\#333]{stroke:currentColor}html[data-theme=dark] #style-modal :is(.style-choice-current,.style-preview-options) svg [fill=\#333]{fill:currentColor}html[data-theme=dark] #style-modal :is(.style-choice-current,.style-preview-options) svg [fill=\#e5e5e5]{fill:var(--ui-secondary)}html[data-theme=dark] :is(.modal-container,.edit-vertex-action-group .action-btn){background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-border)}html[data-theme=dark] :is(.modal-title,.modal-btn.secondary,.modal-btn.cancel,.app-dialog-btn.secondary){color:var(--ui-ink)}html[data-theme=dark] :is(.modal-btn.secondary,.modal-btn.cancel,.app-dialog-btn.secondary){background:var(--ui-background);border-color:var(--ui-border)}html[data-theme=dark] .edit-vertex-action-group .action-btn svg{fill:var(--ui-ink)!important}html[data-theme=dark] .more-menu-item.danger{color:#ff969f!important}html[data-theme=dark] .more-menu-item.disabled{color:#8190a6!important}html[data-theme=dark] #user-map-form input[type=file]::file-selector-button{background:var(--ui-selected);color:var(--ui-ink)}html[data-theme=dark] .search-result-panel{background:var(--ui-surface);color:var(--ui-ink);border-color:var(--ui-border)}html[data-theme=dark] :is(.history-header,.search-result-header){background:var(--ui-background);color:var(--ui-secondary);border-color:var(--ui-border)}html[data-theme=dark] :is(.history-item,.search-result-item){border-color:var(--ui-border)}html[data-theme=dark] :is(.history-item:hover,.search-result-item:hover){background:var(--ui-selected)}html[data-theme=dark] .search-result-title{color:var(--ui-ink)}html[data-theme=dark] .search-result-addr{color:var(--ui-secondary)}html[data-theme=dark] :is(#memo-input-textarea,#record-label-modal select,#record-label-modal textarea,#record-label-modal input[type=color]){color:var(--ui-ink);background:var(--ui-background)!important;border-color:var(--ui-border)!important}html[data-theme=dark] #record-label-modal>[role=dialog]{color:var(--ui-ink);background:var(--ui-surface)!important}html[data-theme=dark] #record-label-modal :is(#record-label-title,label>span,.record-label-toggle){border-color:var(--ui-border);color:var(--ui-ink)!important}html[data-theme=dark] #record-label-modal .label-count{color:var(--ui-secondary)!important}html[data-theme=dark] #record-label-modal :is(.label-close,.label-cancel,.label-default){background:var(--ui-selected)!important;color:var(--ui-ink)!important}html[data-theme=dark] #record-label-modal .label-disable{color:#ffb2c5!important;background:#482538!important}html[data-theme=dark] #record-label-modal .record-label-toggle:has(input:checked){background:var(--ui-selected);border-color:var(--color-primary)}html[data-theme=dark] #record-label-modal .label-preview{background:var(--ui-background);border-color:var(--ui-border);text-shadow:none}html[data-theme=dark] #record-label-modal [style*="color:#6b7280"]{color:var(--ui-secondary)!important}html[data-theme=dark] .settings-choice span{background:var(--ui-background);color:var(--ui-secondary);border-color:var(--ui-border)}html[data-theme=dark] .settings-choice input:checked+span{background:var(--ui-selected);color:var(--color-primary);border-color:var(--color-primary)}html[data-theme=dark] .modal-btn.primary{background:var(--ui-action);color:#fff}html[data-theme=dark] :is(.more-menu-item:active,.dropdown-item:active,.record-fab-group .bottom-btn:active,.circle-btn:active,.map-control-btn:active){background:var(--ui-selected)}html[data-theme=dark] #record-label-modal [style*="color:#4b5563"]{color:var(--ui-ink)!important}html[data-theme=dark] .sort-modal-options{background:var(--ui-background);color:var(--ui-ink)}html[data-theme=dark] .user-map-category-field-btn [style*="color:#2563eb"]{color:var(--color-primary)!important}
