.prmn-cmngr {
    position: relative;
}

.prmn-cmngr a {
    cursor: pointer;
}

.prmn-cmngr__confirm {
    position: absolute;
    top: 45px;
    left: -82px;
    background: #fff;
    padding: 15px 25px;
    min-width: 250px;
    max-width: 400px;
    z-index: 9999;
    border: 1px solid #dadada;
    -webkit-box-shadow: 0 2px 5px #5b5a5a;
    -moz-box-shadow: 0 2px 5px #5b5a5a;
    box-shadow: 0 2px 5px #5b5a5a5e;
    line-height: 20px;
    font-size: 18px;
    text-align: center;
    color: #333;
    display: none;
    border-radius: 6px 6px 6px 6px;
}

.prmn-cmngr .prmn-cmngr__confirm-city {
    white-space: nowrap;
}

.prmn-cmngr .prmn-cmngr__confirm-btns {
    margin-top: 15px;
}

.prmn-cmngr-cities__title {
    margin-bottom: 20px;
}

.prmn-cmngr-cities__close {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
    float: right;
    filter: alpha(opacity=20);
    opacity: .2;
    font-size: 30px;
    font-weight: 500;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
}

.prmn-cmngr-cities__close:focus,
.prmn-cmngr-cities__close:hover {
    color: #000;
    cursor: pointer;
    filter: alpha(opacity=50);
    opacity: .5;
}

.prmn-cmngr-cities a {
    cursor: pointer;
}

.prmn-cmngr-cities__city {
    margin-bottom: 8px;
    font-size: 18px;
}

.prmn-cmngr-cities__search-block {
    margin-bottom: 15px;
}

.prmn-cmngr-cities__search-label {
    font-size: 15px;
    font-weight: 500;
}

.prmn-cmngr-cities__search {
    max-width: 400px;
}

.prmn-cmngr-cities__search-item > span {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: 400;
    line-height: 1.42857143;
    color: #333;
    white-space: nowrap;
    cursor: pointer;
}

.prmn-cmngr-cities__search-item_selected {
    background-color: #229ac8;
    background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
    background-repeat: repeat-x;
}

.prmn-cmngr-cities__search-item_selected > span {
    color: #ffffff;
}

@media (max-width: 400px) {
    .prmn-cmngr-cities .col-xs-4 {
        width: 100%;
    }
}

.prmn-cmngr-simplecity {
    cursor: pointer;
}

/* Подтверждение города — ProgRoman CityManager. Подключить после стилей модуля. */
.prmn-cmngr .prmn-cmngr__confirm {
  top:calc(100% + 15px); left:50%; transform:translateX(-50%);
  width:300px; min-width:0; max-width:calc(100vw - 32px);
  padding:22px; border:1px solid #e9e5e0; border-radius:18px;
  background:#fff; box-shadow:0 12px 36px rgba(31,25,20,.14), 0 2px 8px rgba(31,25,20,.05);
  color:#1b1b1c; font-family:inherit; font-size:18px; line-height:1.4;
  text-align:left; z-index:9999;
}
.prmn-cmngr .prmn-cmngr__confirm::before {
  content:""; position:absolute; top:-7px; left:50%; width:12px; height:12px;
  background:#fff; border-top:1px solid #e9e5e0; border-left:1px solid #e9e5e0;
  transform:translateX(-50%) rotate(45deg);
}
.prmn-cmngr .prmn-cmngr__confirm-city { font-size:17px; font-weight:600; white-space:normal; }
.prmn-cmngr .prmn-cmngr__confirm-btns { display:flex; gap:8px; margin-top:18px; }
.prmn-cmngr .prmn-cmngr__confirm-btn {
  display:flex; justify-content:center; align-items:center; flex:1 1 0; min-height:42px;
  padding:9px 12px; border:1px solid #d8d4cf; border-radius:999px;
  background:#fff; color:#202020; font-family:inherit; font-size:18px; font-weight:500; line-height:1.2;
  text-decoration:none; cursor:pointer; box-shadow:none; transition:background .15s,border-color .15s;
}
.prmn-cmngr .prmn-cmngr__confirm-btn[data-value="yes"],
.prmn-cmngr .prmn-cmngr__confirm-btn:not([data-value="no"]):first-child {
  border-color:#191919; background:#191919; color:#fff;
}
.prmn-cmngr .prmn-cmngr__confirm-btn:hover { background:#f3f1ef; border-color:#a9a49e; color:#1b1b1b; }
.prmn-cmngr .prmn-cmngr__confirm-btn[data-value="yes"]:hover,
.prmn-cmngr .prmn-cmngr__confirm-btn:not([data-value="no"]):first-child:hover { background:#383838; color:#fff; }
.prmn-cmngr .prmn-cmngr__confirm-btn:focus-visible { outline:2px solid #1b1b1b; outline-offset:3px; }
@media (max-width:767px) {
  .prmn-cmngr .prmn-cmngr__confirm { width:260px; padding:18px; font-size:15px; }
  .prmn-cmngr .prmn-cmngr__confirm-city { font-size:16px; }
}
