/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::-webkit-file-upload-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::-webkit-file-upload-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option{padding-inline-start:20px}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::-webkit-file-upload-button{margin-inline-end:4px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-year-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-month-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-day-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-hour-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-minute-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-second-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-millisecond-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-meridiem-field{padding-block-start:0;padding-block-end:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{-webkit-appearance:button;appearance:button}input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.end:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.end:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-1{height:calc(var(--spacing) * 1)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.text-justify{text-align:justify}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--forest:#244d40;--green:#2d805e;--ink:#233c34;--muted:#88968f;--line:#e4e9e3;--orange:#de9b42;--bg:#f7f8f4;color:var(--ink);font-synthesis:none;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;display:inline-flex}button:disabled{opacity:.4;cursor:not-allowed}button,input,select,textarea,a{outline-color:#7baa8c}button:hover{filter:brightness(.96)}a{color:var(--green);text-decoration:none}input,textarea,select{color:var(--ink)}.workspace{height:100dvh;min-height:550px;overflow:hidden}.topbar{border-bottom:1px solid var(--line);z-index:5;background:#fff;justify-content:space-between;align-items:center;height:79px;padding:0 27px;display:flex;position:relative}.brand{align-items:center;gap:11px;min-width:310px;display:flex}.brand-mark{background:var(--forest);color:#ecf2d9;border-radius:13px;justify-content:center;align-items:center;width:41px;height:41px;display:flex}.brand strong{letter-spacing:1px;font-size:17px}.brand small{letter-spacing:2px;color:#7c9185;margin-top:5px;font-size:8px;display:block}.brand-divider{color:#ccd3cd;padding:0 13px;font-weight:400}.project-label{align-items:center;gap:9px;font-size:12px;display:flex}.project-label>span:last-child{border-left:1px solid var(--line);color:#93a198;margin-left:3px;padding-left:12px}.live-dot{background:#559877;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 3px #e9f1e9}.header-actions{align-items:center;gap:20px;font-size:12px;display:flex}.sync{color:#84938b;gap:5px;padding:0;font-size:11px}.plain{color:#65776c;padding:6px 0}.outline{background:#fff;border:1px solid #dce3db;border-radius:7px;padding:8px 13px;font-size:12px}.main-body{height:calc(100% - 79px);display:flex}.sidebar{background:var(--bg);z-index:3;border-right:1px solid #dce3dc;flex-direction:column;flex-shrink:0;width:344px;display:flex}.side-intro{padding:27px 27px 20px}.eyebrow{letter-spacing:2px;color:#6c8175;justify-content:space-between;font-size:10px;display:flex}.eyebrow span{letter-spacing:.3px;color:#a4afa7;font-size:9px}.side-intro h1{letter-spacing:1px;margin:18px 0 9px;font-family:Songti SC,Noto Serif CJK SC,SimSun,serif;font-size:26px;font-weight:500;line-height:1.55}.side-intro h1>span{color:#dfac65}.side-intro p{color:#8b988e;letter-spacing:.5px;margin:0;font-size:10px}.stats{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;margin-top:23px;padding-top:20px;display:grid}.stats>div{border-left:1px solid var(--line);padding-left:18px}.stats>div:first-child{border-left:0;padding-left:0}.stats b{letter-spacing:-1px;font-variant-numeric:tabular-nums;font-size:27px;font-weight:500;display:block}.stats span{color:#8a968e;margin-top:4px;font-size:10px;display:block}.green{color:var(--green)}.side-tabs{border-bottom:1px solid var(--line);gap:21px;padding:0 25px;display:flex}.side-tabs button{white-space:nowrap;color:#98a39b;padding:16px 0 13px;font-size:12px;position:relative}.side-tabs .active{color:var(--forest);font-weight:600}.side-tabs .active:after{content:"";background:var(--forest);height:2px;position:absolute;bottom:-1px;left:0;right:0}.side-tabs button>span{background:#e8ede6;border-radius:3px;padding:1px 4px;font-size:9px}.filters{padding:19px 23px 12px}.search{color:#a1ada3;background:#fff;border:1px solid #e1e7df;border-radius:7px;align-items:center;gap:8px;height:38px;padding:0 11px;display:flex}.search input{background:0 0;border:0;outline:none;width:100%;font-size:11px}.search input::placeholder{color:#a6b1a8}.search button{padding:0}.select-row{gap:9px;margin-top:10px;display:flex}.select-row select{background:#fff;border:1px solid #e1e7df;border-radius:6px;flex:1;min-width:0;height:32px;padding:0 9px;font-size:10px}.list-label{color:#a0aba2;justify-content:space-between;padding:0 25px 11px;font-size:10px;display:flex}.list-label>span{align-items:center;gap:6px;display:flex}.dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.dot.orange{background:#e4a34c}.dot.green{background:#2e9266}.dot.gray{background:#c5cdc5}.school-list{scrollbar-width:thin;scrollbar-color:#d5ddd1 transparent;flex:1;min-height:0;padding:0 13px 12px;overflow-y:auto}.school-card{text-align:left;border:1px solid #0000;border-bottom-color:#e7ece5;border-radius:8px;align-items:center;gap:11px;width:100%;padding:14px 11px;display:flex}.school-card:hover{filter:none;background:#eef2e9}.school-card.selected{background:#e9efe4;border:1px solid #d4dfcd}.school-icon{color:#c99143;background:#f5ebd9;border-radius:9px;justify-content:center;align-items:center;width:35px;min-width:35px;height:35px;display:flex}.school-icon.lit{color:#38835e;background:#deebdb}.school-copy{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.school-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;line-height:1.6;overflow:hidden}.school-copy>span{color:#889a8b;gap:6px;font-size:9px;display:flex}.school-copy i{color:#b9c3b7;font-style:normal}.school-copy small{color:#adb7ac;font-size:9px}.school-card>svg{color:#aab7a7;flex-shrink:0}.side-footer{border-top:1px solid var(--line);background:#f7f8f4;gap:10px;padding:15px 23px;display:flex}.side-footer button{border-radius:6px;height:37px;font-size:11px}.add{background:var(--forest);color:#f5f7ee;flex:1}.import{border:1px solid #dce3d8;min-width:70px}.map-stage{background:#e5eae0;flex:1;min-width:0;position:relative;overflow:hidden}.map-top{pointer-events:none;z-index:2;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:26px;left:29px;right:29px}.map-location{text-shadow:0 1px 3px #f5f7ee,0 0 12px #f5f7ee}.map-location>span{letter-spacing:3px;color:#7e9384;font-size:9px}.map-location h2{letter-spacing:3px;margin:7px 0 9px;font-size:25px;font-weight:500}.map-location h2>span{letter-spacing:1px;color:#819787;margin-left:9px;font-size:13px;font-weight:400}.map-location small{color:#829588;align-items:center;gap:7px;font-size:9px;display:flex}.map-location small .live-dot{width:5px;height:5px;box-shadow:none}.mode-switch{pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffed;border:1px solid #fff8;border-radius:8px;padding:5px;display:flex;box-shadow:0 4px 15px #2547320a}.mode-switch button{color:#8d9a8e;border-radius:5px;padding:8px 13px;font-size:11px}.mode-switch button.active{color:#f8fbf3;background:var(--forest)}.map-tools{z-index:2;background:#fffffff5;border:1px solid #fff;border-radius:9px;flex-direction:column;padding:5px;display:flex;position:absolute;bottom:152px;right:27px;box-shadow:0 5px 25px #213d2b10}.map-tools button{color:#6b826f;border-radius:4px;width:33px;height:35px}.map-tools .on{color:#355d43;background:#eaf0e5}.map-tools b{font-size:13px;font-weight:600}.map-tools>span{background:#e7ece4;height:1px;margin:4px}.map-bottom{pointer-events:none;z-index:1;justify-content:space-between;align-items:center;gap:15px;display:flex;position:absolute;bottom:67px;left:28px;right:28px}.legend{color:#6d8271;background:#fffffff0;border:1px solid #fffe;border-radius:7px;gap:20px;padding:12px 16px;font-size:10px;display:flex;box-shadow:0 3px 20px #254b3210}.legend>span{align-items:center;gap:6px;display:flex}.area-swatch{background:#9ac9a178;border:1px solid #6da37b;border-radius:2px;width:13px;height:8px;display:inline-block}.interaction-hint{color:#6d816c;text-shadow:0 0 4px #fff;gap:8px;font-size:9px;display:flex}.interaction-hint span{color:#a7b5a2}.coverage-strip{color:#8b998c;z-index:2;background:#ffffffdf;border-top:1px solid #fff;align-items:center;gap:16px;min-height:39px;padding:10px 29px;font-size:9px;display:flex;position:absolute;bottom:0;left:0;right:0}.coverage-strip>span{color:#6e856f;white-space:nowrap;align-items:center;gap:6px;display:flex}.coverage-strip button{color:#9aa79a;text-align:left;padding:0;font-size:9px}.maplibregl-ctrl-bottom-right{bottom:41px!important}.maplibregl-ctrl-attrib{background:#ffffff8c!important;font-size:9px!important}.maplibregl-ctrl-scale{color:#71836e!important;background:#ffffffc4!important;border-color:#91a391!important;margin-bottom:44px!important;font-size:9px!important}.detail-panel{z-index:4;background:#fffffffa;border:1px solid #fff;border-radius:13px;width:300px;max-height:calc(100% - 193px);padding:25px 22px 18px;position:absolute;top:103px;right:28px;overflow-y:auto;box-shadow:0 13px 45px #1e40251c}.detail-close{color:#9caa9e;position:absolute;top:13px;right:12px}.detail-tag{letter-spacing:1px;color:#90a18f;align-items:center;gap:7px;font-size:9px;display:flex}.detail-panel h3{letter-spacing:.5px;margin:13px 0 10px;padding-right:12px;font-size:19px;font-weight:500;line-height:1.5}.detail-address{color:#94a08e;gap:6px;font-size:10px;line-height:1.7;display:flex}.detail-address svg{flex-shrink:0;margin-top:2px}.light-button{color:#a57a3e;background:#faf1df;border:1px solid #e8d3af;border-radius:6px;width:100%;margin:19px 0 17px;padding:12px 10px;font-size:11px}.light-button>span{margin-left:auto}.light-button.lit{color:#fff;border-color:var(--green);background:var(--green)}.field-label{color:#7e8e7a;margin:12px 0;font-size:10px;display:block}.field-label input,.field-label select,.field-label textarea{background:#fbfcf8;border:1px solid #e1e8dd;border-radius:5px;width:100%;margin-top:8px;padding:10px;font-size:11px;display:block}.field-label textarea{resize:vertical;min-height:70px;line-height:1.8}.field-label textarea::placeholder{color:#a8b0a1}.save-note{border:1px solid #dfe7d8;border-radius:5px;margin-bottom:15px;padding:6px 9px;font-size:10px}.location-state{color:#98a58f;border-top:1px solid #e9eee5;justify-content:space-between;padding-top:15px;font-size:9px;display:flex}.location-state>span{align-items:center;gap:5px;display:flex}.location-state button{color:#547a50;padding:0;font-size:9px}.source-small{color:#a9b2a1;margin-top:9px;font-size:9px;line-height:1.7;display:block}.detail-source{color:#9fae97;flex-direction:column;gap:5px;margin-top:12px;font-size:9px;display:flex}.detail-source a{color:#7e9474;align-items:center;gap:4px;font-size:9px;display:flex}.region-intro{padding:20px 24px}.region-intro p{color:#8d9c8a;margin:0 0 15px;font-size:10px}.region-intro button{color:#638359;background:#edf1e7;border:1px solid #dbe4d2;border-radius:6px;width:100%;padding:12px;font-size:11px}.region-list{padding:5px 22px}.region-list .list-label{padding:14px 0 10px}.region-card{text-align:left;border-bottom:1px solid #e7ece1;border-radius:5px;gap:13px;width:100%;padding:15px 10px;display:flex}.region-card>span:nth-child(2){flex:1}.region-card strong{font-size:12px;font-weight:500;display:block}.region-card small{color:#99a88f;margin-top:6px;font-size:9px;display:block}.region-card.lit{background:#e8f0e0}.region-shape{color:#9eaf93}.region-indicator{color:#98ac89;border:1px solid #dce5d2;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.region-card.lit .region-indicator{color:#fff;background:#559266}.region-note{color:#9ead92;border-top:1px solid var(--line);gap:6px;padding:20px 24px;font-size:9px;display:flex}.region-desc{color:#94a186;font-size:11px;line-height:1.9}.delete-zone{color:#ad8776;margin:5px 0 10px;padding:0;font-size:10px}.draw-panel{z-index:4;background:#fffffff5;border:1px solid #fff;border-radius:10px;width:326px;padding:19px;position:absolute;top:115px;left:28px;box-shadow:0 9px 30px #18341d1a}.draw-panel>div{align-items:center;gap:8px;font-size:13px;display:flex}.draw-panel>div button{margin-left:auto}.draw-panel p{color:#96a78d;margin:13px 0;font-size:10px}.draw-panel input{border:1px solid #dfe7d7;border-radius:5px;width:100%;padding:10px;font-size:11px}.draw-panel footer{align-items:center;gap:10px;margin-top:12px;font-size:10px;display:flex}.draw-panel footer>button:first-child{color:#809676;padding:0;font-size:10px}.draw-panel footer>small{color:#b2bca8;margin-right:auto}.primary{background:var(--forest);color:#fff;border-radius:6px;padding:10px 14px;font-size:11px}.action-banner{z-index:4;color:#974;background:#fffdef;border:1px solid #e9dab8;border-radius:9px;gap:13px;padding:16px 20px;display:flex;position:absolute;top:115px;left:28px;right:90px;box-shadow:0 6px 20px #36271810}.action-banner strong{font-size:12px;font-weight:500;display:block}.action-banner span{opacity:.6;margin-top:6px;font-size:10px;display:block}.action-banner button{margin-left:auto;font-size:11px}.empty{text-align:center;color:#a5b29a;padding:35px 0;font-size:12px}.empty>svg{margin:auto}.empty small{font-size:10px}.toast{color:#eff8e9;z-index:30;background:#244d40f5;border-radius:8px;align-items:center;gap:10px;max-width:85vw;padding:14px 20px;font-size:12px;display:flex;position:fixed;bottom:75px;left:50%;transform:translate(-50%);box-shadow:0 7px 35px #18332126}.map-error{z-index:2;color:#a58851;background:#fff8e8e8;border-radius:6px;align-items:center;gap:9px;padding:11px 15px;font-size:10px;display:flex;position:absolute;bottom:111px;left:28px;right:90px}.map-error button{margin-left:auto}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:40;background:#12362145;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal{background:#fcfdf8;border:1px solid #fff;border-radius:15px;width:480px;max-width:100%;max-height:90dvh;padding:33px;position:relative;overflow-y:auto;box-shadow:0 20px 90px #18362130}.modal-close{color:#9da994;position:absolute;top:16px;right:17px}.modal-icon{color:#709260;background:#e8efdf;border-radius:13px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:21px;display:flex}.modal h2{letter-spacing:1px;margin:0 0 13px;font-size:23px;font-weight:500}.modal>p{color:#96a38d;margin:0 0 23px;font-size:11px;line-height:1.9}.wide{width:100%;margin-top:18px}.data-summary{background:#eff3e8;border-radius:8px;margin-bottom:23px;padding:19px;display:flex}.data-summary>div{text-align:center;border-right:1px solid #dce6d3;flex:1}.data-summary>div:last-child{border:0}.data-summary b{font-size:25px;font-weight:500;display:block}.data-summary small{color:#91a283;margin-top:7px;font-size:10px;display:block}.data-text h4{margin:19px 0 6px;font-size:12px;font-weight:600}.data-text p{color:#8e9f83;margin:0;font-size:11px;line-height:1.9}.data-text a{align-items:center;gap:5px;margin:9px 0;font-size:10px;line-height:1.8;display:flex}.export-option{text-align:left;background:#f6f8ef;border:1px solid #dfe7d6;border-radius:8px;gap:14px;width:100%;margin-top:13px;padding:18px 15px;display:flex}.export-option>span{flex:1}.export-option strong{font-size:12px;font-weight:500;display:block}.export-option small{color:#99aa8c;margin-top:8px;font-size:9px;display:block}.import-help{color:#8da17c;background:#f0f4e8;border-radius:7px;margin:20px 0;padding:16px;font-size:11px;line-height:1.8}.import-help p{font-size:10px}.form-error{color:#b26d4b!important;margin:15px 0 0!important}.modal input[type=file]{border:1px dashed #c3d1b7;border-radius:8px;width:100%;max-width:100%;padding:20px;font-size:11px}.modal input[type=file]::-webkit-file-upload-button{background:var(--forest);color:#fff;border:0;border-radius:5px;margin-right:10px;padding:8px 13px;font-size:10px}.modal input[type=file]::file-selector-button{background:var(--forest);color:#fff;border:0;border-radius:5px;margin-right:10px;padding:8px 13px;font-size:10px}.mobile-list-toggle{display:none}@media (min-width:1500px){.sidebar{width:365px}.side-intro{padding-left:30px;padding-right:30px}.school-card{padding:16px 13px}.school-copy strong{font-size:13px}.map-location h2{font-size:30px}.detail-panel{width:320px}.side-intro h1{font-size:29px}}@media (max-width:1150px){.project-label{display:none}.sidebar{width:310px}.side-intro{padding:22px}.side-intro h1{font-size:24px}.brand{min-width:0}.interaction-hint{display:none}.coverage-strip{line-height:1.7;display:block}.coverage-strip button{display:none}.map-top{left:20px;right:20px}.map-location h2>span{display:none}.detail-panel{width:275px;right:20px}}@media (max-width:760px){.workspace{min-height:0}.topbar{height:65px;padding:0 16px}.brand{gap:8px}.brand-mark{border-radius:10px;width:33px;height:33px}.brand strong{letter-spacing:.3px;font-size:13px}.brand small{letter-spacing:1.1px;font-size:6px}.brand-divider{padding:0 7px}.header-actions{gap:12px}.header-actions .sync,.header-actions span{display:none}.header-actions .plain{padding:5px}.header-actions .outline{padding:7px}.main-body{height:calc(100% - 65px)}.sidebar{z-index:9;width:85%;max-width:345px;transition:transform .2s;position:absolute;top:65px;bottom:0;left:0;transform:translate(-105%);box-shadow:10px 0 50px #18332620}.sidebar.mobile-open{transform:translate(0)}.side-intro{padding-top:17px}.side-intro h1{margin-top:12px;font-size:24px;line-height:1.4}.stats{margin-top:16px;padding-top:14px}.map-top{top:20px;left:17px;right:16px}.map-location h2{letter-spacing:1px;font-size:22px}.mode-switch{margin-top:3px;padding:3px}.mode-switch button{gap:4px;padding:8px;font-size:10px}.map-location>span{letter-spacing:2px;font-size:8px}.map-location small{font-size:8px}.map-tools{bottom:166px;right:15px}.map-bottom{bottom:75px;left:15px;right:auto}.legend{gap:12px;padding:10px 12px;font-size:9px}.coverage-strip{min-height:36px;padding:9px 16px;font-size:8px}.maplibregl-ctrl-bottom-right{bottom:37px!important}.maplibregl-ctrl-scale{display:none}.mobile-list-toggle{z-index:10;background:#fff;border:1px solid #e0e8d7;border-radius:7px;padding:11px 16px;font-size:11px;display:flex;position:absolute;bottom:119px;left:15px;box-shadow:0 3px 20px #17331e10}.detail-panel{z-index:11;width:auto;max-height:62%;padding:21px;top:auto;bottom:62px;left:14px;right:14px}.detail-panel h3{margin:10px 0;font-size:18px}.detail-panel .field-label textarea{min-height:55px}.detail-panel .light-button{margin:13px 0}.detail-panel .source-small{font-size:8px}.map-error{z-index:12;bottom:50px;left:15px;right:15px}.draw-panel{width:auto;top:116px;left:15px;right:15px}.action-banner{gap:7px;padding:13px;top:116px;left:15px;right:15px}.action-banner strong{font-size:10px}.action-banner span{font-size:9px}.modal-backdrop{padding:16px}.modal{max-height:90dvh;padding:26px}.modal h2{font-size:20px}.toast{width:max-content;font-size:11px;bottom:65px}.school-copy strong{font-size:12px}}.school-copy strong{font-size:13px}.school-copy>span,.school-copy small{color:#81917e;font-size:10px}.field-label{font-size:11px}.field-label input,.field-label select,.field-label textarea{font-size:12px}.detail-address{font-size:11px}.source-small{color:#85947c}.detail-source{color:#83967a}.side-intro p{color:#788974}.coverage-strip button{color:#7e907a}.region-card small{color:#819478}.sandtable-controls{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2;color:#657965;background:#ffffffed;border:1px solid #fff;border-radius:9px;align-items:center;gap:0;padding:5px;display:flex;position:absolute;top:116px;left:28px;box-shadow:0 4px 20px #2e503216}.sandtable-controls button{border-radius:5px;height:33px;padding:0 12px;font-size:11px}.sandtable-controls .skyline-button{color:#fff;background:#385e60}.sandtable-controls .enabled{color:#24694b}.sandtable-controls label{border-left:1px solid #dde4db;align-items:center;gap:6px;margin-left:4px;padding-left:10px;font-size:10px;display:flex}.sandtable-controls select{background:#f0f3e9;border:0;border-radius:4px;margin-right:7px;padding:5px 4px;font-size:10px}.sandtable-controls>span{color:#8b9984;border-left:1px solid #e0e5dc;padding:0 8px;font-size:9px}.shop-dot{background:#9465b8}.poi-category{color:#8f68a8;background:#f1e9f7;border-radius:5px;margin:3px 0 15px;padding:6px 10px;font-size:11px;display:inline-block}.poi-coordinates{color:#758970;align-items:center;gap:6px;margin:5px 0 14px;font-size:11px;display:flex}.poi-source{color:#4f7d5a;align-items:center;gap:5px;margin-top:16px;font-size:11px;display:flex}.map-top .map-location h2{color:#173c38}.map-bottom .legend{box-shadow:0 4px 25px #123d2420}@media (max-width:760px){.sandtable-controls{justify-content:space-between;padding:4px;top:112px;left:15px;right:15px}.sandtable-controls button{padding:0 8px;font-size:10px}.sandtable-controls label{margin-left:0;padding-left:6px;font-size:9px}.sandtable-controls>span{display:none}.sandtable-controls select{margin-right:2px}.draw-panel,.action-banner{top:166px}.detail-panel.poi-panel{bottom:64px}.poi-panel h3{font-size:20px}}.software-map-badge{z-index:1;color:#61765c;pointer-events:none;background:#ffffffe0;border-radius:7px;padding:5px 9px;font-size:10px;position:absolute;bottom:42px;left:14px;box-shadow:0 1px 5px #193d2410}html,body{overscroll-behavior:none;height:100%}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}.main-body{position:relative}.workspace{min-height:0}.share-map{min-width:38px;min-height:40px;font-size:12px}.drawer-heading,.drawer-scrim,.mobile-dock,.mobile-detail-toggle,.sheet-grip{display:none}.map-settings{z-index:7;position:absolute;top:82px;right:28px}.settings-toggle{color:#315544;background:#fffefa;border:1px solid #e3e8dd;border-radius:9px;min-height:42px;padding:0 12px;font-size:12px;box-shadow:0 4px 20px #21442c16}.settings-toggle.active{background:#edf3e9}.settings-panel{overscroll-behavior:contain;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border:1px solid #e1e9dc;border-radius:13px;width:240px;max-height:calc(100dvh - 240px);padding:10px;position:absolute;top:50px;right:0;overflow-y:auto;box-shadow:0 12px 40px #183c3226}.settings-title{justify-content:space-between;align-items:center;padding:0 4px 3px 9px;font-size:13px;font-weight:600;display:flex}.settings-title button{color:#7a8d7b;width:36px;height:36px}.settings-panel>button{border-radius:7px;justify-content:flex-start;gap:10px;width:100%;min-height:44px;padding:8px 10px;font-size:12px;display:flex}.settings-panel>button:hover{background:#f0f5ed}.settings-panel>.skyline-button{color:#2d6549;background:#e7f0e8;margin:3px 0}.settings-panel>.skyline-button>svg:last-child{margin-left:auto}.setting-switch{color:#8b9887;text-align:center;background:#eef0e9;border-radius:5px;min-width:40px;margin-left:auto;padding:4px 7px;font-size:11px}.setting-switch.on{color:#3c7950;background:#e1efdf}.settings-panel>label{align-items:center;min-height:44px;padding:6px 10px;font-size:12px;display:flex}.settings-panel select{background:#f6f9f2;border:1px solid #dce5d7;border-radius:6px;min-height:34px;margin-left:auto;padding:4px 8px;font-size:13px}.settings-note{color:#7b8e74;border-top:1px solid #e2e8db;margin:7px 9px 3px;padding-top:9px;font-size:10px;line-height:1.8}.settings-panel>.settings-sync,.settings-panel>.settings-export{color:#6a8262;font-size:11px}.map-tools{bottom:142px}.map-tools button{width:38px;height:40px}.detail-panel{max-height:calc(100% - 212px);top:138px}.detail-close{width:36px;height:36px;top:9px;right:9px}.detail-panel h3{padding-right:20px}.radius-control{color:#617d56;justify-content:space-between;align-items:center;gap:10px;min-height:42px;padding:0 0 5px;font-size:11px;display:flex}.radius-control select{background:#f7faf3;border:1px solid #d8e4d1;border-radius:6px;max-width:130px;min-height:36px;padding:5px 8px;font-size:12px}.radius-caption{color:#889a7d;margin:0 0 9px;font-size:10px;line-height:1.7}.draw-panel,.action-banner{top:135px}.detail-more{border-top:1px solid #e9eee2;padding-top:1px}.map-tools>span{margin:2px 4px}.detail-panel.poi-panel{top:138px}.mobile-dock small{display:block}.settings-panel>button:focus-visible{outline-offset:2px;outline:2px solid #537b51}.settings-toggle:focus-visible{outline-offset:2px;outline:2px solid #537b51}.mobile-dock button:focus-visible{outline-offset:2px;outline:2px solid #537b51}@media (max-width:900px){.workspace{height:100dvh;min-height:0;overflow:hidden}.topbar{height:calc(54px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(10px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));gap:8px}.brand{gap:8px;min-width:0}.brand-mark{border-radius:9px;flex-shrink:0;width:30px;height:30px}.brand-mark>svg{width:19px;height:19px}.brand strong{letter-spacing:0;white-space:nowrap;font-size:13px}.brand small{letter-spacing:1px;margin-top:3px;font-size:6px}.brand-divider{padding:0 6px}.project-label{display:none}.header-actions{flex-shrink:0;gap:1px}.header-actions .sync,.header-actions .export-header,.header-actions span{display:none}.header-actions .plain,.header-actions .share-map{border:0;min-width:44px;min-height:44px;padding:0}.main-body{height:calc(100% - 54px - env(safe-area-inset-top))}.map-stage{width:100%;height:100%}.map-top{top:16px;left:max(14px,env(safe-area-inset-left));right:14px}.map-location>span{display:none}.map-location h2{letter-spacing:1px;margin:0 0 7px;font-size:19px}.map-location h2>span{display:none}.map-location small{gap:5px;font-size:9px}.mode-switch{display:none}.map-settings{top:12px;right:max(12px,env(safe-area-inset-right));z-index:7}.settings-toggle{gap:7px;min-width:116px;height:44px;padding:0 10px;font-size:12px}.settings-panel{max-height:calc(100dvh - 190px - env(safe-area-inset-bottom));width:min(272px,100vw - 28px);padding:10px;top:51px}.settings-title{font-size:14px}.settings-title button{width:44px;height:40px}.settings-panel>button{min-height:46px;font-size:13px}.settings-panel>label{min-height:48px;font-size:13px}.settings-panel select{min-height:40px;font-size:16px}.settings-note{font-size:11px}.settings-panel>.settings-sync,.settings-panel>.settings-export{font-size:12px}.map-tools{top:74px;right:max(12px,env(safe-area-inset-right));z-index:3;border-radius:10px;padding:3px;bottom:auto}.map-tools button{width:44px;height:44px}.map-tools>span{margin:1px 5px}.map-tools b{font-size:14px}.map-bottom{bottom:calc(94px + env(safe-area-inset-bottom));left:max(12px,env(safe-area-inset-left));z-index:2;max-width:calc(100% - 24px);right:auto}.legend{box-shadow:none;background:#fffffff0;gap:12px;padding:7px 10px;font-size:9px}.interaction-hint,.coverage-strip,.software-map-badge{display:none!important}.maplibregl-ctrl-bottom-right{bottom:0!important}.maplibregl-ctrl-scale,.mobile-list-toggle{display:none}.mobile-dock{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:8;background:#fffefa;border:1px solid #dce6d7;border-radius:14px;gap:5px;padding:5px;display:flex;position:absolute;box-shadow:0 5px 28px #204b3029}.mobile-dock>button{white-space:nowrap;text-align:left;background:#f2f6ec;border-radius:9px;flex:1;justify-content:flex-start;gap:10px;min-height:52px;padding:7px 12px;font-size:13px}.mobile-dock>button:last-child{color:#a27b36;background:#fbf2dd}.mobile-dock>button.active{color:#fff;background:#2d805e}.mobile-dock>button>svg{flex-shrink:0}.mobile-dock small{opacity:.65;margin-top:4px;font-size:9px;font-weight:400}.drawer-scrim{inset:calc(54px + env(safe-area-inset-top)) 0 0;z-index:18;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#1a33292b;padding:0;display:block;position:fixed}.sidebar{width:100%;max-width:none;height:min(79dvh,720px);max-height:calc(100dvh - 60px - env(safe-area-inset-top));padding:0 max(0px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(0px,env(safe-area-inset-left));visibility:hidden;pointer-events:none;z-index:19;overscroll-behavior:contain;background:#fbfcf7;border:1px solid #e1e9d9;border-radius:21px 21px 0 0;transition:transform .22s,visibility .22s;position:fixed;top:auto;bottom:0;left:0;right:0;transform:translateY(105%);box-shadow:0 -12px 48px #173b3326}.sidebar.mobile-open{visibility:visible;pointer-events:auto;transform:translateY(0)}.drawer-heading{justify-content:space-between;align-items:center;height:48px;min-height:48px;padding:3px 12px 0 20px;font-size:14px;font-weight:600;display:flex}.drawer-heading button{width:44px;height:44px}.side-intro{padding:0 20px 10px}.side-intro .eyebrow,.side-intro h1,.side-intro>p{display:none}.stats{border:0;margin:0;padding:2px 0 0}.stats b{font-size:23px;line-height:1.2}.stats span{margin-top:4px;font-size:10px}.stats>div{padding-left:22px}.side-tabs{gap:26px;min-height:46px;padding:0 20px}.side-tabs button{min-height:46px;padding:10px 0;font-size:13px}.side-tabs button>span{font-size:10px}.filters{padding:13px 16px 10px}.search{gap:8px;height:44px;padding:0 10px}.search input{min-width:0;height:42px;font-size:16px}.search input::placeholder{font-size:14px}.search button{min-width:36px;height:42px}.select-row{gap:8px;margin-top:8px}.select-row select{min-width:0;height:44px;padding:0 8px;font-size:16px}.list-label{padding:0 20px 9px;font-size:11px}.school-list{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:0 10px 12px}.school-card{min-height:72px;padding:12px 10px}.school-copy strong{font-size:14px;line-height:1.55}.school-copy>span,.school-copy small{font-size:11px}.school-icon{width:38px;min-width:38px;height:38px}.side-footer{flex-shrink:0;gap:10px;padding:10px 16px}.side-footer button{height:44px;font-size:13px}.side-footer .import{min-width:80px}.region-intro{padding:12px 20px}.region-intro p{margin-bottom:10px;font-size:11px}.region-intro button{min-height:44px;font-size:13px}.region-list{padding:0 16px 8px}.region-card{min-height:70px;padding:12px 9px}.region-card strong{font-size:14px}.region-card small{font-size:11px}.region-note{padding:14px 20px;font-size:10px}.detail-panel,.detail-panel.poi-panel{top:auto;left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:calc(91px + env(safe-area-inset-bottom));z-index:6;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:18px;width:auto;max-height:calc(100% - 170px);padding:15px 17px 8px;box-shadow:0 -5px 32px #173b3224}.detail-panel.detail-compact{max-height:48dvh}.detail-panel.detail-expanded{z-index:9;max-height:calc(100% - 115px)}.sheet-grip{background:#d4ddcd;border-radius:3px;width:34px;height:4px;margin:-7px auto 9px;display:block}.detail-close{width:44px;height:44px;top:8px;right:7px}.detail-tag{padding-right:30px;font-size:10px;line-height:1.4}.detail-panel h3{letter-spacing:0;margin:7px 0 6px;padding-right:23px;font-size:16px;font-weight:600;line-height:1.5}.detail-compact h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.detail-address{font-size:11px;line-height:1.5}.detail-compact .detail-address{display:none}.detail-panel .light-button{min-height:44px;margin:10px 0 8px;padding:10px 12px;font-size:13px}.radius-control{gap:8px;min-height:44px;padding:0;font-size:12px}.radius-control select{width:126px;max-width:45%;min-height:42px;padding:5px 8px;font-size:16px}.radius-caption{margin:5px 0 4px;font-size:10px;line-height:1.5}.mobile-detail-toggle{color:#628458;border-top:1px solid #e6edde;justify-content:space-between;width:100%;min-height:42px;margin-top:4px;font-size:12px;display:flex}.detail-compact .detail-more{display:none}.detail-more{border-top:0;padding:3px 0 8px}.detail-panel .field-label{margin:14px 0;font-size:12px}.detail-panel .field-label input,.detail-panel .field-label select,.detail-panel .field-label textarea{min-height:44px;padding:10px;font-size:16px}.detail-panel .field-label textarea{min-height:88px}.detail-panel .save-note{min-height:44px;padding:8px 12px;font-size:13px}.detail-panel .location-state{align-items:center;min-height:44px;padding-top:8px;font-size:11px}.location-state button{min-height:44px;font-size:12px}.detail-panel .source-small,.detail-source,.detail-source a{font-size:10px;line-height:1.65}.detail-source a{min-height:36px}.detail-panel .region-desc{font-size:12px}.delete-zone{min-height:44px;font-size:12px}.poi-panel h3{font-size:18px}.poi-category,.poi-coordinates,.poi-source{font-size:12px}.poi-source{min-height:44px}.detail-panel.poi-panel{max-height:48dvh;padding-bottom:18px}.has-selection .map-bottom,.has-selection .software-map-badge{display:none}.has-selection .map-tools{top:74px}.draw-panel{top:auto;left:12px;right:70px;bottom:calc(92px + env(safe-area-inset-bottom));z-index:6;border-radius:13px;width:auto;max-height:50%;padding:14px;overflow-y:auto}.draw-panel>div{font-size:13px}.draw-panel>div button{min-width:36px;min-height:36px}.draw-panel p{margin:6px 0 10px;font-size:11px;line-height:1.7}.draw-panel input{min-height:44px;font-size:16px}.draw-panel footer{flex-wrap:wrap;gap:8px;margin-top:8px}.draw-panel footer>button{min-height:44px}.draw-panel footer>button:first-child{font-size:11px}.draw-panel footer .primary{padding:8px 10px;font-size:12px}.action-banner{top:auto;bottom:calc(100px + env(safe-area-inset-bottom));z-index:6;max-height:40%;padding:13px;left:12px;right:12px;overflow-y:auto}.action-banner strong{font-size:12px;line-height:1.65}.action-banner span{font-size:11px;line-height:1.6}.action-banner button{min-width:44px;min-height:44px;font-size:12px}.editing-map .map-bottom{display:none}.map-error{left:12px;right:12px;bottom:calc(93px + env(safe-area-inset-bottom));z-index:12;padding:9px 11px;font-size:11px}.map-error button{min-width:36px;min-height:36px}.toast{bottom:calc(97px + env(safe-area-inset-bottom));z-index:50;width:max-content;max-width:calc(100vw - 32px);padding:10px 14px;font-size:12px;line-height:1.7}.modal-backdrop{padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));align-items:center}.modal{max-height:calc(100dvh - 28px - env(safe-area-inset-top) - env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;border-radius:17px;padding:26px 22px}.modal-close{min-width:44px;min-height:44px;top:7px;right:7px}.modal h2{padding-right:12px;font-size:21px}.modal>p,.modal .field-label{font-size:12px}.modal input,.modal select,.modal textarea,.modal .field-label input,.modal .field-label select,.modal .field-label textarea{min-height:44px;font-size:16px}.modal button{min-height:44px}.modal .data-text p{font-size:12px}.modal .data-text h4{font-size:13px}.modal .data-text a{font-size:11px}.export-option strong{font-size:13px}.export-option small{font-size:11px;line-height:1.6}.import-help{font-size:12px}.import-help p{font-size:11px}.software-map-badge{display:none!important}}@media (max-width:360px){.brand strong{font-size:12px}.brand small{font-size:5px}.brand-mark{width:27px;height:27px}.brand{gap:6px}.brand-divider{padding:0 4px}.header-actions .plain,.header-actions .share-map{min-width:38px}.mobile-dock>button{gap:7px;padding:7px 8px;font-size:12px}.mobile-dock small{font-size:8px}.legend{gap:9px;font-size:8px}.radius-caption{font-size:9px}.detail-panel{padding-left:14px;padding-right:14px}.settings-toggle{min-width:110px;font-size:11px}.map-location h2{font-size:18px}}@media (max-width:900px) and (max-height:650px){.sidebar{height:85dvh;max-height:calc(100dvh - 48px)}.side-intro{display:none}.filters{padding-top:9px}.drawer-heading{height:43px;min-height:43px}.detail-panel.detail-compact{max-height:57dvh}.detail-compact .detail-tag,.detail-compact .radius-caption{display:none}.detail-panel h3{margin:5px 0;padding-right:28px;font-size:15px;line-height:1.4}.detail-panel .light-button{margin:8px 0 6px}.detail-panel,.detail-panel.poi-panel{bottom:calc(84px + env(safe-area-inset-bottom));padding-top:13px}.mobile-detail-toggle{min-height:38px}.mobile-dock{bottom:calc(10px + env(safe-area-inset-bottom))}.map-bottom{bottom:calc(84px + env(safe-area-inset-bottom))}.map-tools{top:70px}.map-tools button{height:42px}.settings-panel{max-height:calc(100dvh - 175px)}.poi-panel .source-small{font-size:10px}}@media (max-width:900px) and (orientation:landscape) and (max-height:540px){.topbar{height:44px;padding-top:0}.main-body{height:calc(100% - 44px)}.brand small{display:none}.map-top{top:12px}.map-location small{display:none}.map-settings{top:8px}.map-tools{top:62px}.map-tools button{height:44px}.map-tools>span,.map-tools button:nth-last-child(-n+2){display:none}.mobile-dock{width:330px;bottom:12px;left:12px;right:auto}.mobile-dock>button{min-height:44px}.mobile-dock small{display:none}.map-bottom{bottom:76px}.detail-panel,.detail-panel.poi-panel{width:min(340px,52vw);padding:12px 16px;top:63px;bottom:12px;left:auto;right:72px;max-height:none!important}.detail-panel .detail-tag,.detail-panel .radius-caption{display:none}.detail-panel h3{font-size:14px}.mobile-detail-toggle{min-height:38px}.detail-panel.detail-expanded{top:10px;right:72px}.settings-panel{max-height:calc(100dvh - 116px)}.sidebar{border-radius:0 18px 0 0;width:min(480px,75vw);height:calc(100dvh - 10px);max-height:none;left:0;right:auto}.side-tabs,.side-tabs button{min-height:40px}.filters{padding:7px 12px}.select-row{margin-top:5px}.school-card{min-height:64px}.side-footer{padding:6px 12px}.drawer-heading{height:40px;min-height:40px}.drawer-scrim{top:44px;bottom:0;left:0;right:0}.action-banner,.draw-panel{width:330px;max-height:calc(100% - 95px);bottom:76px;left:12px;right:auto}.map-error{bottom:72px;left:12px;right:72px}.toast{bottom:75px}.modal{max-height:calc(100dvh - 20px)}}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}.unlocated-hint{color:#9d8047;align-items:center;gap:5px;margin:0 0 6px;font-size:10px;line-height:1.5;display:flex}.unlocated-hint span{flex:1}.unlocated-hint button{background:#faf0d8;border-radius:5px;min-height:36px;padding:4px 8px;font-size:11px}.unlocated-hint>svg{flex-shrink:0}@media (max-width:900px){.unlocated-hint{font-size:10px}.unlocated-hint button{min-width:44px;min-height:44px;font-size:12px}}.map-location .shared-map-status{color:#357553;letter-spacing:0;max-width:190px;text-shadow:none;background:#ffffffe3;border-radius:6px;margin-top:9px;padding:5px 8px;font-size:10px;line-height:1.35;display:inline-flex;box-shadow:0 2px 8px #264d3020}.map-location .shared-map-status.pending{color:#9f772d;background:#fff7e7}.shared-access-note{color:#477953;background:#edf4e6;border-radius:7px;margin-top:7px;padding:9px 10px;font-size:11px;line-height:1.7}.personal-record-note{color:#74876a;flex-direction:column;gap:5px;padding:11px 0 2px;font-size:10px;display:flex}.personal-record-note strong{font-size:11px;font-weight:500}.personal-record-note button{color:#376a4b;align-self:flex-start;min-height:32px;padding:4px 0;font-size:10px}.legacy-actions{align-items:center;gap:15px;margin:0 0 12px;display:flex}.legacy-list{overscroll-behavior:contain;border:1px solid #dce6d5;border-radius:8px;max-height:280px;padding:4px 10px;overflow:auto}.legacy-list>label{border-bottom:1px solid #e5ecde;align-items:center;gap:10px;padding:12px 0;font-size:12px;line-height:1.6;display:flex}.legacy-list input{accent-color:#2d805e;flex-shrink:0;width:18px;height:18px;min-height:18px}.legacy-list small{color:#94a389;font-size:10px;display:block}.legacy-list>p{color:#829577;padding:10px;font-size:12px}.legacy-list>label:last-child{border-bottom:0}@media (max-width:900px){.map-location .shared-map-status{letter-spacing:0;max-width:180px;margin-top:5px;padding:4px 6px;font-size:9px;display:inline-flex}.personal-record-note{font-size:11px}.personal-record-note strong{font-size:12px}.personal-record-note button{min-height:44px;font-size:12px}.shared-access-note{font-size:11px}.legacy-list input{width:20px;height:20px;min-height:20px}.legacy-list>label{min-height:52px;font-size:13px}.legacy-list small{font-size:11px}}@media (max-width:360px){.map-location .shared-map-status{max-width:150px;font-size:8px}.map-location h2{font-size:17px}}@media (max-width:900px) and (orientation:landscape) and (max-height:540px){.map-location .shared-map-status{margin-top:0;padding:3px 5px;font-size:9px}.legacy-list{max-height:140px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
