/* EC UI V91 - scoped visual improvements, no booking logic changes */
/* Direct booking: restore clear labels and suppress decorative broken icons */
.ListConcert .block-sans,
.ListConcert .block-sans1,
.ListConcert .block-sans2,
.ListConcert .detail-list-concert {
    direction: rtl;
    line-height: 1.8;
}
.ListConcert .block-sans i[class*="fa-"],
.ListConcert .block-sans .glyphicon,
.ListConcert .detail-list-concert > a i[class*="fa-"],
.ListConcert .detail-list-concert .btn-success i[class*="fa-"] {
    display: none !important;
}
.ListConcert .thumbnail.block-thumbnail {
    border: 1px solid #dce7ed !important;
    border-radius: 14px !important;
    box-shadow: 0 3px 13px rgba(20,55,75,.07) !important;
    overflow: hidden;
}
.ListConcert .thumbnail.block-thumbnail .detail-list-concert {
    padding: 12px 14px !important;
}
.ListConcert .title-concert {
    color: #183d52 !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.75 !important;
    overflow-wrap: anywhere;
}
.ListConcert .detail-list-concert .btn-success,
.ListConcert a.concerts-list__item--buy {
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border-radius: 9px !important;
    border: 0 !important;
    background: linear-gradient(105deg,#0084b5,#009b91) !important;
    color: #fff !important;
    font-weight: 800 !important;
    text-align: center;
    text-decoration: none !important;
}
.ListConcert-pg { min-height: 0 !important; }

/* Reservation/detail page: preserve all controls and seat interactions */
.Reserv-pg.container {
    width: min(1120px, calc(100% - 24px)) !important;
    max-width: 1120px !important;
    margin: 18px auto 32px !important;
    padding: 0 10px !important;
    float: none !important;
    direction: rtl;
    box-sizing: border-box;
}
.Reserv-pg .listReserv,
.Reserv-pg .panel,
.Reserv-pg .listPrice {
    border-radius: 13px !important;
}
.Reserv-pg .panel,
.Reserv-pg .listPrice {
    border: 1px solid #dfebf1 !important;
    box-shadow: 0 4px 18px rgba(18,55,77,.045) !important;
}
.Reserv-pg .panel-body { padding: 18px !important; }
.Reserv-pg .concert-title,
.Reserv-pg .reserv-h2,
.Reserv-pg .listReserv > h2,
.Reserv-pg .listReserv > h3 {
    line-height: 1.7 !important;
    overflow-wrap: anywhere;
}
.Reserv-pg .list-group-item {
    border-color: #e1eaf0 !important;
    line-height: 1.9 !important;
    padding: 9px 14px !important;
}
.Reserv-pg .list-group-item.active {
    background: linear-gradient(105deg,#0084b5,#009b91) !important;
    border-color: transparent !important;
    color: #fff !important;
}
.Reserv-pg label,
.Reserv-pg .form-wrapper label,
.Reserv-pg .form-group label {
    color: #29455a !important;
    line-height: 1.8 !important;
}
.Reserv-pg input.form-control:not([type="checkbox"]):not([type="radio"]),
.Reserv-pg select.form-control {
    box-sizing: border-box !important;
    min-height: 43px !important;
    height: auto !important;
    max-width: 100% !important;
    border: 1px solid #cbdde8 !important;
    border-radius: 9px !important;
    background-color: #fff !important;
    color: #173951 !important;
    padding: 9px 12px !important;
}
.Reserv-pg textarea.form-control {
    box-sizing: border-box !important;
    min-height: 90px !important;
    max-width: 100% !important;
    border: 1px solid #cbdde8 !important;
    border-radius: 9px !important;
    padding: 9px 12px !important;
}
.Reserv-pg .form-control:focus {
    border-color: #0b90a5 !important;
    outline: 2px solid rgba(11,144,165,.2) !important;
    outline-offset: 0;
}
.Reserv-pg .btn,
.Reserv-pg a.btn,
.Reserv-pg input[type="submit"].btn {
    min-height: 40px;
    padding: 9px 15px;
    border-radius: 9px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    text-align: center;
    white-space: normal;
}
.Reserv-pg .btn-success {
    background: linear-gradient(105deg,#0084b5,#009b91) !important;
    border-color: #078b99 !important;
    color: #fff !important;
}
.Reserv-pg .btn-primary {
    background: #087da4 !important;
    border-color: #087da4 !important;
    color: #fff !important;
}
.Reserv-pg .btn-default { background: #fff !important; color: #24506a !important; border: 1px solid #bfd8e3 !important; }
.Reserv-pg .btn-danger { color: #fff !important; }
/* Actual legacy reserve controls use reserve-button with four decorative spans. */
.Reserv-pg .reserve-button {
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px;
    width: auto;
    max-width: 100%;
    min-height: 43px !important;
    height: auto !important;
    padding: 10px 20px !important;
    background: linear-gradient(105deg,#0084b5,#009b91) !important;
    color: #fff !important;
    border: 1px solid #078b99 !important;
    border-radius: 9px !important;
    box-shadow: none !important;
    font-weight: 800 !important;
    line-height: 1.6 !important;
    text-align: center !important;
    text-decoration: none !important;
    opacity: 1;
    transform: none !important;
    overflow: visible;
}
.Reserv-pg .reserve-button > span { display: none !important; }
.Reserv-pg .reserve-button::before,
.Reserv-pg .reserve-button::after { display: none !important; content: none !important; }
.Reserv-pg .reserve-button.return,
.Reserv-pg .reserve-button.cancel,
.Reserv-pg #BtnShowDiscount {
    background: #f2f8fb !important;
    color: #1a526c !important;
    border: 1px solid #c4dbe7 !important;
}
.Reserv-pg #btnedit { background: #087da4 !important; }
.Reserv-pg .reserve-button:hover,
.Reserv-pg .reserve-button:focus { filter: brightness(.94); text-decoration: none !important; }
.Reserv-pg .btn:focus-visible,
.Reserv-pg a:focus-visible {
    outline: 3px solid #ecb371 !important;
    outline-offset: 2px !important;
}
.Reserv-pg .table-responsive {
    max-width: 100%;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}
.Reserv-pg .table th,
.Reserv-pg .table td {
    vertical-align: middle !important;
    line-height: 1.8 !important;
}
.Reserv-pg .img-responsive,
.Reserv-pg img[usemap] { max-width: 100%; height: auto; }
.Reserv-pg iframe { max-width: 100%; }
/* Seat modal layout deliberately left to existing reserve-mobile-fix.css */
@media (max-width: 767px) {
    .Reserv-pg.container { width: calc(100% - 12px) !important; margin: 10px auto 20px !important; padding: 0 6px !important; }
    .Reserv-pg .panel-body { padding: 12px !important; }
    .Reserv-pg .listReserv > [class*="col-"] { padding-left: 6px !important; padding-right: 6px !important; }
    .Reserv-pg .form-wrapper { width: 100%; min-width: 0; }
    .Reserv-pg input.form-control, .Reserv-pg select.form-control, .Reserv-pg textarea.form-control { width: 100% !important; }
}