.dobo-ss-popover {
  position:absolute;
  z-index:1080;
  box-sizing:border-box;
  overflow:hidden;
  max-width:calc(100vw - 16px);
  max-height:min(70vh,480px);
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--dobo-border, #e4e6e8);
  border-radius:var(--dobo-radius-md, 7px);
  background:var(--dobo-bg, #fff);
  color:var(--dobo-text, #333);
  box-shadow:var(--dobo-shadow-elevated, 0 10px 28px rgba(0,0,0,.13));
  font:inherit;
  isolation:isolate;
}

.dobo-ss-section + .dobo-ss-section {
  border-top:1px solid var(--dobo-border-soft, rgba(0,0,0,.10));
}

.dobo-ss-item {
  display:block;
  box-sizing:border-box;
  width:100%;
  min-height:44px;
  padding:10px 12px;
  color:inherit;
  text-align:left;
  text-decoration:none;
  background:transparent;
  border:0;
  outline:0;
  touch-action:manipulation;
}

.dobo-ss-item:hover,
.dobo-ss-item:focus,
.dobo-ss-item.is-active {
  color:inherit;
  text-decoration:none;
  background:var(--dobo-surface, rgba(0,0,0,.055));
}

.dobo-ss-item__label,
.dobo-ss-item__secondary {
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.dobo-ss-item__label {
  color:var(--dobo-text-strong, #171717);
  font-size:14px;
  font-weight:600;
  line-height:1.35;
}

.dobo-ss-item__secondary {
  margin-top:2px;
  color:var(--dobo-text-muted, #6b7280);
  font-size:12px;
  line-height:1.35;
}

.dobo-ss-section--fallback {
  padding-top:8px;
}

.dobo-ss-fallback__title {
  padding:2px 12px 0;
  color:var(--dobo-text-strong, #171717);
  font-size:13px;
  font-weight:700;
  line-height:1.35;
}

.dobo-ss-fallback__disclosure {
  padding:4px 12px 6px;
  color:var(--dobo-text-muted, #6b7280);
  font-size:11px;
  line-height:1.4;
}

@media (max-width:767px) {
  .dobo-ss-popover {
    max-height:min(62vh,420px);
    border-radius:var(--dobo-radius-sm, 4px);
  }

  .dobo-ss-item {
    min-height:46px;
    padding:11px 12px;
  }
}

.dobo-ss-query {
  display:flex;
  align-items:center;
  gap:10px;
  min-height:38px;
  padding:8px 12px;
  font:inherit;
  cursor:pointer;
}

.dobo-ss-query__icon {
  position:relative;
  flex:0 0 15px;
  width:15px;
  height:15px;
}

.dobo-ss-query__icon::before {
  content:"";
  position:absolute;
  left:1px;
  top:1px;
  width:9px;
  height:9px;
  border:1.6px solid currentColor;
  border-radius:50%;
  box-sizing:border-box;
}

.dobo-ss-query__icon::after {
  content:"";
  position:absolute;
  left:10px;
  top:10px;
  width:5px;
  height:1.6px;
  background:currentColor;
  border-radius:2px;
  transform:rotate(45deg);
  transform-origin:left center;
}

.dobo-ss-query__text {
  display:block;
  min-width:0;
  overflow:hidden;
  color:var(--dobo-text-strong, #171717);
  font-size:14px;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.dobo-ss-query__typed {
  font-weight:400;
}

.dobo-ss-query__completion {
  font-weight:700;
}

@media (max-width:767px) {
  .dobo-ss-query {
    min-height:44px;
    padding:10px 12px;
  }
}
