/* 7.9.25 – Schritt 1: kompakte Oberfläche, keine Änderung an der Leaflet-Karte */
.gfrpp-compact{padding:12px!important;max-width:100%;box-sizing:border-box;}
.gfrpp-compact *, .gfrpp-compact *::before,.gfrpp-compact *::after{box-sizing:border-box;}
.gfrpp-compact .gfcompact-heading{margin:0 0 10px;}
.gfrpp-compact .gfcompact-heading h2{margin:0 0 4px;font-size:20px;line-height:1.25;color:#153e29;}
.gfrpp-compact .gfcompact-heading p{font-size:13px;color:#526070;margin:0;}
.gfrpp-compact .gfcompact-main{display:block!important;margin:0 0 8px!important;padding:10px!important;border-radius:10px!important;background:#f7faf8!important;border:1px solid #d6e7db!important;}
.gfrpp-compact .gfcompact-sectiontitle{display:block;font-size:14px;margin:0 0 8px;color:#163e2c;}
.gfrpp-compact .gfcompact-pickrow,.gfrpp-compact .gfcompact-navrow,.gfrpp-compact .gfcompact-buttonrow{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:6px 0;}
.gfrpp-compact .gfcompact-pickrow label{flex:1 1 220px;display:block!important;min-width:0;font-size:13px!important;}
.gfrpp-compact #gfrpp-route-search,.gfrpp-compact #gfrpp-route-load{width:100%;min-width:0!important;max-width:100%;}
.gfrpp-compact .gfcompact-navrow button,.gfrpp-compact .gfcompact-pickrow button{min-height:38px;}
.gfrpp-compact #gfrpp-nav-start{background:#1e603d!important;color:#fff!important;border:0!important;font-weight:650;}
.gfrpp-compact #gfrpp-own-route-btn{border:1px solid #2f704a!important;font-weight:600;padding:9px 13px;}
.gfrpp-compact #gfrpp-own-route-wrap{margin:7px 0 0!important;}
.gfrpp-compact #gfrpp-own-route-panel{margin-top:7px!important;}
.gfrpp-compact .gfcompact-upload{margin:0 0 7px!important;padding:8px!important;background:#fff;border:1px solid #e2e8f0;border-radius:10px;}
.gfrpp-compact .gfcompact-upload > .gfrpp-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;}
.gfrpp-compact .gfcompact-file-label{font-size:13px;flex:1 1 210px;min-width:0;}
.gfrpp-compact #gfrpp-file{display:block;max-width:100%;width:100%;font-size:12px;margin-top:4px;}
.gfrpp-compact #gfrpp-run{min-height:40px;padding:9px 12px!important;background:#1e603d!important;color:#fff!important;}
.gfrpp-compact .gfcompact-fold{width:100%;min-width:0;border:1px solid #d9e1e5;border-radius:9px;background:#fff;margin:7px 0;padding:0!important;}
.gfrpp-compact .gfcompact-fold>summary{cursor:pointer;list-style-position:inside;font-weight:600;font-size:13px;color:#22523b;padding:11px 12px;line-height:1.4;}
.gfrpp-compact .gfcompact-fold[open]>summary{border-bottom:1px solid #e7ecef;}
.gfrpp-compact .gfcompact-fold-content{padding:8px 10px 12px;min-width:0;}
.gfrpp-compact #gfcompact-manage{margin-top:9px;}
.gfrpp-compact #gfcompact-manage input{min-width:0!important;max-width:100%;}
.gfrpp-compact #gfcompact-pois .gfrpp-ai{margin:8px 0!important;padding:8px!important;border:1px solid #e5e7eb!important;}
.gfrpp-compact #gfcompact-pois .gfcompact-poi-options{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.gfrpp-compact #gfcompact-pois fieldset{width:100%;min-width:0;padding:6px;border:1px solid #e5e7eb;border-radius:7px;}
.gfrpp-compact #gfcompact-pois fieldset label{white-space:normal;}
.gfrpp-compact #gfcompact-pois details{margin:6px 0!important;}
.gfrpp-compact #gfcompact-pois .gfrpp-badges{gap:5px;}
.gfrpp-compact #gfcompact-pois .gfrpp-badge{padding:6px 7px;font-size:12px;}
.gfrpp-compact #gfcompact-tools{margin:8px 0 7px;}
.gfrpp-compact #gfrppx-toolbar.gfcompact-rehomed-toolbar{display:flex!important;gap:7px!important;align-items:center!important;flex-wrap:wrap!important;border:0!important;padding:0!important;margin:3px 0!important;background:transparent!important;}
.gfrpp-compact #gfrppx-toolbar input{min-width:0!important;max-width:100%;}
.gfrpp-compact #gfcompact-voice{margin-top:12px;}
.gfrpp-compact #gfcompact-voice .gfrpp-voice-assistant{margin:0!important;}
.gfrpp-compact #gfrpp-map{margin:8px 0 10px!important;}
.gfrpp-compact .gfrpp-list{margin-top:8px;}
.gfrpp-compact .gfrpp-list:not([open]){max-height:none;padding:10px;}
.gfrpp-compact button{font-family:inherit;}
@media(max-width:600px){
 .gfrpp-compact{padding:8px!important;}
 .gfrpp-compact .gfcompact-heading h2{font-size:18px;}
 .gfrpp-compact .gfcompact-pickrow label{flex-basis:100%;}
 .gfrpp-compact #gfrpp-route-refresh{font-size:12px;padding:7px 9px;}
 .gfrpp-compact .gfcompact-navrow{align-items:stretch;}
 .gfrpp-compact .gfcompact-upload .gfcompact-file-label{flex-basis:100%;}
 .gfrpp-compact #gfrpp-run{width:100%;}
 .gfrpp-compact #gfcompact-tools button{max-width:100%;}
}

/* 7.9.26 – Schritt 2: drei Wege, eine Routenplanung */
.gfrpp-wrap.gfstep2 .gfstep2-workflow{display:block;min-width:0;width:100%;}
.gfrpp-wrap.gfstep2 .gfstep2-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:6px 0 8px;}
.gfrpp-wrap.gfstep2 .gfstep2-tab{min-height:45px;border:1px solid #cedbd1;background:#fff;border-radius:9px;color:#244333;font:600 13px/1.3 inherit;cursor:pointer;padding:9px 6px;text-align:center;white-space:normal;}
.gfrpp-wrap.gfstep2 .gfstep2-tab[aria-selected="true"]{background:#205b3b;color:#fff;border-color:#205b3b;box-shadow:inset 0 -2px rgba(0,0,0,.09);}
.gfrpp-wrap.gfstep2 .gfstep2-tab:focus-visible{outline:3px solid #e9bb3a;outline-offset:2px;}
.gfrpp-wrap.gfstep2 .gfstep2-mode-panel[hidden],.gfrpp-wrap.gfstep2 #gfstep2-search-fallback[hidden]{display:none!important;}
.gfrpp-wrap.gfstep2 .gfstep2-hint{margin:4px 0 10px;font-size:12px;color:#526457;}
.gfrpp-wrap.gfstep2 .gfstep2-mode-panel{width:100%;min-width:0;}
.gfrpp-wrap.gfstep2 #gfstep2-panel-search #gf-route-browser{width:100%;max-width:none;flex-basis:auto;padding:9px;background:#fff;}
.gfrpp-wrap.gfstep2 #gfstep2-panel-search #gf-route-results{max-height:230px;overflow-y:auto;}
.gfrpp-wrap.gfstep2 #gfstep2-search-fallback label{display:block;width:100%;min-width:0;}
.gfrpp-wrap.gfstep2 #gfstep2-search-fallback select,.gfrpp-wrap.gfstep2 #gfstep2-search-fallback input{max-width:100%;min-width:0;width:100%;}
.gfrpp-wrap.gfstep2 .gfstep2-refresh{display:block;margin:7px 0 4px;background:#fff;color:#205b3b;font-size:12px;padding:7px 10px;border:1px solid #d7e2db;border-radius:7px;}
.gfrpp-wrap.gfstep2 .gfstep2-form{border:0;background:transparent;padding:0;margin:0;}
.gfrpp-wrap.gfstep2 #gfstep2-panel-upload{background:#fff;border:1px solid #dfebe1;padding:10px;border-radius:10px;}
.gfrpp-wrap.gfstep2 #gfstep2-panel-upload>.gfrpp-row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;}
.gfrpp-wrap.gfstep2 #gfstep2-panel-upload .gfcompact-file-label{flex:1 1 240px;font-weight:650;}
.gfrpp-wrap.gfstep2 #gfstep2-panel-upload #gfrpp-run{min-height:44px;white-space:normal;flex:0 1 auto;}
.gfrpp-wrap.gfstep2 .gfstep2-file-status{font-size:12px;color:#526457;margin:5px 0 0;overflow-wrap:anywhere;}
.gfrpp-wrap.gfstep2 .gfstep2-draw-hint{font-size:13px;margin:6px 0;color:#53625a;}
.gfrpp-wrap.gfstep2 #gfstep2-panel-draw #gfrpp-own-route-wrap{margin:4px 0 7px!important;}
.gfrpp-wrap.gfstep2 #gfstep2-panel-draw #gfrpp-own-route-panel{max-width:100%;}
.gfrpp-wrap.gfstep2 #gfcompact-pois{margin-top:9px;}
.gfrpp-wrap.gfstep2 .gfstep2-selected{font-size:12px;color:#25543b;margin:10px 0 5px;min-height:18px;}
.gfrpp-wrap.gfstep2 #gfstep2-nav{margin-top:10px;padding:9px 0 4px;border-top:1px solid #d8e6da;}
.gfrpp-wrap.gfstep2 #gfstep2-nav #gfrpp-nav-start{min-height:43px;padding:9px 14px;border-radius:8px;}
.gfrpp-wrap.gfstep2 #gfstep2-nav #gfrpp-nav-status{font-size:12px;flex:1 1 140px;min-width:0;}
@media(max-width:600px){
 .gfrpp-wrap.gfstep2 .gfstep2-tabs{gap:4px;}
 .gfrpp-wrap.gfstep2 .gfstep2-tab{min-height:45px;font-size:12px;padding:7px 4px;}
 .gfrpp-wrap.gfstep2 #gfstep2-panel-upload #gfrpp-run{flex:1 1 100%;}
 .gfrpp-wrap.gfstep2 #gfstep2-nav #gfrpp-nav-start{flex:1 1 auto;}
}

/* 7.9.31: old shortcode toolbar has been re-bound to the active planner. */
.gfrpp-compact #gfrppx-toolbar .gfrppx-address-search {position:relative;display:flex;flex:1 1 210px;gap:6px;flex-wrap:wrap;align-items:center;}
.gfrpp-compact #gfrppx-toolbar #gfrppx-search{flex:1 1 160px;min-width:0!important;width:auto!important;max-width:100%;padding:7px 9px;border:1px solid #bbc9be;border-radius:7px;}
.gfrpp-compact #gfrppx-toolbar #gfrppx-mode{width:auto;min-width:100px;max-width:100%;padding:7px;border:1px solid #bbc9be;border-radius:7px;}
.gfrpp-compact #gfrppx-toolbar #gfrppx-tool-status{flex:1 1 100%;display:block;font-size:12px;color:#305c48;background:#f4f8f4;border-radius:6px;padding:7px 8px;}
.gfrpp-compact #gfrppx-toolbar .gfrppx-suggest{position:absolute;top:100%;left:0;z-index:10000;max-width:100%;width:330px;background:white;border:1px solid #c9d5ce;border-radius:6px;max-height:210px;overflow:auto;}
@media(max-width:600px){.gfrpp-compact #gfrppx-toolbar .gfrppx-address-search{flex-basis:100%;}.gfrpp-compact #gfrppx-toolbar #gfrppx-search{flex:1 1 130px;}}

/* 7.9.40: selected editable waypoint, touch-friendly existing toolbar controls. */
.gfrpp-wrap #gfrpp-map .leaflet-marker-icon.gfrppx-waypoint-selected{filter:drop-shadow(0 0 5px #f59e0b) drop-shadow(0 0 3px #fff);outline:3px solid #f59e0b;outline-offset:2px;border-radius:13px;}
.gfrpp-compact #gfrppx-toolbar #gfrppx-remove-point,.gfrpp-compact #gfrppx-toolbar #gfrppx-undo,.gfrpp-compact #gfrppx-toolbar #gfrppx-redo{min-height:40px;white-space:normal;}
.gfrpp-wrap #gfrppx-toolbar button:focus-visible{outline:3px solid #f59e0b;outline-offset:2px;}
