/* СДЭК v2 — виджет ПВЗ */
.cdek2-box { margin: 6px 0 10px 22px; padding: 8px 10px; border: 1px solid #d6e9d6; background: #f5fbf5; border-radius: 4px; font-size: 13px; line-height: 1.4; }
.cdek2-box-empty { color: #b94a48; margin-bottom: 6px; }
.cdek2-box-point { margin-bottom: 6px; }
.cdek2-btn { display: inline-block; padding: 5px 12px; background: #1ab248; color: #fff !important; border-radius: 3px; text-decoration: none !important; cursor: pointer; font-size: 13px; }
.cdek2-btn:hover { background: #159a3d; }

html.cdek2-noscroll, html.cdek2-noscroll body { overflow: hidden; }
.cdek2-modal { position: fixed; z-index: 100000; left: 0; top: 0; right: 0; bottom: 0; font-family: Arial, Helvetica, sans-serif; font-size: 13px; color: #333; }
.cdek2-overlay { position: absolute; left: 0; top: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, .55); }
.cdek2-dialog { position: absolute; left: 50%; top: 50%; width: 1000px; max-width: 96%; height: 640px; max-height: 92%; transform: translate(-50%, -50%); background: #fff; border-radius: 6px; box-shadow: 0 10px 40px rgba(0, 0, 0, .3); display: flex; flex-direction: column; overflow: hidden; }
.cdek2-head { display: flex; align-items: center; padding: 10px 14px; border-bottom: 1px solid #eee; gap: 12px; }
.cdek2-title { font-size: 16px; font-weight: bold; white-space: nowrap; }
.cdek2-city { position: relative; flex: 1; max-width: 360px; }
.cdek2-city-input, .cdek2-filter { width: 100%; box-sizing: border-box; padding: 6px 8px; border: 1px solid #ccc; border-radius: 3px; font-size: 13px; }
.cdek2-suggest { position: absolute; z-index: 5; left: 0; right: 0; top: 100%; background: #fff; box-shadow: 0 4px 12px rgba(0, 0, 0, .15); max-height: 260px; overflow: auto; }
.cdek2-suggest-item { padding: 6px 8px; cursor: pointer; border-bottom: 1px solid #f2f2f2; }
.cdek2-suggest-item:hover { background: #eef8f0; }
.cdek2-close { margin-left: auto; font-size: 28px; line-height: 1; color: #999 !important; text-decoration: none !important; }
.cdek2-info { padding: 6px 14px; background: #fafafa; border-bottom: 1px solid #eee; min-height: 18px; }
.cdek2-error { color: #b94a48; }
.cdek2-body { flex: 1; display: flex; min-height: 0; }
.cdek2-side { width: 340px; display: flex; flex-direction: column; border-right: 1px solid #eee; }
.cdek2-side .cdek2-filter { margin: 8px; width: auto; }
.cdek2-list { flex: 1; overflow: auto; }
.cdek2-item { position: relative; padding: 8px 10px 8px 10px; border-bottom: 1px solid #f0f0f0; cursor: pointer; }
.cdek2-item:hover { background: #f6fbf7; }
.cdek2-item-active { background: #e6f6ea; }
.cdek2-link-select { position: absolute; right: 10px; top: 8px; color: #1ab248 !important; font-weight: bold; }
.cdek2-point-addr { font-weight: bold; padding-right: 64px; }
.cdek2-point-name, .cdek2-point-time, .cdek2-point-note, .cdek2-point-badges { color: #777; font-size: 12px; margin-top: 2px; }
.cdek2-point-badges { color: #1a7f3c; }
.cdek2-map { flex: 1; min-height: 300px; }
.cdek2-nomap .cdek2-map { display: none; }
.cdek2-nomap .cdek2-side { width: 100%; border-right: 0; }
.cdek2-empty { padding: 20px; color: #999; text-align: center; }
.cdek2-balloon { max-width: 260px; }
.cdek2-balloon .cdek2-btn-select { margin-top: 8px; }

@media (max-width: 760px) {
	.cdek2-dialog { width: 100%; max-width: 100%; height: 100%; max-height: 100%; border-radius: 0; }
	.cdek2-head { flex-wrap: wrap; }
	.cdek2-city { order: 3; max-width: none; flex-basis: 100%; }
	.cdek2-body { flex-direction: column; }
	.cdek2-side { width: auto; height: 45%; border-right: 0; border-bottom: 1px solid #eee; }
	.cdek2-map { min-height: 0; }
}

/* Расчёт доставки в карточке товара */
.cdek2-product { margin: 12px 0; padding: 10px 12px; border: 1px solid #e3e3e3; border-radius: 4px; background: #fafafa; font-size: 13px; line-height: 1.5; }
.cdek2-p-head { font-weight: bold; margin-bottom: 4px; }
.cdek2-p-city { color: #1ab248 !important; border-bottom: 1px dashed #1ab248; text-decoration: none !important; }
.cdek2-p-list { list-style: none; margin: 0; padding: 0; }
.cdek2-p-opt { margin: 2px 0; }
.cdek2-p-period, .cdek2-p-wait { color: #777; }
.cdek2-p-free { color: #1a7f3c; }
.cdek2-p-map { font-size: 12px; color: #1ab248 !important; }
.cdek2-p-error { color: #b94a48; }
.cdek2-p-search { position: relative; margin: 6px 0; max-width: 320px; }
.cdek2-p-input { width: 100%; box-sizing: border-box; padding: 5px 8px; border: 1px solid #ccc; border-radius: 3px; }
.cdek2-p-suggest { position: absolute; z-index: 50; left: 0; right: 0; top: 100%; background: #fff; box-shadow: 0 4px 12px rgba(0,0,0,.15); max-height: 240px; overflow: auto; }
.cdek2-p-sitem, .cdek2-p-sempty { padding: 5px 8px; cursor: pointer; border-bottom: 1px solid #f2f2f2; }
.cdek2-p-sitem:hover { background: #eef8f0; }
