/* Responsive and fullscreen behaviour. */
@media (min-width:700px){.aircaptain-widget{padding:18px}.grid{grid-template-columns:1fr 1fr}.row2{grid-template-columns:1fr 1fr}.wide{grid-column:1/-1}.card{max-width:720px;margin:auto}.map-card{height:430px}.head h1{font-size:20px}}
    @media (max-width:380px){.tool-title{font-size:11px}.mode{font-size:10px}.pill button{padding:7px 7px}.full-btn{padding:9px 9px}}
  
    /* v14 fullscreen mobile layout: address left, tools right */
    .map-card.fullscreen{padding-top:calc(var(--safe-top) + 72px)}
    .map-card.fullscreen .address-wrap{position:absolute;left:8px;top:calc(8px + var(--safe-top));width:calc(50% - 12px);z-index:700;margin:0;background:rgba(255,255,255,.96);border:3px solid #343a34;box-shadow:0 5px 18px rgba(0,0,0,.16);padding:0;font-size:0;font-weight:1000;text-transform:uppercase;letter-spacing:.04em;color:#566056;overflow:visible}
    .map-card.fullscreen .address-wrap input{height:48px;margin-top:0;border:0;background:white;font-size:13px;padding:8px 58px 8px 8px;font-weight:900;letter-spacing:0;text-transform:none}
    .map-card.fullscreen .address-meta{right:10px;bottom:10px;font-size:9px;letter-spacing:.08em}
    .map-card.fullscreen .suggestions{top:calc(100% + 4px);max-height:min(260px,42dvh);font-size:12px}
    .map-card.fullscreen .map-tools{left:calc(50% + 4px);right:8px;top:calc(8px + var(--safe-top));grid-template-columns:1fr 1fr;gap:6px}
    .map-card.fullscreen .tool-btn{grid-template-columns:34px 1fr 30px;min-height:57px;border-width:3px}
    .map-card.fullscreen .tool-btn .tool-action{font-size:30px;border-right-width:3px}
    .map-card.fullscreen .tool-btn.active .tool-action{font-size:34px}
    .map-card.fullscreen .tool-title{font-size:12px;line-height:1.02}
    .map-card.fullscreen .tool-sub{font-size:9px}
    .map-card.fullscreen .tool-count{font-size:14px}
    .map-card.fullscreen .map-float{top:calc(80px + var(--safe-top))}
    .map-card.fullscreen .map-actions{top:calc(140px + var(--safe-top))}
    @media (max-width:430px){
      .map-card.fullscreen{padding-top:calc(var(--safe-top) + 132px)}
      .map-card.fullscreen .address-wrap{left:8px;right:8px;width:auto}
      .map-card.fullscreen .map-tools{left:8px;right:8px;top:calc(72px + var(--safe-top))}
      .map-card.fullscreen .map-float{top:calc(144px + var(--safe-top))}
      .map-card.fullscreen .map-actions{top:calc(202px + var(--safe-top))}
    }


    /* v18 refinements */
    .map-type-select{position:relative;pointer-events:auto;display:inline-block}.map-type-btn{height:48px;min-width:112px;border:3px solid #343a34;background:rgba(255,255,255,.96);box-shadow:0 5px 18px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 12px 0 14px;color:#343a34;font-size:13px;font-weight:1000;text-transform:uppercase;letter-spacing:.08em}.map-type-btn::after{content:'▾';font-size:12px;font-weight:1000}.map-type-menu{position:absolute;left:0;top:calc(100% + 5px);display:none;min-width:100%;background:rgba(255,255,255,.98);border:3px solid #343a34;box-shadow:0 8px 22px rgba(0,0,0,.18);padding:4px;z-index:800}.map-type-select.open .map-type-menu{display:grid}.map-type-menu button{border:0;background:transparent;color:#343a34;text-align:left;padding:10px 12px;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.08em}.map-type-menu button.active{background:var(--atg-dark);color:white}
    .map-card.fullscreen .tool-btn,.map-card.fullscreen .tool-btn.active{min-height:58px;margin-bottom:0;transform:none;border-width:3px}
    .map-card.fullscreen .tool-title{font-size:16px;line-height:1.05}
    .map-card.fullscreen .tool-sub{font-size:10px}
    .map-card.fullscreen .tool-count{font-size:18px}
    .map-card.fullscreen .tool-btn.active::after{display:none!important}
    .map-card.fullscreen .map-tools{align-items:stretch;gap:8px}
    .map-card.fullscreen .map{height:100%;border:5px solid var(--active-tool-color,#343a34);box-sizing:border-box}
    @media (max-width:640px){.map-card.fullscreen .tool-title{font-size:13px}.map-card.fullscreen .tool-count{font-size:15px}.map-card.fullscreen .tool-btn{grid-template-columns:38px 1fr 32px}}

    /* iOS zooms focused controls below 16px. Keep the mobile form at a stable scale. */
    @media (max-width:699px){
      .aircaptain-widget input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
      .aircaptain-widget textarea,
      .aircaptain-widget select{font-size:16px}
    }


    /* v19 mobile polish */
    .address-wrap input{padding-right:34px}
    .address-wrap:not(.fullscreen .address-wrap) .address-meta{top:auto;bottom:13px;transform:none}
    @media (max-width:640px){
      .tool-title{font-size:13px;line-height:1.05}
      .tool-sub{font-size:10px}
      .tool-count{font-size:15px}
      .tool-btn{grid-template-columns:42px 1fr 32px;min-height:50px}
      .tool-btn .tool-action{font-size:32px}
      .tool-btn.active{min-height:54px}
    }

    /* v21 fullscreen mobile: stack address and tools until there is enough width for 2-column controls */
    @media (max-width:640px){
      .map-card.fullscreen{padding-top:calc(var(--safe-top) + 132px)}
      .map-card.fullscreen .address-wrap{left:8px;right:8px;top:calc(8px + var(--safe-top));width:auto}
      .map-card.fullscreen .map-tools{left:8px;right:8px;top:calc(72px + var(--safe-top));grid-template-columns:1fr 1fr;gap:8px}
      .map-card.fullscreen .map-float{top:calc(144px + var(--safe-top))}
      .map-card.fullscreen .map-actions{top:calc(202px + var(--safe-top))}
      .map-card.fullscreen .tool-btn{grid-template-columns:40px 1fr 34px;min-height:58px}
      .map-card.fullscreen .tool-title{font-size:13px;line-height:1.03}
      .map-card.fullscreen .tool-sub{font-size:9px}
    }
