button{
    border: none;
    width: 100%;
}

a{
    text-decoration: none;
}

.close {
    position: absolute;
    right: var(--spacer-m);
    top: var(--spacer-m);
}

.button_square_label{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: var(--spacer-m) 14px;
    width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    color: var(--text-button);
    text-decoration: none;
    transition: background-color 0.1s ease;
    border-radius: var(--spacer-m);
}

.button__label{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--spacer-m) 14px;
    min-width: 48px;
    height: 48px;
    color: var(--text-button);
    text-decoration: none;
    transition: background-color 0.1s ease;
    border-radius: var(--spacer-m);
}

.button__label:hover{
    background-color: var(--secondary20);
}

.button_square_label:hover{
    background-color: var(--secondary20);
}

.btn_accent{
    background-color: var(--accent100);
    color: var(--prime_invert100);
    transition: ease-in-out 0.1s;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: var(--spacer-s);
}

.btn_accent img{
    width: var(--spacer-m);
    height: var(--spacer-m);
}

.btn_accent:hover{
    background-color: var(--accent200);
}

.btn_gray{
    background-color: var(--secondary10);
    color: var(--prime100);
}



.btn_black{
    background-color: var(--prime100);
    color: var(--prime_invert100);
}

.btn_black:disabled{
    opacity: 0.25;
}

.button_wrapper_fixed{
    position: fixed;
    bottom: 0px;
    left: 0px;
    width: 100%;
    padding: var(--spacer-l) var(--spacer-m);
    z-index: 1000;
    max-width:600px;
    left:50%;
    transform: translateX(-50%);
}

.cells{
    padding-left: var(--spacer-s);
    padding-right: var(--spacer-s);
}

.cell{
    width: 100%;
    height: 48px;
    display: flex;
    flex-direction: row;
    padding-left: var(--spacer-m);
    align-items: center;
    color: var(--prime100);
    gap: var(--spacer-s);
    position: relative;
    border-radius: var(--spacer-m);
}

.cell:hover{
    background-color: var(--secondary10);
}



.bikelane-info{
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.bikelane_info_header{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}



.bikelane-details{
    display: none;
}

.chevron_right{
    position: absolute;
    right: var(--spacer-m)
}

.debug-geometry-btn{
    display: none;
}

.button_square_icon{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-width: 40px;
    min-height: 40px;
    border-radius: var(--spacer-m);
    background-color: var(--bg3);
}

.button_square_icon img{
    width: 24px;
    height: 24px;
}


/* Фильтры */
.filter-tabs {
    display: flex;
    max-width: 600px;
    -webkit-overflow-scrolling: touch;
    overflow-x: scroll;
    padding-bottom: var(--spacer-m);
    padding-left: var(--spacer-s);
    padding-right: var(--spacer-s);
    margin-left: auto;
    margin-right: auto;
}

.filter-tab {
    display: flex;
    flex-direction: row;
    gap: var(--spacer-s);
    padding: var(--spacer-s) var(--spacer-m);
    height: 48px;
    border-radius: var(--spacer-m);
    font-weight: 500;
    font-size: var(--spacer-m);
    line-height: 20px;
    text-wrap: nowrap;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--prime100);
}



.filter-tab.active {
    background: var(--accent100);
    color: var(--prime_invert100) !important;
}

.page_header_left{
    position: absolute;
    left: var(--spacer-m);
}

.search-input{
    border-radius: var(--spacer-m);
    font-size: var(--spacer-m);
    line-height: var(--spacer-l);
    font-weight: 600;
    color: var(--secondary100);
}


.btn-finish {
    background: #27ae60;
    color: white;

    z-index: 1000002;
}

.btn-finish:hover {
    background: #229954;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(39, 174, 96, 0.3);
}


.btn-reset {
    background: #e74c3c;
    color: white;

    z-index: 1000002;
}

.btn-reset:hover {
    background: #c0392b;
    transform: translateY(-1px);

    box-shadow: 0 4px 12px rgba(231, 76, 60, 0.3);
}

.city-card{
    border-radius: var(--spacer-m);
}

.city-card:hover{
    background-color: var(--secondary10);
}

.my-bikelane-link{
    border-bottom: 0.5px solid var(--secondary30);
}