.guia-rota__bar{position:sticky;bottom:0;z-index:999;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(0,0,0,.08);border-radius:12px;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.08);margin-top:18px}
.guia-rota__bar-title{display:block;font-size:14px}
.guia-rota__count{font-size:13px;opacity:.85}
.guia-rota .guia-rota__btn{appearance:none;border:1px solid rgba(0,0,0,.15);background:#fff;padding:10px 12px;border-radius:10px;cursor:pointer;font-size:14px;line-height:1;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;color:#222}
.guia-rota .guia-rota__btn:hover,.guia-rota .guia-rota__btn:focus{background:#fff;border-color:rgba(0,0,0,.22);color:#222}
.guia-rota__btn[disabled]{opacity:.45;cursor:not-allowed}
.guia-rota .guia-rota__btn.guia-rota__btn--primary{background:#c55553 !important;color:#fff !important;border-color:#c55553 !important}
.guia-rota .guia-rota__btn.guia-rota__btn--primary:hover,.guia-rota .guia-rota__btn.guia-rota__btn--primary:focus{background:#fff !important;color:#c55553 !important;border-color:#c55553 !important}

.guia-rota__check{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:13px;user-select:none}
.guia-rota__check input{transform:translateY(1px)}
.guia-rota__hint{display:inline-flex;align-items:center;font-size:11px;padding:2px 6px;border-radius:999px;background:rgba(197,85,83,.10);color:#c55553}

.guia-rota__modal{position:fixed;inset:0;z-index:1000;display:none}
.guia-rota__modal.is-open{display:block}
.guia-rota__modal-overlay{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.guia-rota__modal-card{position:relative;width:min(760px,calc(100% - 28px));margin:7vh auto 0;background:#fff;border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.25);overflow:hidden;max-height:86vh;display:flex;flex-direction:column}
.guia-rota__modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid rgba(0,0,0,.08)}
.guia-rota__modal-title{margin:0;font-size:16px}
.guia-rota__icon-btn{border:none;background:transparent;cursor:pointer;font-size:18px;line-height:1;padding:6px 8px;border-radius:10px}
.guia-rota__icon-btn:hover{background:rgba(0,0,0,.06)}
.guia-rota__modal-body{padding:16px;overflow:auto;-webkit-overflow-scrolling:touch;flex:1 1 auto}
.guia-rota__label{display:block;font-size:13px;margin-bottom:6px}
.guia-rota__input{width:100%;box-sizing:border-box;padding:12px;border-radius:10px;border:1px solid rgba(0,0,0,.18);font-size:14px}
.guia-rota__ac-wrap{position:relative}
.guia-rota__ac{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.14);max-height:260px;overflow:auto;z-index:30;display:block !important;padding:4px 0}
/* Autocomplete: 1 sugestão por linha, sem “cards”/bordas por item (evita CSS do tema/Elementor) */
.guia-rota__ac-item{appearance:none !important;-webkit-appearance:none !important;border:0 !important;border-radius:0 !important;outline:0 !important;box-shadow:none !important;box-sizing:border-box !important;display:block !important;width:100% !important;max-width:100% !important;text-align:left !important;background:transparent !important;padding:10px 14px !important;cursor:pointer !important;margin:0 !important;float:none !important}
.guia-rota__ac-item + .guia-rota__ac-item{border-top:1px solid rgba(0,0,0,.06) !important}
.guia-rota__ac-primary{display:block;font-size:13px;line-height:1.2;color:#222;font-weight:600}
.guia-rota__ac-secondary{display:block;font-size:12px;line-height:1.2;color:#777;margin-top:3px}
.guia-rota__ac-item:hover,.guia-rota__ac-item:focus{background:rgba(0,0,0,.03) !important}
.guia-rota__ac-item:active{background:rgba(0,0,0,.06) !important}
.guia-rota__actions{display:flex;justify-content:space-between;gap:10px;margin-top:12px;flex-wrap:wrap}
.guia-rota__help{margin:10px 0 0;font-size:13px;color:rgba(0,0,0,.75)}
.guia-rota__loading{font-size:14px;padding:10px 0}
.guia-rota__map-wrap{margin:10px 0 14px}
.guia-rota__map-summary{font-size:13px;opacity:.85;margin:0 0 10px}
.guia-rota__map{width:100%;height:280px;border:1px solid rgba(0,0,0,.08);border-radius:12px;overflow:hidden;background:#f6f6f6;pointer-events:none}
.guia-rota__marker{width:26px;height:26px;border-radius:999px;background:#c55553;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.25)}
.guia-rota__marker--start{background:#c55553}
.guia-rota__list{margin:0;padding-left:18px}
.guia-rota__route-meta{font-size:12px;opacity:1;margin-top:4px;color:#777}
.guia-rota__route-address{font-size:12px;opacity:1;margin-top:4px;color:#777}
.guia-rota__route-links{font-size:12px;opacity:1;margin-top:4px}
.guia-rota__whatsapp{margin-top:12px}
.guia-rota__item--selected{outline:2px solid rgba(17,17,17,.15);outline-offset:4px;border-radius:12px}

/* Sidebar flutuante (site inteiro) */
.guia-rota__sidebar{position:fixed;right:18px;bottom:18px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none}
.guia-rota__sidebar *{pointer-events:auto}
.guia-rota__fab{appearance:none;border:none;background:#c55553;color:#fff;padding:12px 14px;border-radius:999px;cursor:pointer;font-size:14px;line-height:1;box-shadow:0 10px 28px rgba(0,0,0,.22)}
.guia-rota__sidebar:not(.is-collapsed) .guia-rota__fab{display:none}
.guia-rota__sidebar-panel{width:min(360px,calc(100vw - 36px));max-height:70vh;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(0,0,0,.10);border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.20);overflow:hidden}
.guia-rota__sidebar.is-collapsed .guia-rota__sidebar-panel{display:none}
.guia-rota__sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 12px;border-bottom:1px solid rgba(0,0,0,.08)}
.guia-rota__sidebar-body{padding:12px;display:flex;flex-direction:column;gap:10px}
.guia-rota__sidebar-meta{display:flex;justify-content:space-between;font-size:12px;opacity:.85}
.guia-rota__sidebar-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;overflow:auto;max-height:38vh}
.guia-rota__sidebar-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 10px;border:1px solid rgba(0,0,0,.08);border-radius:12px;background:#fff}
.guia-rota__sidebar-item-title{font-size:13px;font-weight:600;line-height:1.2}
.guia-rota__sidebar-item-address{font-size:12px;line-height:1.2;color:#777;margin-top:4px}
.guia-rota__sidebar-item-links{margin-top:6px;font-size:12px;opacity:.9}
.guia-rota__sidebar-item-links a{text-decoration:underline;color:#c55553 !important}
.guia-rota__sidebar-item-links a:hover{opacity:.9}

.guia-rota__link{color:#c55553 !important;text-decoration:underline}
.guia-rota__link:hover{opacity:.9}
.guia-rota__sidebar-remove{appearance:none;border:none;background:transparent;cursor:pointer;font-size:16px;line-height:1;padding:6px 8px;border-radius:10px}
.guia-rota__sidebar-remove:hover{background:rgba(0,0,0,.06)}
.guia-rota__sidebar-empty{font-size:13px;opacity:.75;padding:10px}
.guia-rota__sidebar-msg{margin:0;font-size:12px;color:#c55553;min-height:16px}
.guia-rota__sidebar-cta{width:100%}

@media (max-width: 480px){
  .guia-rota__sidebar{right:12px;bottom:12px}
  .guia-rota__sidebar-panel{width:calc(100vw - 24px)}
}


/* Rodapé fixo (sitewide) */
.guia-rota__footerbar{position:fixed;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-top:1px solid rgba(0,0,0,.10);background:#fff;box-shadow:0 -10px 24px rgba(0,0,0,.10);cursor:pointer}
.guia-rota__footerbar-info{background:transparent;text-align:left;flex:1 1 auto;padding:6px 6px;color:#777}
.guia-rota__footerbar-text{display:block;font-size:13px;line-height:1.25;color:#777}
.guia-rota__footerbar-count{display:block;font-size:12px;opacity:1;margin-top:2px;color:#9a9a9a}
.guia-rota__footerbar-cta{white-space:nowrap;cursor:pointer}

/* Wizard pages */
.guia-rota__wizard{margin:0}
.guia-rota__wizard-title{margin:0 0 12px;font-size:18px}

@media (max-width: 768px){
  .guia-rota__modal-card{margin:3vh auto 0;max-height:92vh}
  .guia-rota__footerbar{padding:10px}
}
