/* Ozon Доставка — блок выбора ПВЗ на чекауте */
.iod-point-block{--iod-accent:#6f63d2;--iod-accent-dark:#5a4ec2;--iod-accent-soft:#f1effc;margin:18px 0 20px;padding:14px 16px;border:1px solid #e4e2f0;border-radius:12px;background:#fbfbfe;font-size:14px;line-height:1.45}
.iod-point-block *{box-sizing:border-box}
.iod-point-block .iod-logo{margin-bottom:8px}
.iod-point-block .iod-logo img{max-height:28px;width:auto;display:block}
.iod-selected{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:#f0f8f1;border:1px solid #cfe7d2;border-radius:10px;padding:10px 14px}
.iod-selected-badge{color:#0a7d33;font-weight:600;white-space:nowrap;text-transform:none;letter-spacing:normal}
.iod-selected-address{flex:1 1 240px;min-width:0;font-weight:500;text-transform:none;letter-spacing:normal}
.iod-point-block .iod-change{background:#fff;border:1px solid #cfd3dd;border-radius:8px;padding:6px 14px;color:#333;cursor:pointer;font:inherit;font-size:13px;text-decoration:none;text-transform:none;letter-spacing:normal;transition:border-color .15s}
.iod-point-block .iod-change:hover{border-color:var(--iod-accent);color:var(--iod-accent);background:#fff}
.iod-eta{flex-basis:100%;color:#555;font-size:13px}
.iod-picker{margin-top:8px}
.iod-point-block .iod-search{width:100%;box-sizing:border-box;padding:11px 14px;min-height:44px;border:1px solid #cfd3dd;border-radius:10px;font-size:15px;background:#fff;box-shadow:none;text-transform:none}
.iod-point-block .iod-search:focus{outline:none;border-color:var(--iod-accent);box-shadow:0 0 0 3px rgba(111,99,210,.16)}
.iod-results{margin-top:8px;max-height:260px;overflow:auto;display:flex;flex-direction:column;gap:6px}
.iod-point-block .iod-result{flex:0 0 auto;overflow:visible;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;height:auto!important;min-height:0!important;margin:0!important;text-align:left;padding:12px 14px!important;border:1px solid #e6e4f0;border-radius:10px;background:#fff;cursor:pointer;font:inherit;font-size:14px;font-weight:400;line-height:1.45!important;color:#222;text-transform:none!important;letter-spacing:normal!important;white-space:normal!important;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.iod-point-block .iod-result:hover{border-color:var(--iod-accent);background:#fffdf3;color:#222;box-shadow:0 2px 10px rgba(111,99,210,.16)}
.iod-result-address{display:block;flex:1 1 auto;min-width:0;font-weight:500}
.iod-result-time{display:block;flex:0 0 auto;color:#777;font-size:12px;text-align:right;max-width:38%;text-transform:none}
.iod-note{color:#666;font-size:13px;padding:4px 2px}
.iod-note.iod-error{color:#b32d2e}
@media (max-width:480px){
  .iod-point-block{padding:10px}
  .iod-results{max-height:44vh}
}

/* Карта пунктов */
.iod-view-switch{display:flex;gap:0;margin-top:10px;border:1px solid #d9d6ec;border-radius:9px;overflow:hidden;width:max-content;margin-left:auto}
.iod-view-switch .iod-view-btn{background:#fff;border:none;border-radius:0;padding:8px 18px;font:inherit;font-size:13px;font-weight:500;color:#333;cursor:pointer;text-transform:none;letter-spacing:normal;box-shadow:none;transition:background .15s,color .15s}
.iod-view-switch .iod-view-btn + .iod-view-btn{border-left:1px solid #cfd3dd}
.iod-view-switch .iod-view-btn.is-active{background:var(--iod-accent);color:#fff;cursor:default}
.iod-view-switch .iod-view-btn:disabled{opacity:.6;cursor:progress}
.iod-map{height:340px;margin-top:8px;border-radius:12px;overflow:hidden;border:1px solid #e2e4ea;z-index:1;position:relative;background:#f2f4f8}
.iod-map-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#666;font-size:14px}
.iod-map [class*='balloon__content']{font:inherit}
.iod-map [class*='ground-pane']{filter:grayscale(.92) saturate(.75) brightness(1.03) contrast(.97)}
.iod-map [class*='map-copyrights-promo']{display:none!important}
.iod-map .leaflet-tile-pane{filter:grayscale(.92) saturate(.75) brightness(1.03) contrast(.97)}
.iod-map .leaflet-container{font:inherit}
.iod-popup{font-size:13px;line-height:1.4}
.iod-popup-address{font-weight:600;margin-bottom:2px}
.iod-popup-time{color:#666;margin-bottom:8px}
.iod-popup-full{color:#8a8a94;font-size:12px;margin-bottom:8px;line-height:1.35}
.iod-popup .iod-map-select{display:block;width:100%;padding:9px 12px;border:none!important;border-radius:8px;background:#6f63d2!important;color:#fff!important;cursor:pointer;font:inherit;font-size:13px;font-weight:600;text-transform:none!important;letter-spacing:normal;transition:background .15s,color .15s}
.iod-popup .iod-map-select:hover{background:#ffd54d!important;color:#1f1f1f!important}
.iod-popup .iod-map-select:disabled{background:#b6afe6;cursor:default}
@media (max-width:480px){.iod-map{height:280px}.iod-view-switch{width:100%}.iod-view-btn{flex:1}}

/* Блок ПВЗ в форме заказа */
.iod-point-block.iod-in-billing{margin:20px 0 24px;padding:16px 18px}
.iod-block-title{font-weight:600;font-size:15px;margin-bottom:10px}
.iod-point-block.iod-in-billing .iod-map{height:380px}
@media (max-width:600px){.iod-point-block.iod-in-billing{padding:12px 14px}.iod-point-block.iod-in-billing .iod-map{height:300px}}

/* Выбранный пункт в строке «Доставка» */
.iod-chosen-point{margin-top:6px;font-size:13px;line-height:1.4;color:#444;text-align:right}
.iod-chosen-point-label{color:#888}

/* Метка с логотипом: белый круг с обводкой */
.iod-pin{position:relative;width:40px;height:40px;border-radius:50%;background:#fff;border:2px solid #6f63d2;box-shadow:0 2px 8px rgba(0,0,0,.22);display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);transition:box-shadow .15s,transform .15s}
.iod-pin.iod-pin-static{transform:none}
.iod-pin:hover{box-shadow:0 4px 14px rgba(111,99,210,.45)}
.iod-pin img{max-width:28px;max-height:28px;width:auto;height:auto;display:block;pointer-events:none;object-fit:contain}
.iod-pin-caption{position:absolute;left:46px;top:50%;transform:translateY(-50%);white-space:nowrap;background:#fff;border-radius:5px;padding:2px 7px;font-size:12px;color:#444;box-shadow:0 1px 4px rgba(0,0,0,.18)}
.iod-pin-wrap{background:none;border:none}

/* ---------------------- Мобильная раскладка ---------------------- */
@media (max-width:768px){
	.iod-point-block{margin:16px 0 18px;padding:12px 14px;font-size:15px}
	.iod-point-block.iod-in-billing{margin:16px 0 18px;padding:12px 14px}

	/* 16px — иначе iOS зумит страницу при фокусе в поле */
	.iod-point-block .iod-search{font-size:16px;padding:12px 14px;min-height:48px;border-radius:12px}

	.iod-view-switch{width:100%;margin-left:0}
	.iod-view-switch .iod-view-btn{flex:1;padding:11px 12px;font-size:14px;min-height:44px}

	/* Строка списка: адрес сверху, время и расстояние снизу */
	.iod-point-block .iod-result{flex-direction:column;align-items:flex-start;gap:4px;padding:12px!important;min-height:44px}
	.iod-result-address{font-size:14px;line-height:1.35}
	.iod-result-time{max-width:100%;text-align:left;font-size:12px}

	.iod-results{max-height:52vh;overflow-y:auto;-webkit-overflow-scrolling:touch}

	/* Выбранный пункт: бейдж, адрес, кнопка — в столбик */
	.iod-selected{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 14px}
	.iod-selected-address{flex:1 1 auto;font-size:14px}
	.iod-point-block .iod-change{width:100%;text-align:center;min-height:44px;padding:10px 14px}

	.iod-point-block.iod-in-billing .iod-map,.iod-map{height:320px}
	.iod-chosen-point{text-align:left}

	/* Балун Яндекса шире экрана — прижимаем */
	.iod-map [class*='balloon']{max-width:calc(100vw - 60px)}
	.iod-popup{font-size:14px}
	.iod-popup .iod-map-select{min-height:44px;font-size:14px}
}

@media (max-width:400px){
	.iod-point-block,.iod-point-block.iod-in-billing{padding:10px 12px}
	.iod-point-block.iod-in-billing .iod-map,.iod-map{height:280px}
	.iod-pin{width:34px;height:34px}
	.iod-pin img{max-width:22px;max-height:22px}
}
