﻿:root {
    --color-zone: white;
    --background-color-zone: #FA6509;
    --background-btn-url: url(https://i.pinimg.com/736x/d2/22/64/d22264e02c5871f54984e7c626f088cf.jpg);
}

@font-face {
    font-family: "DB Adman X";
    src: url(../fonts/DB\ Adman\ X/DB_Adman_X_v3.2.ttf);
}

@font-face {
    font-family: "DB Adman X Bd";
    src: url(../fonts/DB\ Adman\ X/DB_Adman_X_Bd_v3.2.ttf);
}

@font-face {
    font-family: "DB Adman X UlLi";
    src: url(../fonts/DB\ Adman\ X/DB_Adman_X_UlLi_v3.2.ttf);
}

@font-face {
    font-family: "DB Adman X It";
    src: url(../fonts/DB\ Adman\ X/DB_Adman_X_It_v3.2.ttf);
}

@font-face {
    font-family: "DB Adman X Li";
    src: url(../fonts/DB\ Adman\ X/DB_Adman_X_Li_v3.2.ttf);
}

@font-face {
    font-family: "DB Adman X Li It";
    src: url(../fonts/DB\ Adman\ X/DB_Adman_X_Li_It_v3.2.ttf);
}

@font-face {
    font-family: "DB Adman X Bd It";
    src: url(../fonts/DB\ Adman\ X/DB_Adman_X_Bd_It_v3.2.ttf);
}

@font-face {
    font-family: "DB Adman X UlLi It";
    src: url(../fonts/DB\ Adman\ X/DB_Adman_X_UlLi_It_v3.2.ttf);
}


body {
    background-image: url('../images/bg.webp');
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
    background-size: cover; /* This ensures the image covers the entire background */
    width: 100%;
    height: 100vh;
    font-family: "DB Adman X";
}

a {
    text-decoration: none !important;
}

@media (min-width: 1024px) {
    .select2-container--bootstrap-5 .select2-selection {
        font-size: 1.4rem !important;
    }
}

@media (max-width: 1024px) {
    #logo-topmenu {
        width: 80%;
    }

    page {
        width: 80% !important;
        min-height: 90vh !important;
    }

    .menu-bar {
        width: 80% !important;
    }

    #footer {
        height: 7.3vh !important;
    }

        #footer .footer-text {
            margin-top: 48px !important;
        }

    .menu-bar-item {
        height: 75px !important;
    }

    .zone-title {
        font-size: 3.25rem !important;
    }

    .viewport-container {
        zoom: 0.9;
    }

    .viewport {
        zoom: 0.9 !important;
    }

    .viewport-container.seat-plan {
        min-height: 1250px !important;
    }

    .img-item {
        height: 1020px !important;
    }

    .button-img {
        height: 120px !important;
    }

        .button-img img, .button-img i {
            width: 30px !important;
            margin-right: 12px !important;
        }

        .button-img .btn-menu, .button-img .btn-tips {
            width: 35px !important;
            margin-right: 12px !important;
        }
}

@media (max-width: 991.98px) {
    .btn-payment {
        width: calc(98.5% / 2) !important;
    }

    #logo-topmenu {
        width: 80%;
    }

    page[size='A4'] .fs-16, page[size='A4'] .fs-16 a {
        font-size: 1rem !important;
    }

    page[size='A4'] .fs-22 {
        font-size: 1.3rem !important;
    }

    .menu-bar {
        width: 90% !important;
    }

    #footer {
        height: 7.3vh !important;
    }

        #footer .footer-text {
            margin-top: 45px !important;
        }

    .menu-bar-item {
        height: 70px !important;
    }

    .form-control, .form-label, .fs-16, .fs-16 a, .form-select, .select2-container--bootstrap-5 .select2-selection {
        font-size: 20px !important;
    }

    .btn-red {
        font-size: 20px !important;
        border-radius: 50px;
    }

    .tips-menu-item {
        width: 130px !important;
        height: 130px !important;
    }

        .tips-menu-item img {
            width: 70px !important;
        }

    .zone-title {
        font-size: 3.5rem !important;
    }

    .viewport {
        zoom: 0.7 !important;
    }

    .img-item {
        height: 820px !important;
    }

    .viewport-container.seat-plan {
        min-height: 950px !important;
    }
}

@media (max-width: 768px) {
    .btn-payment {
        width: calc(98.5% / 2) !important;
    }


    #logo-topmenu {
        width: 80%;
    }

    page {
        width: 80% !important;
        min-height: 90vh !important;
    }

        page[size='A4'] .fs-16, page[size='A4'] .fs-16 a {
            font-size: 0.8rem !important;
        }

        page[size='A4'] .fs-22 {
            font-size: 1.2rem !important;
        }

    .menu-bar {
        width: 90% !important;
    }

    #footer {
        height: 8vh !important;
    }

        #footer .footer-text {
            margin-top: 45px !important;
        }

    .menu-bar-item {
        height: 65px !important;
    }

    .form-control, .form-label, .fs-16, .fs-16 a, .form-select, .select2-container--bootstrap-5 .select2-selection {
        font-size: 18px !important;
    }

    .btn-red {
        font-size: 18px !important;
        border-radius: 50px;
    }

    .tips-menu-item {
        width: 120px !important;
        height: 120px !important;
    }

        .tips-menu-item img {
            width: 65px !important;
        }

    .zone-title {
        font-size: 3rem !important;
    }

    .viewport {
        zoom: 0.65 !important;
    }

        .viewport.zoom-zone-d {
            zoom: 0.55 !important;
        }

    .viewport-container.seat-plan {
        min-height: 880px !important;
    }

    .img-item {
        height: 730px !important;
    }

    .button-img {
        height: 110px !important;
    }

        .button-img img, .button-img i {
            width: 30px !important;
            margin-right: 12px !important;
        }

        .button-img .btn-menu, .button-img .btn-tips {
            width: 35px !important;
            margin-right: 12px !important;
        }
}

@media (max-width: 575.98px) {
    .btn-payment {
        width: 100% !important;
        margin-bottom: 8px !important;
    }

    .border-table {
        border-top: 1px dashed #000000;
        border-bottom: 1px dashed #000000;
    }

    #logo-topmenu {
        width: 60%;
    }

    #topmenu img {
        height: 60px;
    }

    #footer {
        justify-content: end !important;
        padding-bottom: 8px;
        min-height: 70px !important;
    }

    .footer-text {
        letter-spacing: 3px !important;
        font-size: 0.65em !important;
        margin-bottom: 0px;
    }

    #footer .footer-text {
        margin-top: 7px !important;
    }

    page {
        width: 90% !important;
        min-height: 90vh !important;
        padding-bottom: 80px !important;
    }

    .menu-bar {
        display: none;
    }

    .form-control, .form-label, .fs-16, .fs-16 a, .form-select {
        font-size: 1.2rem !important;
    }

    page[size='A4'] .fs-16, page[size='A4'] .fs-16 a {
        font-size: 0.8rem !important;
    }

    page[size='A4'] .fs-22 {
        font-size: 1.2rem !important;
    }

    .btn-red {
        font-size: 1.2rem !important;
        border-radius: 50px;
        padding: 0.75rem 3rem !important;
    }

    .fs-22 {
        font-size: 22px !important;
    }

    .img-template {
        border-radius: 8px !important;
    }

    .tips-menu-item {
        width: 65px !important;
        height: 65px !important;
    }

        .tips-menu-item img {
            width: 35px !important;
        }

    .zone-title {
        font-family: "DB Adman X" !important;
        zoom: 0.96 !important
    }

    .viewport {
        zoom: 0.425 !important;
    }

    .viewport-container.seat-plan {
        min-height: 550px !important;
    }

    .img-item {
        height: 450px !important;
    }

    .button-img {
        height: 90px !important;
    }

        .button-img img, .button-img i {
            width: 25px !important;
            margin-right: 8px !important;
        }

        .button-img .btn-menu, .button-img .btn-tips {
            width: 30px !important;
            margin-right: 8px !important;
        }
}

page {
    display: block;
    margin: 1em auto;
    width: 60%;
    color: white;
    padding-bottom: 100px;
    min-height: 85vh;
}


#topmenu {
    width: 100%;
    height: 9%;
    background-color: #CD0000;
    margin: 0;
    padding: 0;
    position: relative;
    box-sizing: border-box;
}

/* .halftone {
    margin: 0;
    padding: 0;
    position: relative;
    box-sizing: border-box;
    background-image:
      radial-gradient(circle, #F21817 85%, transparent 0),
      radial-gradient(circle, #F21817 80%, transparent 0),
      radial-gradient(circle, #F21817 75%, transparent 0),
      radial-gradient(circle, #F21817 70%, transparent 0),
      radial-gradient(circle, #F21817 65%, transparent 0),
      radial-gradient(circle, #F21817 60%, transparent 0),
      radial-gradient(circle, #F21817 55%, transparent 0),
      radial-gradient(circle, #F21817 50%, transparent 0),
      radial-gradient(circle, #F21817 45%, transparent 0),
      radial-gradient(circle, #F21817 40%, transparent 0),
      radial-gradient(circle, #F21817 35%, transparent 0),
      radial-gradient(circle, #F21817 30%, transparent 0),
      radial-gradient(circle, #F21817 25%, transparent 0),
      radial-gradient(circle, #F21817 20%, transparent 0);

    background-size: 1em 1em;
    background-repeat: repeat-x;
    background-position:
      0 0,
      0 1em,
      0 2em,
      0 3em,
      0 4em,
      0 5em,
      0 6em,
      0 7em,
      0 8em,
      0 9em,
      0 10em,
      0 11em,
      0 12em,
      0 13em;
  } */


#footer {
    width: 100%;
    height: 9vh;
    background-color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

    #footer .footer-text {
        font-family: "Poppins", sans-serif;
        color: #CD0000;
        letter-spacing: 5px;
        font-size: 0.8em;
        margin-top: 43px;
    }

    #footer small {
        color: #CD0000;
        letter-spacing: 5px;
    }

.menu-bar {
    width: 50%;
    height: 60px;
    gap: 4px;
    position: absolute;
    top: -30px;
}

.menu-bar-mobile {
    width: 90%;
    height: 55px;
    gap: 3px;
    position: absolute;
    top: -30px;
}

.menu-bar-item {
    height: 60px;
    width: calc(100% / 5);
    background-color: #CD0000;
    color: white;
    -webkit-box-shadow: inset 0px 2px 10px -1px rgb(177, 177, 177);
    -moz-box-shadow: inset 0px 2px 10px -1px rgb(177, 177, 177);
    box-shadow: inset 0px 2px 10px -1px rgb(177, 177, 177);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
}

.menu-bar-mobile-item {
    height: 60px;
    width: calc(100% / 5);
    background-color: #CD0000;
    color: white;
    -webkit-box-shadow: inset 0px 2px 10px -1px rgb(177, 177, 177);
    -moz-box-shadow: inset 0px 2px 10px -1px rgb(177, 177, 177);
    box-shadow: inset 0px 2px 10px -1px rgb(177, 177, 177);
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
    padding: 0;
    padding-bottom: 3px;
}

    .menu-bar-mobile-item.circle {
        justify-content: center;
        color: white !important;
        width: 90px;
        height: 90px;
        border-radius: 50px;
        position: absolute;
        top: 50%;
        left: 50%;
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        z-index: 99;
        padding: 0;
        box-shadow: 0px 3px 5px 1px rgba(255,255,255,0.6) inset;
        -webkit-box-shadow: 0px 3px 5px 1px rgba(255,255,255,0.6) inset;
        -moz-box-shadow: 0px 3px 5px 1px rgba(255,255,255,0.6) inset;
    }

    .menu-bar-mobile-item.center {
        background-color: #000 !important;
        border-radius: 50px;
        box-shadow: 1px 1px 29px 9px rgba(0,0,0,0.75);
        -webkit-box-shadow: 1px 1px 29px 9px rgba(0,0,0,0.75);
        -moz-box-shadow: 1px 1px 29px 9px rgba(0,0,0,0.75);
    }


    .menu-bar-mobile-item h6 {
        font-size: 0.9rem;
    }

    .menu-bar-mobile-item i {
        font-size: 25px;
        padding-bottom: 5px;
    }

.menu-bar-item i {
    font-size: 27px;
}

#food-icon {
    width: 39px;
}

#beer-icon {
    width: 35px;
}

#percent-icon {
    width: 35px;
}

#money-icon {
    width: 39px;
}

.menu-bar-item:first-child, .menu-bar-mobile-item:first-child {
    border-radius: 50px 0px 0px 50px;
    -webkit-box-shadow: inset 2px 2px 10px -1px rgb(177, 177, 177);
    -moz-box-shadow: inset 2px 2px 10px -1px rgb(177, 177, 177);
    box-shadow: inset 2px 2px 10px -1px rgb(177, 177, 177);
}

.menu-bar.list-group-horizontal > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: 50px;
    border-top-right-radius: 0;
}

.menu-bar-item:last-child, .menu-bar-mobile-item:last-child {
    border-radius: 0px 50px 50px 0px;
    -webkit-box-shadow: inset -2px 2px 10px -1px rgb(177, 177, 177);
    -moz-box-shadow: inset -2px 2px 10px -1px rgb(177, 177, 177);
    box-shadow: inset -2px 2px 10px -1px rgb(177, 177, 177);
}

.menu-bar.list-group-horizontal > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: 50px;
    border-bottom-left-radius: 0;
}

.list-group-item-action:focus, .list-group-item-action:hover, .list-group-item-action.active {
    z-index: 1;
    color: white;
    text-decoration: none;
    background-color: #000;
}

.tips-menu-item {
    width: 150px;
    height: 150px;
    background-color: white;
    color: #FF0000;
    border-radius: 50%;
    -webkit-box-shadow: inset -5px -5px 4px 0px rgba(0,0,0,0.5);
    -moz-box-shadow: inset -5px -5px 4px 0px rgba(0,0,0,0.5);
    box-shadow: inset -5px -5px 4px 0px rgba(0,0,0,0.5);
    display: flex;
    justify-content: center;
    align-items: center;
}

    .tips-menu-item img {
        width: 80px;
    }

.img-display {
    border-radius: 15px;
}

.img-template {
    border-radius: 10px;
}

.owl-carousel .owl-item img {
    width: 100% !important;
}


.menu-book .item {
    display: flex;
    justify-content: center;
}

.form-control, a.fs-16, .form-select, .fs-16 {
    font-size: 1.4rem;
}


.form-label {
    font-size: 1.4rem;
}

.btn-red {
    color: white;
    background-color: #FF0100 !important;
    -webkit-box-shadow: inset -5px -5px 4px 0px rgba(0,0,0,0.5) !important;
    -moz-box-shadow: inset -5px -5px 4px 0px rgba(0,0,0,0.5) !important;
    box-shadow: inset -5px -5px 4px 0px rgba(0,0,0,0.5) !important;
    border: none;
    font-size: 1.4rem;
    border-radius: 50px;
    padding: 0.75rem 5rem;
}

    .btn-red:hover {
        background-color: #b10000 !important;
    }

.text-neon-green {
    color: #00FF0A !important;
}

.a1 img, .a2 img, .b1 img, .c1 img, .c2 img, .c3 img, .d1 img {
    width: 85%;
}

.a1 {
    z-index: 2;
    position: absolute;
    top: 18%;
    right: 3%;
}

.a2 {
    z-index: 2;
    position: absolute;
    top: 17%;
    left: 21%;
}

.b1 {
    z-index: 2;
    position: absolute;
    top: 50.85%;
    right: 4.8%;
}

.c1 {
    z-index: 2;
    position: absolute;
    top: 67.85%;
    right: 5.4%;
}

.c2 {
    z-index: 2;
    position: absolute;
    top: 73.8%;
    left: 26.7%;
}

.c3 {
    z-index: 2;
    position: absolute;
    top: 42.5%;
    left: 19.25%;
}

.d1 {
    z-index: 2;
    position: absolute;
    top: 86.5%;
    left: 23%;
}

.zone-title {
    font-size: 3.25rem;
    font-family: "DB Adman X Bd";
    /* -webkit-text-stroke: 3px black; */
    /* text-shadow: 0px 4px 10px rgba(0,0,0,0.25); */
}

.stage-title {
    letter-spacing: 10px;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.seatmap::-webkit-scrollbar {
    display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.seatmap {
    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none; /* Firefox */
}

.zone-a {
    --color-zone: white !important;
    --background-color-zone: #FA6509 !important;
}

.zone-b {
    --color-zone: white !important;
    --background-color-zone: #FA6509 !important;
}

.zone-c {
    --color-zone: black !important;
    --background-color-zone: #FCE205 !important;
}

.zone-d1 {
    --color-zone: white !important;
    --background-color-zone: #822AB7 !important;
}

.zone-d2 {
    --color-zone: white !important;
    --background-color-zone: #822AB7 !important;
}

.zone-d3 {
    --color-zone: white !important;
    --background-color-zone: #822AB7 !important;
}

.zone-e {
    --color-zone: white !important;
    --background-color-zone: #EE0183 !important;
}

.btn-zone {
    color: var(--color-zone);
    background-color: var(--background-color-zone);
    font-size: 1.25rem;
    padding: 1px 0px !important;
    width: 50px;
    min-height: 35px !important;
    margin: 0px 1px !important;
}


.btn-payment {
    background-color: transparent;
    color: black;
    border: 1px solid #777777;
    font-size: 1.2rem;
    width: calc(98.5% / 3);
    text-align: start;
    padding: 10px 12px;
    margin-bottom: 10px;
}

    .btn-payment:checked + .btn {
        color: #fff !important;
        background-color: #171717 !important;
        border-color: white !important;
        border-width: 0px !important;
    }

.btn-check.btn-payment:checked + .btn {
    background-color: #000000 !important;
}

.btn-check:checked + .btn {
    color: #fff !important;
    background-color: #00cf07 !important;
    border-color: white !important;
    border-width: 0px !important;
}

.btn-check:disabled + .btn {
    color: #fff !important;
    background-color: #777777 !important;
    border-color: white !important;
    border-width: 0px !important;
}


.btn-zone.btn-blank:disabled {
    color: transparent !important;
    background-color: transparent !important;
}

.viewport-container {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 47.7%; /* Aspect Ratio (919 / 1920 * 100) */
    overflow: auto;
}

.viewport {
    position: absolute;
    top: 0;
    left: 0;
    min-width: calc((1920px) * 0.472);
    width: 100%;
    height: 500px;
    overflow: auto; /* or overflow: hidden; if you prefer to hide overflow content */
}

.viewport-container.seat-plan {
    min-height: 1350px;
}

.viewport.seat-plan {
    height: auto;
    width: calc((1920px) * 0.472);
    top: 0%;
    left: 50%;
    -ms-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
}

/* .content.seat-plan {
    height: 1000px;
} */



.bg-blur {
    background-color: #fff;
    color: #FF0000;
    border-radius: 5px;
    width: 60%;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999;
}

.zoom-zone-d {
    zoom: 0.9;
}

.img-item {
    height: 600px;
    width: auto;
    object-fit: contain;
}

.button-img {
    background-image: linear-gradient(to top, #421c1c, #dd1818);
    background-size: cover;
    height: 140px;
    width: 100%;
    background-color: #FF0100;
    color: #fff;
    border-radius: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
}

    .button-img img, .button-img i {
        width: 35px;
        margin-right: 15px;
    }

    .button-img .btn-menu, .button-img .btn-tips {
        width: 45px;
        margin-right: 15px;
    }

.button-tips {
    background-image: linear-gradient(to top, #ffffff, #ffffff);
    color: #FF0000;
    -webkit-box-shadow: inset -5px -5px 4px 0px rgba(0,0,0,0.5);
    -moz-box-shadow: inset -5px -5px 4px 0px rgba(0,0,0,0.5);
    box-shadow: inset -5px -5px 4px 0px rgba(0,0,0,0.5);
}

.list-group-item.history-list {
    background-color: transparent !important;
    --bs-list-group-border-color: rgba(255, 255, 255, 0.3);
    margin-top: 0.5rem;
}

.nav-pills .nav-red.active {
    color: white !important;
    background-color: #CD0000 !important;
}

.nav-pills .nav-red {
    color: white !important;
    background-color: black !important;
}

.carousel-indicators [data-bs-target] {
    height: 12px;
    border-radius: 50%;
    width: 12px;
    margin-left: 5px;
    margin-right: 5px;
    margin-bottom: -2rem;
}

.carousel-control-next, .carousel-control-prev {
    width: auto;
}

.carousel-control-next {
    right: -30px;
}

.carousel-control-prev {
    left: -30px;
}

p.collapse[aria-expanded="false"] {
    min-height: 60px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

p.collapse.show {
    overflow: visible;
    display: block;
    -webkit-box-orient: horizontal;
    -webkit-line-clamp: none;
}

a.collapsed:after {
    content: 'แสดงรายละเอียด';
}


.dropdown-toggle::after {
    display: none;
}

#img-pfp {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50%;
    display: block;
}

.container-60 {
    width: 60%;
}

@media (max-width: 575.98px) {
    .container-60 {
        width: 92%;
    }
}

/* หน้า login */
a.text-decoration-underline:not(.collapsed):not(.register-link)::after {
    content: 'แสดงแบบย่อ';
}