:root{--violet:#602e91}
#dwhs-toggle{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);z-index:99999}
#dwhs-btn{
  width:60px;height:60px;border-radius:50%;border:none;
  background:#fff url('icon.png') no-repeat center center / 70%;
  color:transparent;font-size:0;text-indent:-9999px;overflow:hidden;
  cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.25);
  transition:transform .2s ease, box-shadow .2s ease
}
#dwhs-btn:hover{transform:scale(1.1);box-shadow:0 6px 18px rgba(0,0,0,.3)}
@media (max-width:768px){#dwhs-toggle{bottom:15px}#dwhs-btn{width:52px;height:52px}}
#dwhs-popup{position:fixed;left:50%;bottom:95px;transform:translateX(-50%);
  background:rgba(255,255,255,.75);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.4);border-radius:14px;padding:14px 16px;
  box-shadow:0 8px 24px rgba(0,0,0,.2);min-width:240px;text-align:center;
  animation:dwhs-popup-bounce .45s cubic-bezier(.34,1.56,.64,1);z-index:100000}
@keyframes dwhs-popup-bounce{0%{opacity:0;transform:translate(-50%,40px) scale(.95)}60%{opacity:1;transform:translate(-50%,-4px) scale(1.05)}100%{opacity:1;transform:translate(-50%,0) scale(1)}}
#dwhs-popup h4{color:var(--violet);font-size:14px;margin:0 0 8px}
#dwhs-popup .dwhs-opt{display:block;width:100%;margin:6px 0;padding:8px 10px;border:1px solid #eee;border-radius:8px;background:#faf7ff;cursor:pointer;transition:background .2s ease}
#dwhs-popup .dwhs-opt:hover{background:#ede2ff}
#dwhs-popup #dwhs-close{margin-top:5px;background:transparent;border:none;color:#666;cursor:pointer}
.dwhs-hidden{display:none}
#dwhs-banner{position:relative;margin:10px;z-index:2}
#dwhs-banner .dwhs-b-in{background:#f6f0ff;border:1px solid #e8daff;color:#3d2b53;padding:10px 12px;border-radius:8px}
#dwhs-banner .dwhs-cta{background:var(--violet);color:#fff;border:none;border-radius:6px;padding:6px 10px;margin-left:10px}
#dwhs-banner .dwhs-ghost{background:#ece6f6;color:#4a3b63;border:none;border-radius:6px;padding:6px 10px;margin-left:6px}
#dwhs-mode-badge{position:fixed;top:12px;right:12px;background:rgba(96,46,145,.92);color:#fff;font-size:13px;font-weight:600;padding:6px 12px;border-radius:20px;z-index:100001;box-shadow:0 2px 8px rgba(0,0,0,.15);opacity:1;transition:opacity 1.2s ease}
#dwhs-mode-badge.dwhs-hidden{opacity:0;pointer-events:none}
@media (max-width:600px){#dwhs-mode-badge{font-size:12px;padding:5px 10px}}
#dwhs-map-modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:none;align-items:center;justify-content:center;z-index:100002}
#dwhs-map-modal.dwhs-open{display:flex}
#dwhs-map-modal .dwhs-map-box{width:90vw;height:80vh;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.3);display:flex;flex-direction:column}
#dwhs-map-header{padding:8px 10px;border-bottom:1px solid #eee;background:#fafafa;position:relative}
#dwhs-search{width:100%;padding:10px 36px 10px 12px;border:1px solid #ddd;border-radius:8px;outline:none;font-size:14px}
#dwhs-search:focus{border-color:var(--violet);box-shadow:0 0 0 3px rgba(96,46,145,.12)}
#dwhs-clear{position:absolute;right:20px;top:50%;transform:translateY(-50%);cursor:pointer;font-weight:bold;color:#888;font-size:18px;display:none}
#dwhs-clear:hover{color:var(--violet)}
#dwhs-map{flex:1}
.dwhs-map-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px;border-top:1px solid #ddd;background:#fafafa
margin-bottom: 70px;
  padding-bottom: 70px;
}
.dwhs-map-footer button{border:none;border-radius:8px;padding:10px 14px;font-weight:600;cursor:pointer}
#dwhs-confirm-location{background:var(--violet);color:#fff}
#dwhs-cancel-map{background:#eee}
.dwhs-map-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#dwhs-use-location{background:#eee;color:#333}
#dwhs-radius-val{min-width:40px;text-align:center;font-weight:700;color:var(--violet)}
input[type=range].dwhs-radius-slider{width:160px;accent-color:var(--violet);cursor:pointer}
@media (max-width:768px){#dwhs-map-modal .dwhs-map-box{width:100vw;height:100vh;border-radius:0}}

.dwhs-map-actions{
display :flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-top: 8px;
  
}

.dwhs-map-actions button{
  flex: -1;
  margin: 0 6px;
}