.kp-nearby{border:1px solid #d6e1eb;background:#fff;border-radius:24px;padding:clamp(18px,3vw,32px);margin:24px 0;color:#183451}
.kp-nearby-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.kp-nearby h2{font-size:clamp(23px,3vw,32px);line-height:1.2;margin:4px 0 10px}.kp-nearby p{margin:6px 0 12px}.kp-nearby .knigopolka-eyebrow{color:#00858f;font-weight:700;font-size:13px;letter-spacing:.04em}
.kp-geo-search-row{display:flex;align-items:stretch;gap:10px;margin:8px 0}.kp-geo-search-row input{flex:1;min-width:0}.kp-nearby label,.kp-place-picker>label{display:block;font-size:14px;font-weight:650;margin:8px 0}.kp-nearby input,.kp-nearby select,.kp-place-picker input:not([type=hidden]){box-sizing:border-box;min-height:48px;border:1px solid #bacbd9;border-radius:12px;padding:11px 14px;background:#fff;color:#183451;font:inherit;font-size:16px;line-height:24px;width:100%}.kp-nearby button,.kp-place-picker button{font:inherit;font-size:15px;min-height:44px;cursor:pointer}.kp-nearby button:disabled,.kp-place-picker button:disabled{opacity:.6;cursor:wait}
.kp-nearby-options{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:14px 0}.kp-nearby-options label{min-width:150px}.kp-nearby-options select{margin-top:6px}.kp-place-choices{display:grid;gap:8px;margin:8px 0}.kp-place-choice{text-align:left;padding:12px 14px;border:1px solid #ccdce5;border-radius:12px;background:#f3f9fa;color:#183451;line-height:1.4}.kp-place-choice:hover{background:#e0f2f2}.kp-geo-map{height:360px;min-width:0;border-radius:16px;overflow:hidden;background:#e8eff0;margin:16px 0;isolation:isolate;z-index:0}.kp-geo-map[hidden]{display:none!important}.kp-geo-map img{max-width:none!important}.kp-geo-map .leaflet-control-attribution{font:11px/1.4 sans-serif}.kp-geo-map .leaflet-control-attribution a{font-size:11px}.kp-geo-map .leaflet-popup-content a{font-size:14px;font-weight:600}.kp-geo-map .leaflet-popup-content p{margin:8px 0}.kp-geo-map .kp-map-count{background:none;border:0;box-shadow:none;color:white;font-size:12px;font-weight:700;padding:0}.kp-geo-status{font-size:15px;color:#526b7f}.kp-map-centre{margin-bottom:12px}.kp-nearby-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.kp-nearby-card{display:flex;align-items:start;gap:14px;border:1px solid #dce7ec;border-radius:16px;padding:16px;min-width:0}.kp-nearby-card a{font-weight:700;line-height:1.4;color:#183c67;text-decoration:none;overflow-wrap:anywhere}.kp-nearby-card img{width:64px;height:90px;object-fit:contain;flex:none}.kp-nearby-card p{font-size:13px;line-height:1.45;margin:5px 0}.kp-place-picker{margin:18px 0}.kp-nearby button:focus-visible,.kp-place-picker button:focus-visible,.kp-nearby input:focus-visible{outline:3px solid #008c95;outline-offset:3px}
@media(max-width:680px){.kp-nearby-heading{display:block}.kp-nearby-heading>button{margin-top:8px}.kp-geo-search-row{flex-wrap:wrap}.kp-geo-search-row input{flex-basis:100%;width:100%}.kp-geo-search-row>button{flex:1}.kp-nearby-results{grid-template-columns:1fr}.kp-geo-map{height:310px}.kp-nearby-options{gap:12px}.kp-nearby-options label{min-width:120px;flex:1}.kp-nearby{border-radius:20px}.kp-nearby button,.kp-place-picker button{white-space:normal;line-height:1.35}}

.kp-place-picker .kp-place-choices{max-height:min(34vh,260px);overflow-y:auto;overscroll-behavior:contain;scroll-margin-bottom:100px}.kp-place-choice{min-height:48px;text-align:left;width:100%}.kp-place-choice:focus-visible{outline:3px solid #008c95;outline-offset:-3px}.kp-map-preview{margin:12px 0;border-radius:14px;overflow:hidden;border:1px solid #d4e4eb}.kp-mini-map,.kp-map-placeholder{height:180px!important;min-height:180px!important}.kp-map-placeholder{display:grid;place-items:center;text-align:center;padding:16px;background:#eef6f7;color:#24536a}.kp-place-picker [hidden]{display:none!important}.kp-place-picker [data-kp-picker-locate]{margin:6px 0;min-height:48px;width:100%}.kp-area-dialog{width:min(94vw,680px);max-height:calc(100dvh - 24px);overflow:auto;border:0;border-radius:18px;padding:20px;color:#163c66}.kp-area-dialog::backdrop{background:#102b48aa}.kp-area-dialog .kp-geo-map{height:min(46dvh,400px);min-height:180px}.kp-area-dialog input{width:100%;min-height:48px}.kp-area-dialog button{min-height:44px;margin:5px}.kp-currency-field{display:block;min-width:0}.kp-currency-field select{width:100%;max-width:100%;min-height:48px;font-size:16px} .kp-description-ocr button{min-height:44px} .kp-ocr-dialog{max-width:min(92vw,600px);border:0;border-radius:16px;padding:20px}.kp-ocr-dialog button{margin:6px}

.kp-area-dialog{box-sizing:border-box;padding:16px}.kp-area-dialog h2{font-size:1.4rem;line-height:1.25;margin:0 0 12px}.kp-area-dialog .kp-geo-map{height:min(36dvh,320px);min-height:180px}.kp-area-dialog .kp-map-centre{margin:4px 0}.kp-area-dialog p{margin:10px 0}.kp-area-dialog .kp-area-actions{position:sticky;bottom:-16px;background:white;padding:8px 0;display:grid;grid-template-columns:1fr auto;gap:6px}.kp-area-dialog .kp-area-actions button{margin:0;font-size:14px}
.kp-geo-picker-label{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:4px!important;margin:12px 0 8px!important}
.kp-geo-label-main{font-size:16px!important;font-weight:750!important;color:#152a43!important}
.kp-geo-label-sub{font-size:12px!important;font-weight:500!important;color:#566478!important}
.kp-geo-picker-actions{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:10px!important;margin:12px 0!important}
.kp-geo-picker-actions button{margin:0!important;min-height:44px!important}

