.measure-heading{padding-top:42px;padding-bottom:38px;max-width:1260px}.measure-heading .eyebrow{margin-top:32px}.measure-heading h1{font-size:clamp(36px,5vw,68px);line-height:1.08;letter-spacing:-.045em;margin:14px 0 22px}.measure-lede{max-width:760px;line-height:1.65;margin-top:20px}
.measure-section-title{display:flex;align-items:flex-start;gap:20px;margin-bottom:28px}.measure-section-title>span{background:#193c2d;color:#fff;border-radius:50%;min-width:38px;height:38px;display:grid;place-items:center;font-size:14px}.measure-section-title h2{font-size:clamp(25px,3vw,36px);letter-spacing:-.035em;margin:0 0 12px}.measure-section-title p{line-height:1.6;margin:0;max-width:720px}
.measure-workspace{padding-top:35px;border-top:1px solid #ced5ce}.measure-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:24px;align-items:start}
.measure-map-column,.measure-editor{border:1px solid #ced5ce;border-radius:12px;padding:24px;background:#fff;min-width:0}.measure-map-intro{background:#eef2eb;border-radius:8px;padding:24px}.measure-page h3{font-size:22px;margin:0 0 14px}.measure-map-intro p,.measure-editor p,#map-tools p{font-size:15px;line-height:1.65;margin:0 0 20px}
.measure-page label{display:block;font-size:14px;font-weight:700;margin:18px 0 8px}.measure-page input:not([type=checkbox]),.measure-page select{width:100%;min-width:0;border:1px solid #89978c;background:#fff;color:#193c2d;border-radius:6px;padding:11px 12px;font:inherit;font-size:16px;margin-top:8px}.measure-page button{min-height:44px}.measure-page button:not(.button){padding:9px 13px;border:1px solid #89978c;border-radius:6px;background:white;color:#193c2d;font:inherit;font-size:14px;cursor:pointer}.measure-page button:disabled{opacity:.55;cursor:not-allowed}.measure-page :focus-visible{outline:3px solid #976520;outline-offset:3px}.measure-two{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px}.measure-editor .button{width:100%;margin:16px 0}.measure-small{font-size:14px;line-height:1.65;color:#435447}
#map-status,#editor-status{font-size:14px;line-height:1.6;margin:18px 0 0;color:#364c3d}#map-tools{margin-top:24px}.measure-toolbar{display:flex;flex-wrap:wrap;gap:8px}.measure-toolbar button[aria-pressed=true]{background:#193c2d;color:#fff}#measure-map{height:440px;margin-top:18px;border-radius:8px;background:#eef2eb}#search-results button{display:block;width:100%;margin:8px 0;text-align:left}
#map-tools #drawing-status{margin:16px 0;padding:12px;border-left:3px solid #193c2d;background:#eef2eb;color:#193c2d;font-weight:700}.measure-page .measure-areas-title{margin:28px 0 0}
.measure-zones{margin-top:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.measure-zone{border:1px solid #c5d0c2;border-left:4px solid #426b43;border-radius:8px;padding:20px;background:#f6f8f1;overflow-wrap:anywhere}.measure-zone h3{font-size:20px}.measure-zone p{font-size:14px;line-height:1.6;margin:10px 0}.measure-zone button{margin:5px 8px 0 0}.measure-zone strong{font-size:24px}
#measurement-error:empty{display:none}#measurement-error{padding:16px;background:#fff0e6;color:#793e19;border-radius:8px}
.measure-review{padding-top:45px;padding-bottom:50px}.measure-checkbox{display:flex!important;align-items:flex-start;gap:12px;line-height:1.6}.measure-checkbox input{width:20px;height:20px;margin-top:2px;flex-shrink:0}#measurement-summary{font:400 15px/1.75 'Satoshi',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;padding:24px;background:#eef2eb;border:1px solid #ced5ce;border-radius:8px;margin:20px 0}.measure-disclosure{font-size:14px;line-height:1.65}.measure-entry{display:flex;align-items:center;gap:22px;padding-top:28px;padding-bottom:28px}.measure-entry p{font-size:15px}
.measure-map-intro a,.measure-disclosure a{text-decoration:underline;text-underline-offset:3px}
.measure-page .sports-checkboxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.measure-page .sports-checkboxes label{display:flex;align-items:center;gap:10px;margin:0;min-height:44px;font-size:14px}.measure-page .sports-checkboxes input[type=checkbox]{width:20px;height:20px;min-height:20px;flex-shrink:0;margin:0;padding:0}.measure-page fieldset{border:0;padding:0;margin:0 0 22px}.measure-page legend{font-weight:700;margin-bottom:12px}
@media(max-width:760px){.measure-layout{grid-template-columns:1fr}.measure-zones{grid-template-columns:1fr}.measure-heading{padding-top:28px}.measure-map-column,.measure-editor{padding:18px}.measure-map-intro{padding:18px}#measure-map{height:360px}.measure-section-title{gap:12px}.measure-entry{align-items:flex-start;flex-direction:column;gap:12px}#measurement-summary{padding:18px;font-size:14px}.measure-page .measure-heading h1{font-size:40px}}

/* Persistent measurement summary: desktop split pane, phone bottom sheet. */
#measure-commandbar,#measure-commandbar:has(#map-tools[hidden]){display:flex;gap:20px;align-items:center}
.next-area-controls{display:flex;gap:12px;flex-shrink:0;align-items:end}
.next-area-controls label{margin:0;font-size:12px;display:flex;flex-direction:column;min-width:0}
.next-area-controls select{margin-top:4px!important;min-width:150px;height:42px;padding:8px!important}
.next-area-controls #next-hole{min-width:125px}
.zone-choice{display:flex;gap:8px;align-items:center}
.zone-swatch{display:inline-block;width:18px;height:18px;border:1px solid #526457;border-radius:4px;flex-shrink:0}
#area-drawer{position:relative;inset:auto;width:var(--panel-width,360px);flex:0 0 var(--panel-width,360px);padding:0;overflow:hidden;box-shadow:none;border-left:0}
.measurement-panel-body{height:100%;overflow:auto;overscroll-behavior:contain;padding:18px}
#area-drawer h2{font-size:22px;margin:0 0 18px}
#close-areas{float:right;margin:0 0 12px 12px}
#live-totals{clear:both;background:#eef2eb;border:1px solid #c5d0c2;padding:16px;border-radius:8px}
#live-totals strong{font-size:28px;line-height:1.2;letter-spacing:-.6px}
#live-totals p{font-size:12px;line-height:1.5;margin:7px 0 0;color:#435447}
#area-drawer .measure-zone{border-left:6px solid var(--zone-colour);background:#fff;border-radius:6px}
#area-drawer .measure-zone h3{font-size:17px;margin-bottom:6px}
#area-drawer .measure-zone strong{font-size:24px}
#area-drawer .measure-zone p{font-size:12px;margin:7px 0}
#area-drawer .measure-zone label{font-size:12px;margin:10px 0 0}
#area-drawer .measure-zone select{margin-top:4px;font-size:14px;padding:8px}
#area-drawer .measure-zone button{font-size:12px;padding:7px 10px;min-height:38px}
#manual-details{margin-top:20px;padding:14px 0;border-top:1px solid #ced5ce;border-bottom:1px solid #ced5ce}
#manual-details summary{font-size:14px;font-weight:700;cursor:pointer;padding:10px 0}
#panel-resize{width:10px;flex:0 0 10px;background:#e0e6dc;border-left:1px solid #b6c2b8;border-right:1px solid #b6c2b8;cursor:col-resize;touch-action:none;position:relative}
#panel-resize:after{content:"";position:absolute;top:45%;left:3px;width:2px;height:40px;background:#647969;border-radius:2px}
#panel-resize:hover,#panel-resize:focus-visible{background:#dbea9c}
#panel-resize[hidden]{display:none}
#mobile-summary{display:none}
@media(max-width:1100px){
  #measure-commandbar,#measure-commandbar:has(#map-tools[hidden]){flex-wrap:wrap;gap:8px}
}
@media(max-width:900px){
  #area-drawer{position:absolute;inset:auto 0 0 0;width:100%;height:min(65dvh,540px);max-height:calc(100dvh - 120px);z-index:30;border-top:1px solid #89978c;box-shadow:0 -8px 20px #0002}
  #panel-resize{display:none}
  #mobile-summary{display:block;flex-shrink:0;border-radius:0;border:0;border-top:1px solid #89978c;background:#edf3de;font-weight:700;font-size:13px}
  .next-area-controls{width:100%;gap:10px}
  .next-area-controls label:first-child{flex:1}
  .zone-choice select{min-width:0;width:100%}
  .next-area-controls label{font-size:11px}
  .next-area-controls #next-hole{min-width:110px;width:110px}
  .next-area-controls select{font-size:14px!important;height:38px}
  #measure-commandbar{align-items:stretch}
}
.measure-app:not(.measure-reviewing){height:100dvh;overflow:hidden}
.measure-app:not(.measure-reviewing)>main,.measure-app:not(.measure-reviewing)>.site-header,.measure-app:not(.measure-reviewing)>.preview-bar,.measure-app:not(.measure-reviewing)>footer{display:none}
.measure-app .measure-heading,.measure-app .measure-workspace{display:none}
#measure-shell{height:100dvh;min-height:420px;display:flex;flex-direction:column;background:#eef2eb;color:#193c2d;isolation:isolate}
#measure-shell[hidden]{display:none}
.measure-topbar{display:flex;align-items:center;gap:24px;padding:12px 20px;background:#193c2d;color:#fff;flex-shrink:0}
.measure-brand{display:grid;gap:3px;min-width:170px}
.measure-brand a{color:#e4ebdd;font-size:12px;text-decoration:underline}
.measure-brand strong{font-size:19px;letter-spacing:-.5px}
.measure-brand span{font-size:12px;color:#e4ebdd}
#measure-searchbar{flex:1;display:flex;align-items:end;gap:8px;position:relative;max-width:600px}
#measure-searchbar label{margin:0;flex:1;color:#fff;font-size:12px}
#measure-searchbar input{margin-top:5px;height:42px}
#measure-searchbar #search-results{position:absolute;top:100%;left:0;right:0;z-index:50;background:#fff;color:#193c2d;box-shadow:0 8px 20px #0003}
#measure-searchbar #search-results:empty{display:none}
#measure-searchbar #search-results button{margin:0;border-radius:0}
.measure-view-actions{display:flex;gap:8px;margin-left:auto}
#measure-shell #show-review{background:#dbea9c;border-color:#dbea9c;font-weight:700}
#measure-commandbar{padding:8px 20px;background:#fff;border-bottom:1px solid #c5d0c2;flex-shrink:0}
#measure-commandbar #map-tools{margin:0}
#measure-commandbar #map-tools>p:first-child{margin:0 0 7px;font-size:12px}
#measure-commandbar #drawing-status{margin:7px 0 0;padding:5px 10px;font-size:13px;line-height:1.4}
.measure-stage{position:relative;flex:1;min-height:0;display:flex}
#map-surface{position:relative;flex:1;min-width:0;display:flex;align-items:center;justify-content:center}
#measure-shell #measure-map{position:absolute;inset:0;height:100%;width:100%;margin:0;border-radius:0}
#measure-shell .measure-map-intro{max-width:520px;padding:30px;margin:20px;border:1px solid #c5d0c2;background:#fff;box-shadow:0 12px 40px #193c2d12}
#measure-shell .measure-map-intro[hidden]{display:none}
#area-drawer{background:#fff}
#area-drawer[hidden]{display:none}
#area-drawer .measure-editor{padding:20px 0;border:0;border-radius:0}
#area-drawer .measure-zones{grid-template-columns:1fr;margin-top:14px}
#area-drawer .measure-zone{padding:16px}
#area-drawer h3{font-size:20px}
#area-drawer>label{margin-top:18px}
.measure-statusbar{padding:7px 20px;background:#193c2d;flex-shrink:0}
.measure-statusbar #map-status{color:#fff;margin:0;font-size:12px;line-height:1.5}
#return-to-map{margin-bottom:28px;position:sticky;top:8px;z-index:10}
@media(max-width:900px){
  .measure-topbar{flex-wrap:wrap;gap:10px;padding:10px 12px}
  .measure-brand{flex:1}.measure-brand span{display:none}
  #measure-searchbar{order:3;flex-basis:100%;max-width:none}
  .measure-view-actions{gap:6px}
  #measure-shell .measure-view-actions button{padding:8px;font-size:12px}
  #measure-commandbar{padding:8px 12px}
  #measure-commandbar .measure-toolbar{gap:5px}
  #measure-commandbar .measure-toolbar button{font-size:12px;padding:7px 9px;min-height:38px}
  #measure-commandbar #map-tools>p:first-child{display:none}
  #measure-commandbar #drawing-status{font-size:12px}
  .measure-statusbar{padding:6px 12px}
  #measure-shell .measure-map-intro{padding:20px;margin:12px}
}
@media(max-height:560px){
  .measure-app:not(.measure-reviewing){overflow:auto;height:auto}
  #measure-shell{height:auto;min-height:100dvh}
  .measure-stage{min-height:300px}
}
@media(max-width:600px){
  .measure-topbar{gap:8px}
  .measure-brand{min-width:0;flex:1 1 115px}
  .measure-brand strong{font-size:14px}
  #measure-shell .measure-view-actions button{font-size:11px;padding:7px 6px}
  .next-area-controls label:has(#next-hole){flex:0 0 125px}
  .measurement-panel-body{padding:12px}
  #area-drawer h2{font-size:18px;margin:0 0 10px}
  #close-areas{min-height:34px;padding:6px 10px;margin-bottom:8px}
  #live-totals{padding:10px}
  #live-totals strong{font-size:22px}
  #live-totals p{margin-top:4px}
  .measurement-panel-body>label{margin-top:8px}
}
.map-zone-details{font:14px/1.5 'Satoshi',sans-serif;color:#193c2d;max-width:270px;overflow-wrap:anywhere}
.measure-filebar{display:flex;align-items:center;gap:16px;padding:8px 20px;background:#f5f7f2;border-bottom:1px solid #c5d0c2;flex-shrink:0}
.measure-filebar>div{display:flex;gap:8px;flex-shrink:0}
.measure-filebar p{font-size:12px;line-height:1.5;margin:0;color:#344b3c}
#measure-shell .measure-filebar button{font-size:13px;padding:7px 12px}
#kml-confirm{margin:auto;padding:24px;max-width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #89978c;border-radius:8px;color:#193c2d;background:#fff}
#kml-confirm::backdrop{background:#10291e99}
#kml-confirm h2{font-size:24px;margin:0 0 16px}
#kml-confirm p{font-size:14px;line-height:1.6;margin:12px 0}
#kml-confirm .kml-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px;position:sticky;bottom:-24px;padding:12px 0;background:#fff}
#kml-import-warnings{font-size:13px;line-height:1.5;padding-left:20px}
#kml-import-warnings li{margin:8px 0}
.kml-import-area{border:1px solid #c5d0c2;border-radius:6px;padding:12px;margin:12px 0}
.kml-import-area label{display:block;font-size:13px;overflow-wrap:anywhere}
.kml-import-area>label:first-child{font-weight:700;font-size:14px;display:flex;align-items:flex-start;gap:8px;margin:0}
.kml-import-area input[type=checkbox]{width:18px;height:18px;min-height:18px;flex:0 0 18px;margin:2px 0 0;padding:0}
.kml-import-area select{display:block;width:100%;margin:4px 0 8px;min-height:40px}
#kml-confirm .kml-import-area p{font-size:12px}
#kml-import-error{color:#8b251c;font-weight:700}
@media(max-width:600px){.measure-filebar{align-items:flex-start;gap:8px;padding:7px 12px}.measure-filebar p{font-size:12px}#measure-shell .measure-filebar button{padding:7px 8px;font-size:12px}.measure-filebar>div{gap:4px}}
.measure-page .map-zone-details h3{font-size:18px;margin:0 0 10px}
.map-zone-details p{margin:5px 0}
.map-zone-details .map-zone-note{font-size:12px;color:#435447;margin-top:12px}
#measure-shell #draw-area:not(:disabled),#measure-shell #start-first-area{background:#193c2d;color:#fff;border:2px solid #193c2d;font-weight:700;box-shadow:0 2px 0 #10291e}
#measure-shell #draw-area[aria-pressed=true]{opacity:1;background:#dbea9c;color:#193c2d;border-color:#193c2d}
#draw-start-prompt{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);width:min(350px,calc(100% - 32px));padding:18px 20px;background:#fff;border:1px solid #89978c;border-top:4px solid #193c2d;border-radius:8px;box-shadow:0 8px 24px #0002;z-index:10}
#draw-start-prompt[hidden]{display:none}
#draw-start-prompt strong{font-size:18px}
#draw-start-prompt p{font-size:14px;line-height:1.5;margin:8px 0 12px}
#draw-start-prompt button{width:100%}
@media(max-width:600px){#draw-start-prompt{bottom:12px;padding:12px 14px}#draw-start-prompt strong{font-size:16px}#draw-start-prompt p{font-size:13px;margin:6px 0 10px}}

/* Map-first phone workspace. Dialogs overlay rather than shrink the map. */
#open-mobile-tools,#mobile-zone-choice{display:none}
#mobile-plan-tools{width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto auto 0;padding:0 16px max(16px,env(safe-area-inset-bottom));border:1px solid #89978c;border-radius:16px 16px 0 0;background:#f5f7f2;color:#193c2d;overflow:auto;overscroll-behavior:contain}
#mobile-plan-tools::backdrop{background:#10291e88}
.mobile-tools-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:0;z-index:2;padding:14px 0;background:#f5f7f2;border-bottom:1px solid #c5d0c2}
.mobile-tools-heading h2{font-size:22px;margin:0}
#mobile-tools-body{padding-top:16px}
#mobile-plan-tools #measure-searchbar{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
#mobile-plan-tools #measure-searchbar label{color:#193c2d;min-width:160px}
#mobile-plan-tools #measure-searchbar input{font-size:16px}
#mobile-plan-tools #search-results{position:static;width:100%;flex-basis:100%;box-shadow:none;max-height:180px;overflow:auto}
#mobile-plan-tools #map-status{margin:10px 0 20px;font-size:13px}
#mobile-plan-tools .next-area-controls{margin:18px 0;flex-wrap:wrap}
#mobile-plan-tools .next-area-controls select{font-size:16px!important;min-height:44px}
.mobile-secondary-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
#mobile-plan-tools .measure-filebar{padding:16px 0;display:block;border-top:1px solid #c5d0c2;border-bottom:0}
#mobile-plan-tools .measure-filebar p{margin-top:10px;font-size:13px}
#mobile-start-draw{width:100%;margin-top:12px;background:#193c2d!important;color:#fff!important;font-weight:700!important}
.measure-page button.measure-danger{color:#922f25;border-color:#b9695f;background:#fff5f1;font-weight:700;min-height:44px}
.plan-removal-actions{display:flex;gap:8px;margin:12px 0;flex-wrap:wrap}
#area-drawer #delete-selected-zone{width:100%;margin:0 0 12px;min-height:44px}
#delete-selected-zone[hidden]{display:none}
#remove-plan-confirm{margin:auto;width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;background:#fff;color:#193c2d;border:1px solid #89978c;border-radius:12px;padding:22px}
#remove-plan-confirm::backdrop{background:#10291e99}
#remove-plan-confirm h2{font-size:24px;margin:0 0 16px}
#remove-plan-confirm p{font-size:14px;line-height:1.6;margin:12px 0;overflow-wrap:anywhere}
.remove-plan-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;margin-top:20px}
#plan-removal-undo{position:absolute;top:64px;left:50%;transform:translateX(-50%);z-index:12;display:flex;gap:16px;align-items:center;max-width:calc(100% - 24px);padding:8px 12px;border:1px solid #89978c;border-radius:8px;background:#fff;box-shadow:0 4px 20px #0002;font-size:14px}
#plan-removal-undo[hidden]{display:none}
@media(max-width:900px){
  .measure-app:not(.measure-reviewing){height:100dvh;overflow:hidden}
  #measure-shell{height:100dvh;min-height:0;position:relative}
  .measure-topbar{order:0;flex-wrap:nowrap;gap:8px;padding:8px 10px}
  .measure-brand{flex:1;min-width:0}
  .measure-brand strong{font-size:13px;white-space:nowrap}
  .measure-brand a{font-size:11px}
  .measure-view-actions{margin:0;gap:6px}
  #measure-shell #show-areas{display:none}
  #measure-shell #open-mobile-tools{display:block;font-size:12px;padding:7px 9px}
  #measure-shell #show-review{font-size:12px;padding:7px 9px}
  .measure-stage{order:1;min-height:0;position:static}
  #map-surface{position:relative;overflow:hidden}
  #measure-commandbar,#measure-commandbar:has(#map-tools[hidden]){order:2;padding:8px 10px 4px;display:block}
  #measure-commandbar:has(#map-tools[hidden]){display:none}
  #measure-commandbar .measure-toolbar{display:flex;flex-wrap:nowrap;gap:8px}
  #measure-commandbar .measure-toolbar button{min-height:44px;font-size:14px;padding:8px;min-width:0}
  #measure-shell #mobile-zone-choice{display:block;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;border-left:5px solid var(--zone-colour)}
  #measure-commandbar #draw-area{flex:0 0 112px}
  #measure-shell[data-drawing=true] #draw-area,#measure-shell[data-drawing=true] #mobile-zone-choice{display:none}
  #measure-shell:not([data-drawing=true]) #finish-draw,#measure-shell:not([data-drawing=true]) #undo-point,#measure-shell:not([data-drawing=true]) #cancel-draw{display:none}
  #measure-shell[data-drawing=true] .measure-toolbar button{flex:1}
  #measure-commandbar #map-tools>p:first-child{display:none}
  #measure-commandbar #drawing-status{max-height:40px;overflow:auto;overscroll-behavior:contain;margin:5px 0 0;padding:2px 6px;font-size:12px;line-height:18px}
  #mobile-summary{order:3;min-height:44px!important;padding:8px 12px max(8px,env(safe-area-inset-bottom))!important;font-size:13px!important}
  .measure-statusbar{display:none}
  #draw-start-prompt{display:none}
  #area-drawer{inset:auto 0 44px;height:min(70dvh,560px);max-height:calc(100dvh - 110px);border-radius:16px 16px 0 0}
  #close-areas{min-height:44px}
  #measure-shell .measure-map-intro{max-height:100%;overflow:auto;margin:0;border:0;border-radius:0;padding:20px;box-shadow:none}
}
