.coverage-exceptions{margin-top:18px;border:1px dashed #c8d6ea;border-radius:14px;padding:0 16px;background:#fbfdff}.coverage-exceptions summary{cursor:pointer;padding:14px 0;font-weight:800;color:#173252}.coverage-exceptions summary span{font-weight:500;color:#8090a8}.coverage-exceptions p{margin:0 0 12px;color:#718198;font-size:13px}.excluded-areas{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 16px}.excluded-areas button,.selected-areas button.is-excluded{display:inline-flex;gap:7px;align-items:center;border:1px solid #ffc5cc;background:#fff1f3;color:#a9283b;border-radius:999px;padding:8px 11px;font-weight:700}.excluded-areas small{color:#8a98ac}.coverage-choice-guide{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:10px;margin:0 0 18px;padding:14px;border:1px solid #d5e2f2;border-radius:13px;background:#f3f7fd}.coverage-choice-guide>div{display:flex;align-items:center;gap:9px}.coverage-choice-guide>div>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:8px;background:#165bdd;color:#fff;font-weight:900}.coverage-choice-guide p{margin:0}.coverage-choice-guide strong,.coverage-choice-guide small{display:block}.coverage-choice-guide strong{color:#173252;font-size:9px}.coverage-choice-guide small{margin-top:2px;color:#7d8ba0;font-size:7px;line-height:1.35}.coverage-choice-guide>i{color:#9aabc0;font-style:normal}.coverage-map-disclosure{margin-top:18px;border:1px solid #cfdded;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 10px 28px rgba(18,45,82,.05)}.coverage-map-disclosure>summary{display:flex;align-items:center;gap:12px;padding:16px 18px;cursor:pointer;list-style:none}.coverage-map-disclosure>summary::-webkit-details-marker{display:none}.coverage-map-summary-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:10px;background:#eaf2ff;color:#165bdd;font-size:18px}.coverage-map-disclosure>summary>span:nth-child(2){min-width:0}.coverage-map-disclosure>summary strong,.coverage-map-disclosure>summary small{display:block}.coverage-map-disclosure>summary strong{color:#153252;font-size:12px}.coverage-map-disclosure>summary small{margin-top:3px;color:#7a8ba1;font-size:9px}.coverage-map-disclosure>summary>b{margin-left:auto;color:#165bdd;font-size:9px;white-space:nowrap}.coverage-map-disclosure>summary>b i{display:inline-block;margin-left:5px;font-style:normal;transition:.2s}.coverage-map-disclosure[open]>summary>b i{transform:rotate(180deg)}.coverage-map-shell{margin:0;border:0;border-top:1px solid #d9e3f1;border-radius:0;overflow:hidden;background:#fff;box-shadow:none}.coverage-map-shell>header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:20px 22px}.coverage-map-shell>header>div:first-child>span{font-size:9px;font-weight:900;letter-spacing:.14em;color:#165bdd}.coverage-map-shell h3{margin:5px 0 4px;color:#102d50;font-size:18px}.coverage-map-shell p{margin:0;color:#77879d;font-size:10px}.coverage-map-controls{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;justify-content:flex-end}.coverage-map-controls>div>small,.coverage-map-controls label>small{display:block;margin:0 0 5px;color:#8190a4;font-size:7px;font-weight:900;letter-spacing:.08em}.coverage-map-controls>div>span{display:flex;gap:5px}.coverage-map-controls button,.coverage-map-controls select{min-height:36px;border:1px solid #cedaea;border-radius:9px;background:#f7faff;color:#28435f;padding:0 11px;font-size:9px;font-weight:750}.coverage-map-controls button.active{background:#165bdd;border-color:#165bdd;color:#fff}.coverage-map-tip{display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border-top:1px solid #e1e8f1;background:#f7faff;color:#60738c;font-size:9px;font-weight:700}.coverage-map-tip span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff;border:1px solid #cbd9eb;color:#165bdd;font-weight:900}.coverage-map-tip i{color:#a2b1c4;font-style:normal}.coverage-map{height:300px;background:#eaf0f7;z-index:1}.coverage-map-shell>footer{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:13px 20px;color:#6e7f96;font-size:10px}.coverage-map-shell>footer span{display:flex;align-items:center;gap:6px}.coverage-map-shell>footer i{width:9px;height:9px;border-radius:50%;background:#165bdd}.coverage-map-shell>footer i.destination{background:#ff7a35}.coverage-map-shell>footer i.excluded{background:#dc3f51}.coverage-map-shell>footer b{margin-left:auto;color:#27435f}.leaflet-container{font:inherit}.route-create .location-field{display:none}.route-coverage-builder{grid-column:1/-1;border:1px solid #d8e3f1;border-radius:18px;background:#f9fbfe;padding:18px;margin:18px 0}.route-coverage-builder>h3{margin:0 0 4px;color:#102d50}.route-coverage-builder>p{margin:0 0 18px;color:#728198}.route-coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.route-coverage-side{border:1px solid #dbe4f0;border-radius:15px;background:#fff;padding:16px}.route-coverage-side header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.route-coverage-side header strong{color:#143151}.route-coverage-side header button{border:1px solid #bcd0ed;background:#eef5ff;color:#1557cb;border-radius:9px;padding:8px 10px;font-weight:800}.route-coverage-side header button.selected{background:#165bdd;border-color:#165bdd;color:#fff}.route-region-grid{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.route-region-grid button{border:1px solid #d4dfed;background:#f8faff;border-radius:999px;padding:7px 10px;color:#3d516a}.route-region-grid button.selected{background:#165bdd;border-color:#165bdd;color:#fff}.route-coverage-entry{display:flex;gap:8px}.route-coverage-entry input{min-width:0;flex:1}.route-coverage-entry button{border:0;border-radius:9px;background:#17395f;color:#fff;padding:0 14px}.route-coverage-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.route-coverage-tags button{border:1px solid #d7e2ef;background:#f4f7fb;border-radius:999px;padding:7px 10px;color:#344c67}.route-coverage-tags button.is-excluded{border-color:#ffc5cc;background:#fff1f3;color:#a9283b}.route-exception-row{margin-top:13px;padding-top:13px;border-top:1px dashed #d6e0ed}.route-exception-row small{display:block;margin-bottom:7px;color:#7a899c}
@media(max-width:780px){.coverage-choice-guide{grid-template-columns:1fr}.coverage-choice-guide>i{display:none}.coverage-map-shell>header{display:block}.coverage-map-controls{justify-content:flex-start;margin-top:15px}.coverage-map-tip{justify-content:flex-start;overflow:auto}.coverage-map{height:280px}.coverage-map-shell>footer b{width:100%;margin-left:0}.route-coverage-grid{grid-template-columns:1fr}}@media(max-width:520px){.coverage-map-disclosure>summary{align-items:flex-start}.coverage-map-disclosure>summary>b{font-size:0}.coverage-map-disclosure>summary>b i{font-size:12px}.coverage-map-controls>div>span{flex-direction:column}.coverage-map-controls button,.coverage-map-controls select{width:100%}}

/* The map is a simple, read-only confirmation of selections made above. */
.coverage-map-shell[data-coverage-map-mode="preview"]>header{display:block;padding:18px 22px;background:linear-gradient(135deg,#f8fbff,#fff)}
.coverage-map-shell[data-coverage-map-mode="preview"]>header p{max-width:620px;line-height:1.55}
.coverage-map-shell[data-coverage-map-mode="preview"] .coverage-map{height:260px;cursor:grab}
.coverage-map-shell[data-coverage-map-mode="preview"] .coverage-map:active{cursor:grabbing}

/* Accessible map controls and an explicitly read-only registration preview. */
.coverage-map-summary-icon{font-size:0}
.coverage-map-summary-icon svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.8}
.coverage-map-controls button,.coverage-map-controls select{min-height:44px;padding-right:13px;padding-left:13px;font-size:12px}
.coverage-map-disclosure>summary:focus-visible,.coverage-map-controls button:focus-visible,.coverage-map-controls select:focus-visible{outline:3px solid rgba(22,91,221,.28);outline-offset:3px}
.coverage-map-shell>footer b{font-size:12px;line-height:1.4}
.coverage-map-shell[data-coverage-map-mode="preview"] .coverage-map,.coverage-map-shell[data-coverage-map-mode="preview"] .coverage-map:active{cursor:default}

/* Comfortable mobile controls for the country / region / city selector. */
@media(max-width:900px){
  .coverage-choice-guide{gap:12px;padding:15px}
  .coverage-choice-guide>div{align-items:flex-start}
  .coverage-choice-guide>div>span{flex-basis:34px;width:34px;height:34px;font-size:14px}
  .coverage-choice-guide strong{font-size:12px;line-height:1.4}
  .coverage-choice-guide small{font-size:10px;line-height:1.45}
  .area-builder{gap:8px}
  .area-panel{padding:16px;border-radius:14px}
  .area-panel-head{align-items:flex-start;margin-bottom:16px}
  .area-number{flex:0 0 34px;width:34px;height:34px;font-size:13px}
  .area-panel-head span{font-size:10px;line-height:1.4;letter-spacing:.7px}
  .area-panel-head h3{margin-top:3px;font-size:16px;line-height:1.3}
  .country-fixed,.active-country-bar{min-height:68px;height:auto;padding:11px 12px}
  .country-fixed strong,.active-country-bar strong{font-size:14px}
  .country-fixed small{font-size:10px;line-height:1.4}
  .whole-toggle{min-height:44px;padding:9px 11px;font-size:11px;line-height:1.25}
  .area-search{min-height:50px;height:auto;margin:13px 0;padding-left:11px}
  .area-search input{min-height:48px;padding:0 9px;font-size:14px}
  .area-search button{min-width:68px;min-height:48px;padding:0 11px;font-size:12px}
  .area-caption{margin:14px 1px 9px}
  .area-caption span{font-size:10px}
  .area-caption button{min-height:44px;padding:0 6px;font-size:11px}
  .region-grid{gap:8px;max-height:330px;padding-right:4px}
  .region-grid button{min-height:44px;padding:9px 10px;font-size:12px;line-height:1.3}
  .region-grid button:before{width:12px;height:12px;margin-right:7px}
  .region-grid button.selected:before{font-size:9px;line-height:11px}
  .selected-areas{gap:7px;min-height:34px;margin-top:14px;padding-top:12px}
  .selected-areas small{font-size:11px;line-height:1.4}
  .selected-areas button{min-height:36px;padding:7px 10px;font-size:11px}
  .area-direction{padding:8px}
  .area-direction span{width:34px;height:34px;font-size:14px}
  .country-tabs{gap:7px;margin-bottom:11px}
  .country-tabs button,.country-tabs select{min-height:44px;padding:7px 10px;font-size:11px}
  .country-tabs button span{display:inline}
  .country-tabs button .pa-country-badge{width:28px;height:21px;font-size:9px}
  .country-tabs select{max-width:150px}
  .active-country-bar .pa-country-badge{width:32px;height:24px;font-size:9px}
  .area-summary{grid-template-columns:38px 1fr;gap:11px;padding:14px}
  .summary-route-icon{width:36px;height:36px}
  .area-summary small{font-size:10px}
  .area-summary p{font-size:12px;line-height:1.4}
  .area-summary p strong{max-width:240px;white-space:normal}
  .coverage-exceptions{padding:0 14px}
  .coverage-exceptions summary{min-height:48px;padding:14px 0;font-size:13px;line-height:1.4}
  .coverage-exceptions p{font-size:12px;line-height:1.5}
  .excluded-areas button,.selected-areas button.is-excluded{min-height:40px;font-size:11px}

  .coverage-map-disclosure>summary{min-height:72px;padding:15px}
  .coverage-map-summary-icon{flex-basis:42px;width:42px;height:42px}
  .coverage-map-disclosure>summary strong{font-size:13px;line-height:1.35}
  .coverage-map-disclosure>summary small{font-size:11px;line-height:1.4}
  .coverage-map-shell>header{padding:18px}
  .coverage-map-shell>header>div:first-child>span{font-size:10px}
  .coverage-map-shell h3{font-size:21px;line-height:1.25}
  .coverage-map-shell p{font-size:12px;line-height:1.5}
  .coverage-map-tip{font-size:11px;line-height:1.4}
  .coverage-map-shell[data-coverage-map-mode="preview"] .coverage-map{height:280px}
  .coverage-map-shell>footer{gap:12px;padding:13px 16px;font-size:11px;line-height:1.4}
  .coverage-map-shell>footer b{font-size:11px}

  .route-coverage-builder{padding:15px}
  .route-coverage-side{padding:14px}
  .route-coverage-side header{align-items:flex-start;flex-direction:column}
  .route-coverage-side header button,.route-region-grid button,.route-coverage-tags button{min-height:42px;font-size:12px}
  .route-coverage-entry{flex-direction:column}
  .route-coverage-entry input,.route-coverage-entry button{min-height:48px;font-size:14px}
}
