.gp-app { height:100dvh; }
.gp-toolbar { flex-wrap:wrap; gap:12px; flex-shrink:0; }
.gp-toolbar > div { flex-wrap:wrap; gap:8px; }
.gp-toolbar button,.gp-toolbar input { min-height:40px; }
.gp-stage { min-width:0; }
.gp-workspace { min-height:0; }
.gp-sidebar button:focus-visible,.gp-toolbar :focus-visible,.gp-stage:focus-visible { outline:3px solid #6ee7b7; outline-offset:2px; }
.gp-pick-notice { position:absolute; top:12px; left:50%; transform:translateX(-50%); z-index:15; width:max-content; max-width:calc(100% - 44px); padding:10px 14px; border:1px solid #34d399; border-radius:12px; background:#0f172a; color:#d1fae5; font-size:13px; box-shadow:0 4px 18px #0005; }
.gp-pick-notice button { margin-left:10px; text-decoration:underline; min-height:36px; }
.gp-mobile-shade { display:none; }
.gp-stage > div > .shrink-0 {flex-shrink:0;}
@media(max-width:1023px) {
 .gp-toolbar { padding:8px 12px; gap:6px; }
 .gp-toolbar > div:first-child { width:100%; justify-content:space-between; gap:4px; }
 .gp-toolbar .gp-wordmark { display:none; }
 .gp-toolbar > div > * { margin-left:0!important; }
 .gp-toolbar > div:nth-child(2) { gap:10px; }
 .gp-toolbar > div:nth-child(2) > div { gap:4px; margin:0; }
 .gp-toolbar input[type=number] { width:58px; padding:6px; }
 .gp-toolbar > div:last-child { gap:6px; margin-left:auto; }
 .gp-sidebar { position:absolute; left:0; top:0; bottom:0; z-index:30; }
 .gp-sidebar aside { max-width:calc(100vw - 76px); }
 .gp-sidebar > button { top:24px; right:-70px; width:70px; height:46px; transform:none!important; }
 .gp-sidebar > button span {display:none;}
 .gp-sidebar > button::after {content:'Plants';font-size:12px;font-weight:700;}
 .gp-sidebar > button[aria-expanded=true]::after {content:'Close';}
 .gp-mobile-shade { display:block; position:absolute; inset:0; background:#0007; z-index:25; }
 .gp-properties { max-width:calc(100vw - 44px); }
 .gp-stage { width:100%; }
}
@media(max-width:600px) {
 .gp-toolbar > div:nth-child(2) {display:grid;grid-template-columns:1fr 1fr;width:100%;gap:6px 12px;}
 .gp-toolbar > div:nth-child(2) > div {justify-content:space-between;}
 #gv-map-a {grid-column:1;grid-row:1;}
 #gv-map-b {grid-column:2;grid-row:1;}
 .gp-toolbar .gv-map-btn {min-width:0;width:100%;}
 .gp-toolbar > div:last-child {width:100%;justify-content:flex-end;}
}
@media(max-width:400px) {
 .gp-toolbar .bpc-back { padding:8px; font-size:11px; }
 .gp-toolbar > div:first-child { gap:2px; }
 .gp-toolbar > div:first-child > div { gap:0; }
 .gp-toolbar > div:last-child { width:100%; justify-content:flex-end; }
}
