body {
    background: #1A1D21;
}


@font-face {
    font-family: 'Sriracha';
    src: url(/assets/fonts/Sriracha-Regular.woff) format('woff');
}

@font-face {
    font-family: 'Gruppo';
    src: url(/assets/fonts/Gruppo-Regular.woff) format('woff');
}

.ignore {
    pointer-events: none;
}

.no-pointer {
    cursor: default !important;
}

.alertify {
    z-index: 999999;
}

.alertify .dialog>* {
    width: 1000px;
    text-align: unset;
}

.alertify .alert-msg {
    font-size: 20px;
}

.alertify .alert-msg .title {
    color: #f00;
    text-align: center;
    margin-bottom: 20px;
}

.alertify .alert-msg pre {
    color: #777777;
}

.game-select-form {
    width: 1000px;
    height: 450px;
    background-repeat: no-repeat;
    background: url(/assets/images/game-select-bg.jpg);
    /* background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(19,0,0,1) 29%, rgba(6,0,1,1) 77%, rgba(41,0,10,1) 100%); */
    border-radius: 15px;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    flex-direction: column;
}

.game-select-title {
    font-size: 40px;
    color: white;
    text-shadow: 5px 5px 6px #000000;
    font-weight: 400;
    font-family: 'SCoreDream';
}

.game-select-btns {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    gap: 47px;
}

.game-btn {
    width: 300px;
    height: 200px;
    cursor: pointer;
    background-repeat: no-repeat;
    opacity: 0.9;
}

.game-btn:hover {
    opacity: 1;
}

.game-btn.disabled {
    cursor: default;
    /* pointer-events: none; */
    filter: brightness(0.5);
    /* opacity: 0.5; */
}

/* .game-btn.evolution {
  background: url(/assets/images/evolution.png);
}
.game-btn.pragmatic {
  background: url(/assets/images/pragmatic-play.png);
} */
.pdl-2 {
    padding-left: 2px;
}

.pdl-4 {
    padding-left: 4px;
}

.pdl-6 {
    padding-left: 6px;
}

.pdt-2 {
    padding-top: 2px;
}

.pdt-4 {
    padding-top: 4px;
}

.pdt-6 {
    padding-top: 6px;
}

.pdr-2 {
    padding-right: 2px;
}

.pdr-4 {
    padding-right: 4px;
}

.pdr-6 {
    padding-right: 6px;
}

.pdb-2 {
    padding-bottom: 2px;
}

.pdb-4 {
    padding-bottom: 4px;
}

.pdb-6 {
    padding-bottom: 6px;
}

/*   ì»¨í…Œì´ë„ˆ   */
.content-page {
    margin-left: 0px;
}

.content-page .content {
    width: 100%;
    /* í™”ë©´ í¬ê¸°ì— ë”°ë¼ ìžë™ìœ¼ë¡œ ì¡°ì ˆ */
    max-width: 1914px;
     min-height: 400px;
    /* ë°ìŠ¤í¬í†±ì—ì„œëŠ” ìµœëŒ€ 1914pxê¹Œì§€ë§Œ í™•ìž¥ */
    margin: 10px auto 0;
    /* ìƒë‹¨ ì—¬ë°± ìœ ì§€ + ê°€ìš´ë° ì •ë ¬ */
    padding: 0 20px;
    /* ì¢Œìš° íŒ¨ë”©ìœ¼ë¡œ ëª¨ë°”ì¼ì—ì„œ ì—¬ë°± í™•ë³´ */
    box-sizing: border-box;
}

@media (max-width: 1024px) {
    .content-page .content {
        padding: 0 15px;
    }
}

@media (max-width: 768px) {
    .content-page .content {
        padding: 0 10px;
    }
}

/* .overay {
  position: relative;
}
.overay .container-fluid {
  position: absolute;
  z-index: 1;
} */



.page {
    position: relative;
    width: 100%;
}

.page .con {
    /* max-width: 1694px;*/
    /* margin-left: auto; */
    /* margin-right: auto; */
    /* margin-left: 5rem;
  margin-right: 5rem; */
    user-select: none;
}

.page .con.wide {
    margin-left: 0px;
    margin-right: 0px;
}








/*   ì„œì‹ ê´€ë¦¬   */

.format-group-title {
    user-select: none;
    font: normal normal 300 20px/21px SCoreDream;
    letter-spacing: 0px;
    color: #CED4DA;
    margin-top: 20px;
    margin-bottom: 20px;
    display: flex;
}

.format-group-title .add-btn {
    margin-left: 6px;
    cursor: pointer;
    font-size: 14pt;
    color: #5596f7;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 20px;
    height: 20px;
    border-radius: 6px;

    transition: background-color 0.25s ease, transform 0.2s ease, color 0.25s ease;
}

/* hover ì‹œ: ì‚´ì§ ê°•ì¡° */
.format-group-title .add-btn:hover {
    background-color: rgba(85, 150, 247, 0.15);
    color: #71aaff;
    transform: scale(1.05);
}

/* active ì‹œ: ëˆŒë¦° ëŠë‚Œ */
.format-group-title .add-btn:active {
    background-color: rgba(85, 150, 247, 0.25);
    transform: scale(0.95);
}


.default-format-list,
.my-format-list,
.my-option-list {
    display: flex;
    user-select: none;
    flex-wrap: wrap;
    gap: 30px 34px;
      justify-content: center;
}

.format-list-scroll,
.option-list-scroll {
    /*height: calc(100vh - 91px);*/
    overflow-y: auto;
    overflow-x: hidden;
}

.format-card {
    user-select: none;
    display: inline-block;
    flex: 0 0 380px;
    width: 380px;
    height: 112px;

    background: linear-gradient(180deg, #262a2f 0%, #1f2328 100%);
    border: 1px solid #32383e;
    border-radius: 8px;
    padding: 28px 24px;
    cursor: pointer;

    /* ìž…ì²´ê°: ë°”ê¹¥ ê·¸ë¦¼ìž + ì•ˆìª½ ì‚´ì§ ìŒì˜ */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.35),
        inset 0 1px 1px rgba(255, 255, 255, 0.05);

    /* ë¶€ë“œëŸ¬ìš´ ì „í™˜ */
    transition: transform 0.25s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

/* hover ì‹œ */
.format-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.45),
        inset 0 1px 1px rgba(255, 255, 255, 0.05);
    border-color: #5596f7;
}

/* active ì‹œ */
.format-card:active {
    transform: translateY(1px);
    box-shadow: inset 0 3px 6px rgba(0, 0, 0, 0.4);
    border-color: #3f4852;
}


.format-card .title {
    font: normal normal 300 20px/21px SCoreDream;
    letter-spacing: 0px;
    color: #EFF2F7;
    padding-top: 15px;
    /* margin-bottom: 10px; */
}

.default-format-list .format-card {
    padding-top: 10px;
    padding-right: 20px;
}

.default-format-list .format-card-header {
    margin-bottom: 4px;
}

.my-format-list .format-card {
    height: 130px;
    padding-top: 18px;
    padding-right: 20px;
}

.format-card-header {
    display: flex;
    margin-bottom: 32px;
    position: relative;
}

.format-card-header .date {
     font: normal normal 300 15px SCoreDream;
    letter-spacing: 0px;
    color: #CED4DA;
    align-self: center;
}

.format-card-header .fav {
    margin-left: auto;
    font-size: 20px;
    margin-right: 4px;
    cursor: pointer;
    color: #32383E;
}

.format-card-header .fav.active {
    color: #F1F64E;
}

.format-card-header .menu {
    font-size: 20px;
    cursor: pointer;
}

.format-card-header .menu-popup {
    display: flex;
    flex-direction: column;

    min-width: 120px;
    /* ë©”ë‰´ í¬ê¸° í™•ì‹¤ížˆ */
    padding: 6px 0;

    background: rgba(33, 37, 41, 0.9);
    /* ë°˜íˆ¬ëª… ë‹¤í¬ */
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 6px;

    position: absolute;
    right: 0;
    top: 32px;
    font: 400 13px/18px "SCoreDream", sans-serif;
    color: #eff2f7;

    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.5);
    /* ë“œë¡­ë‹¤ìš´ ëŠë‚Œ */
    backdrop-filter: blur(8px);
    /* ì‚´ì§ ê¸€ëž˜ìŠ¤ íš¨ê³¼ */
    -webkit-backdrop-filter: blur(8px);

    z-index: 1000;
    /* ìœ„ì— ë³´ì´ë„ë¡ */
    animation: fadeInScale 0.2s ease;
}

/* ë©”ë‰´ ì•„ì´í…œ */
.format-card-header .menu-popup .menu-item {
    padding: 8px 14px;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.format-card-header .menu-popup .menu-item:hover {
    background-color: rgba(85, 150, 247, 0.15);
    color: #5596f7;
}

/* ì• ë‹ˆë©”ì´ì…˜ */
@keyframes fadeInScale {
    from {
        opacity: 0;
        transform: scale(0.95);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

.menu-popup>* {
    margin: 2px;
}

.menu-popup .btn-clone>i {
    font-size: 8pt;
    margin-right: 6px;
}

.menu-popup .btn-remove>i {
    margin-right: 4px;
    font-size: 10pt;
}

.menu-popup .btn-remove,
.menu-popup .btn-clone {
    display: flex;
    cursor: pointer;
}

/* .menu-popup  */
.line {
    height: 1px;
    border-bottom: 0.5px solid #ced4da42;
}

.edit-format-name {
    width: 100%;
    height: 40px;
    background-color: #262a2f;
    /* ë‹¨ìƒ‰, ìž…ì²´ê° ì œê±° */
    border: 1px solid #32383e;
    border-radius: 6px;
    font: 300 15px/21px "SCoreDream", sans-serif;
    color: #eff2f7;
    padding-left: 10px;

    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.edit-format-name::placeholder {
    color: #9ca3af;
    opacity: 0.7;
}

/* focus ì‹œ */
.edit-format-name:focus {
    outline: none;
    border-color: #5596f7;
    background-color: #2c3137;
}

/* í…ìŠ¤íŠ¸ì˜ì—­ */
.edit-format-value {
    padding: 10px;
    width: 100%;
    height: calc(100vh - 417px);

    background-color: #262a2f;
    /* í”Œëž« */
    border: 1px solid #32383e;
    border-radius: 6px;

    font: 300 15px/21px "SCoreDream", sans-serif;
    color: #eff2f7;

    resize: none;
    line-height: 1.5;

    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.edit-format-value::placeholder {
    color: #9ca3af;
    opacity: 0.7;
}

.edit-format-value:focus {
    outline: none;
    border-color: #5596f7;
    background-color: #2c3137;
}

.con .btn:not(button) {
    display: flex;
    font: 300 15px/21px "SCoreDream", sans-serif;
    color: #eff2f7;
    cursor: pointer;
    padding: 0;
    border-radius: 6px;
    /* ì „ì²´ ë¼ìš´ë”© ì¡°ê¸ˆ í‚¤ì›€ */
    overflow: hidden;
    /* ì•„ì´ì½˜/í…ìŠ¤íŠ¸ ë¶™ìž„ë§¤ê¹€ ì •ë¦¬ */
    transition: transform 0.2s ease, box-shadow 0.3s ease;
}

/* Hover: ì‚´ì§ ë– ì˜¤ë¥´ê³  ë°ì•„ì§ */
.con .btn:hover:not(button) {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35);
}

/* Active: ëˆŒë¦° ëŠë‚Œ */
.con .btn:active:not(button) {
    box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.4);
}

/* ì•„ì´ì½˜ ì˜ì—­ */
.btn>.icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    font-size: 22pt;
    flex: 0 0 50px;
    color: #fff;
}

/* í…ìŠ¤íŠ¸ ì˜ì—­ */
.btn>.text {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    height: 50px;
    font-weight: 500;
    color: #fff;
}

/* -------- ìƒ‰ìƒ í…Œë§ˆ -------- */

/* ë„¤ì´ë¹„ */
.btn-navy>.icon {
    background: linear-gradient(180deg, #7c89b6 0%, #5a648c 100%);
}

.btn-navy>.text {
    background: linear-gradient(180deg, #4a5a99 0%, #384674 100%);
}

/* ë¸”ë£¨ */
.btn-blue>.icon {
    background: linear-gradient(180deg, #9db6f0 0%, #7a93d6 100%);
}

/* ë¸”ë£¨ */
.btn-red>.icon {
    background: linear-gradient(180deg, #c5716e 0%, #b14c49 100%);
}

.btn-blue>.text {
    background: linear-gradient(180deg, #6a9cf0 0%, #4d7ed1 100%);
}

.btn-red>.text {
    background: linear-gradient(180deg, #d64541 0%, #b12d2a 100%);
}

/* í¼í”Œ */
.btn-purple>.icon {
    background: linear-gradient(180deg, #b99bf0 0%, #9679d6 100%);
}

.btn-purple>.text {
    background: linear-gradient(180deg, #9a74f0 0%, #764ac8 100%);
}

/* ë‹¤í¬ */
.btn-dark>.icon {
    background: linear-gradient(180deg, #555555 0%, #3a3a3a 100%);
}

.btn-dark>.text {
    background: linear-gradient(180deg, #2e2e2e 0%, #1c1c1c 100%);
}


.btns {
    display: flex;
    gap: 0px 17px;
    justify-content: flex-end;
}

.btn-save {
    width: 400px;
}

.btns .btn-fill-option {
    width: 300px;
}

.btns .btn-save {
    width: 200px;
    display: inline-block;
}

.btns .btn-reset {
    width: 200px;
    display: inline-block;
}

.btn-delete {

    background-color: #fc5454;
    border: 1px solid #fc5454;
}

.w100p {
    width: 100%;
}








/*    ì˜µì…˜ ê´€ë¦¬    */

.col-58p {
    flex: 0 0 58%;
    max-width: 58%;
}

.col-42p {
    flex: 0 0 42%;
    max-width: 42%;
}

.flex-unset {
    flex: unset !important;
}

.check-label {
    margin-top: 1px;
}

.checkbox label {
    font: normal normal 100 15px/18px SCoreDream;
    color: #EFF2F7;
}

.option-editbox {
    padding: 24px !important;
    /* height: 642px; */
    height: calc(100vh - 357px);
    overflow-y: auto;
}

.option-editbox .title,
.setting-form .title {
    font: normal normal 300 15px/21px SCoreDream;
    color: #EFF2F7;
    margin: 0px 4px;
    margin-bottom: 20px;
}

.option-editbox .line {
    height: 1px;
    border-bottom: 0.5px solid #32383E;
    margin-top: 25px;
    margin-bottom: 25px;
}

.height-unset {
    height: unset !important;
}

.flex {
    display: flex !important;
}

.flex-end {
    display: flex;
    justify-content: flex-end;
}

.f1 {
    flex-grow: 1 !important;
}

.f2 {
    flex-grow: 2 !important;
}

.f3 {
    flex-grow: 3 !important;
}

.w100 {
    width: 100px !important;
}

.w90 {
    width: 90px !important;
}

.w80 {
    width: 80px !important;
}

.w70 {
    width: 70px !important;
}

.w50 {
    width: 50px !important;
}

.form input,
.form .select {
    max-width: 150px !important;
}

.form input:disabled,
.form select:disabled,
.form .select.disabled {
    background-color: #1f2223;
    color: #626568;
    cursor: default;
}

.center {
    text-align: center;
}

.align-baseline {
    align-items: baseline;
}

/* .option-editbox  */
.flex>* {
    align-self: center;
}

.option-editbox .form-group,
.main-setting .form-group {
    margin-bottom: 2rem;
}

.option-editbox .form,
.main-setting .form {
    display: flex;
    margin: 10px 24px;
}

.main-setting .title {
    font: normal normal 300 15px/21px SCoreDream;
    color: #CED4DA;
    margin: 0px 4px;
    margin-bottom: 20px;
}

.option-editbox .label,
.main-setting .label,
.search-setting .label {
    margin-right: 10px;
}

.option-editbox .checkbox {
    margin-top: 1px;
}

.main-setting .checkbox {
    margin-top: 1px;
    flex: 0 0 0px;
}

.main-setting .title {
    display: flex;
}

.option-editbox .checkbox>label,
.main-setting .checkbox>label {
    margin-left: 10px;
}





/*   ë£¸ ì„¤ì •   */

.box {
    background: linear-gradient(180deg, #1e2125 0%, #181a1d 100%);
    border: 1px solid #2b2f35;
    border-radius: 8px;
    padding: 16px;

    /* ê·¸ë¦¼ìž: ê¹Šì´ê° ì£¼ê¸° (ìœ„ëŠ” ì–•ê²Œ, ì•„ëž˜ëŠ” ì‚´ì§ ì§„í•˜ê²Œ) */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35),
        0 -1px 2px rgba(255, 255, 255, 0.05) inset;

    /* í°íŠ¸ ê¸°ë³¸ */
    color: #e0e0e0;
    font-size: 14px;

    /* ë¶€ë“œëŸ¬ìš´ ì „í™˜ */
    transition: box-shadow 0.3s ease, transform 0.2s ease;
}



.room-box {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 10px;
    height: 260px;
    overflow-y: scroll;
}

.room-box .title {
    font: normal normal 300 15px/21px SCoreDream;
    letter-spacing: 0px;
    color: #CED4DA;
    margin: 10px;
    margin-top: 0px;
}

.room-box .line {
    height: 1px;
    border-bottom: 0.5px solid #32383E;
    margin-bottom: 10px;
}

.room-box .all {
    padding: 10px;
}

.room-box .list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 20px;
    padding: 10px;
}

.checkbox {
    display: flex;
    height: 15px;
    flex: 0 0 250px;
}

.checkbox>label {
    margin-left: 20px;
    margin-bottom: 0px;
    cursor: pointer;
    align-self: center;
}

.check {
    display: inline-block;
}

.check-label {
    display: inline-block;
    position: relative;
    width: 15px;
    height: 15px;
    background: linear-gradient(180deg, #4a4f59 0%, #363b44 100%);
    border: 1px solid #2b2f35;
    border-radius: 3px;
    cursor: pointer;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.4);
    transition: all 0.25s ease;
}

.check-label::before,
.check-label::after {
    position: absolute;
    height: 0px;
    width: 2px;
    background-color: #fff;
    box-sizing: border-box;
    display: inline-block;
    transform-origin: left top;
    /* border-radius: 5px; */
    content: ' ';
    -webkit-transition: opacity ease 0.5;
}

.check-label::before {
    top: 11.4px;
    left: 6.2px;
    box-shadow: 0 0 0 1px transparent;
    transform: rotate(-135deg);
}

.check-label::after {
    top: 7px;
    left: 2px;
    transform: rotate(-45deg);
}

.check input[type="checkbox"],
.check input[type="radio"] {
    display: none;
}

.check input[type="checkbox"]:checked+.check-label,
.check input[type="radio"]:checked+.check-label {
    background: linear-gradient(180deg, #6a9cf0 0%, #4d7ed1 100%);
    color: #fff;
    border-radius: 4px;

    /* ì²´í¬ ì‹œ ìž…ì²´ê° */
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);

    /* ë¶€ë“œëŸ¬ìš´ ì „í™˜ */
    transition: all 0.3s ease;
}



.check input[type="checkbox"]:checked+.check-label::after,
.check input[type="radio"]:checked+.check-label::after {
    animation: bottomcheck 0.2s ease 0s forwards;
}

.check input[type="checkbox"]:checked+.check-label::before,
.check input[type="radio"]:checked+.check-label::before {
    animation: topcheck 0.4s ease 0s forwards;
}

@keyframes bottomcheck {
    0% {
        height: 0;
    }

    100% {
        height: 6px;
    }
}

@keyframes topcheck {
    0% {
        height: 0;
    }

    50% {
        height: 0;
    }

    100% {
        height: 10px;
    }
}

.font-big {
    font: normal normal 300 15px/21px SCoreDream;
}

.room-table table {
    font: normal normal 300 15px/21px SCoreDream;
    color: #CED4DA;
    text-align: center;
    /* height: 420px; */
    display: block;
}

.room-table table>tbody>tr>td {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}

.room-table tbody {
    border-bottom: 1px solid #2c3034;
    /* height: 372px; */
    height: calc(100vh - 700px);
    display: block;
    overflow-y: auto;
}

.label {
    display: inline-block;
    font: normal normal 300 15px/21px SCoreDream;
    color: #CED4DA;
}

input.input-text {
    color: #eff2f7;
    text-align: center;

    /* ë‹¨ìƒ‰ ë‹¤í¬ ë°°ê²½ */
    background-color: #262a2f;

    border: 1px solid #32383e;
    border-radius: 3px;

    height: 38px;
    width: 100%;


    font-size: 14px;
    font-weight: 500;

    /* ìž…ì²´ê° ì œê±° â†’ ë¶€ë“œëŸ¬ìš´ ì „í™˜ë§Œ */
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

/* placeholder */
input.input-text::placeholder {
    color: #9ca3af;
    opacity: 0.7;
}

/* hover ì‹œ */
input.input-text:hover {
    border-color: #3f4852;
}

/* focus ì‹œ */
input.input-text:focus {
    outline: none;
    border-color: #5596f7;
    background-color: #2c3137;
    /* ì‚´ì§ë§Œ ê°•ì¡° */
}


input[type="number"].input-text::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.select select {
    /* width: calc(100% - 24px); */
    width: 100%;
    height: 100%;
    padding: 0 28px 0 10px;
    font-size: 15px;
    border: 0;
    -webkit-appearance: none;
    /* for chrome */
    -moz-appearance: none;
    /*for firefox*/
    appearance: none;
    box-sizing: border-box;
    /* background:transparent; */
    background-color: #262A2F;
    cursor: pointer;
    color: #EFF2F7;
    text-align: center;
}

/* .select select:active {
  color: #EFF2F7;
  background-color: #262A2F;
} */
/* ì…€ë ‰íŠ¸ ë°•ìŠ¤ ê¸°ë³¸ */
.select {
    position: relative;
    width: 100%;
    height: 38px;
    background-color: #262A2F;
    border: 1px solid #32383E;
    border-radius: 6px;
    /* ì‚´ì§ ë” ë¼ìš´ë“œ */
    overflow: hidden;

    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.select:hover {
    border-color: #3f4a54;
    box-shadow: 0 0 6px rgba(85, 150, 247, 0.15);
    /* ì€ì€í•œ íŒŒëž€ ê°•ì¡° */
}

/* ì…€ë ‰íŠ¸ ë‚´ë¶€ */
.select select {
    width: 100%;
    height: 100%;
    padding: 0 32px 0 12px;
    /* ì˜¤ë¥¸ìª½ ì—¬ë°± ëŠ˜ë¦¼ (ì•„ì´ì½˜ ìžë¦¬) */
    font-size: 15px;
    font-family: 'SCoreDream', sans-serif;
    border: none;
    background: #262A2F;
    color: #EFF2F7;
    cursor: pointer;
    text-align: center;

    /* ë¸Œë¼ìš°ì € ê¸°ë³¸ í™”ì‚´í‘œ ì œê±° */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* í™”ì‚´í‘œ */
.select .arrow {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    pointer-events: none;

    background-image: url("/assets/images/arrow_bottom.png");
    background-repeat: no-repeat;
    background-size: 12px;
    background-position: center;
    opacity: 0.8;
    transition: opacity 0.2s ease;
}

.select:hover .arrow {
    opacity: 1;
}

/* ë¹„í™œì„±í™” ìƒíƒœ */
.select.disabled {
    background-color: #1c1f24;
    border-color: #2b2f34;
    cursor: not-allowed;
}

.select.disabled select {
    color: #6c757d;
    cursor: not-allowed;
}

.select.disabled .arrow {
    background-image: url("/assets/images/arrow_bottom_dark.png");
    opacity: 0.5;
}

input.percent {
    width: 90%
}

.main-setting {
    text-align: center;
}

.help {
    display: inline-block;
    margin-left: 2px;
    cursor: pointer;
}

.help>* {
    pointer-events: none;
}

.tooltip {
    position: fixed;
    pointer-events: none;
    display: none;
    padding: 5px;
    background-color: #262A2F;
    border: 1px solid #3371ff;
    border-radius: 3px;
    z-index: 9999;
}

.tooltip.active {
    display: inline-block;
    opacity: 1;
}

.help.warning-option {
    position: absolute;
    top: 14px;
    left: 18px;
    font-size: 16pt;
    color: #4675f9;
}

.help.warning-empty-format-value {
    font-size: 16pt;
    color: #dd732c;
}










/*   í”Œë ˆì´ ë£¸   */
/* ---------- Text Colors ---------- */
.cl-blue {
    color: #4a90e2 !important;
    /* ì¢€ ë” ì°¨ë¶„í•œ ë¸”ë£¨ */
}

.cl-orange {
    color: #e67e45 !important;
    /* ê¸°ì¡´ë³´ë‹¤ ëœ ê°•ë ¬ */
}

.cl-real {
    color: var(--real-color, #5b8def) !important;
}

.cl-virtual {
    color: var(--virtual-color, #a88be0) !important;
}


/* ---------- Background Colors ---------- */
.bg-blue {
    background: linear-gradient(180deg, #4a90e2 0%, #336ad3 100%) !important;
}

.bg-darkblue {
    background: linear-gradient(180deg, #2e4372 0%, #1c2c54 100%) !important;
}

.bg-green {
    background: linear-gradient(180deg, #76b852 0%, #5a923d 100%) !important;
}

.bg-orange {
    background: linear-gradient(180deg, #e67e45 0%, #c96430 100%) !important;
}


.bg-red {
    background: linear-gradient(180deg, #d64541 0%, #b12d2a 100%) !important;
}

.bg-darkred {
    background: linear-gradient(180deg, #992d2d 0%, #661b1b 100%) !important;
}

.bg-real {
    background: linear-gradient(180deg, var(--real-color, #5b8def) 0%, #436bbd 100%) !important;
}

.bg-virtual {
    background: linear-gradient(180deg, var(--virtual-color, #a88be0) 0%, #56319d 100%) !important;
}


.bg-dark {
    background: linear-gradient(180deg, #212529 0%, #181a1d 100%) !important;
}

.dbd-r {
    border-right: 1px dashed #32383E;
}

.dbd-b {
    border-bottom: 1px dashed #32383E;
}

.sbd-r {
    border-right: 1px solid #32383E;
}

.sbd-b {
    border-bottom: 1px solid #32383E;
}

.v-line {
    width: 1px;
    height: 100%;
    border-left: 0.5px solid #32383E;
}

.h-line {
    width: 100%;
    height: 1px;
    border-bottom: 1px solid #32383E;
}

.btn-login-complete {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    z-index: 999;
}

.btn-login-complete #loginComplete {
    height: 80px;
    font-size: 20px;
    font-weight: bold;
    background-color: #53c17f;
    color: #fff;
}

.loading {
    /* margin: 100px; */
    text-align: center;
}

.table-log {
    height: 250px;
    overflow-y: auto;
    padding: 4px;
}


.main-top {
    display: flex;
    margin-bottom: 2px;
    margin-top: 89px;
    height: 216px;
    width: 1730px;
    padding: 0px;
    justify-content: space-between;
}


.main-top .main-graph {
    width: 691px;
    height: 187px;
    margin: 14px 32px;
    /* border: 1px solid rgb(122, 148, 84); */
}

.main-top>.info-box {
    /* width: calc(561px - 42px * 2); */
    width: calc(646px - 42px * 2);
    /* margin: 12px 42px; */
    margin: 2px 0px;
    display: flex;
    flex-wrap: wrap;
    border: unset;
}

.main-top .button-box {
    display: flex;
    flex-wrap: wrap;
    margin: 0px 52px;
    width: 250px;
}

.main-top .button-box .btn-group {
    width: 100%;
}

.main-top>.info-box .info-item {
    /* width: 238px; */
    /* height: 83px; */
    /* padding: 8px 25px; */
    width: 277px;
    height: 93px;
    padding: 0px 10px;
}

.button-box .state-buttons {
    display: flex;
    align-items: center;
}

.button-box .btn {
    height: 30px;
    width: 100%;
    margin-bottom: 3px;
    border: 1px solid #32383E;
    display: flex;
    align-items: center;
    justify-content: center;
}

.button-box .btn-state {
    /* width: 50px; */
    padding: 0px 4px !important;
    height: 24px;
    background: #30322B 0% 0% no-repeat padding-box;
    border-radius: 3px;
    text-align: center;
    color: #FFFFFF;
    font: normal normal 300 11px/9px SCoreDream !important;
    vertical-align: 5%;
}

.button-box .btn-state.disabled {
    cursor: default;
    pointer-events: none;
    filter: brightness(0.5);
}

.view-control {
    display: flex;
    /* margin-top: 3px; */
    margin-bottom: 0px;
    width: 146px;
    gap: 3px;
}

/* .view-control .btn-show:hover { */
.btn-show:hover,
.btn-control:hover,
.btn-reset-profit:hover,
.btn-reload-history:hover {
    background-color: #e6e6e6;
    color: #000;
}

.button-box .btn-stop-reserve-cancel-all {
    background-color: #a62525;
}

.main-top>.info-box>.info-item .label {
    font: normal normal 300 15px/21px SCoreDream;
    color: #CED4DA;
}


.search-setting .text {
    /* font: normal normal 200 33px/46px SCoreDream; */
    display: flex;
    align-items: center;
    justify-content: space-between;
    font: 500 20px/1.5 "SCoreDream", sans-serif;
    color: #ffffff;
    margin-right: 30px;
    margin-bottom: 20px;
    margin-left: 30px;
    font-weight: 700;
}

.main-top>.info-box>.info-item .text {
    /* font: normal normal 200 33px/46px SCoreDream; */
    display: flex;
    align-items: center;
    justify-content: space-between;
    font: normal normal 200 28px/33px SCoreDream;
    color: #CED4DA;
}

.main-top>.info-box>.info-item .text>.sub {
    /* font: normal normal 200 33px/46px SCoreDream; */
    font: normal normal 200 18px/33px SCoreDream;
    color: #CED4DA;
}

.main-top>.info-box>.stop-condition {
    font: normal normal 300 15px/21px SCoreDream;
    color: #CED4DA;
    margin: auto;
}

.main-top>.info-box>.stop-condition>.stop-condition-label {
    display: inline;
    margin-right: 15px;
    color: #c8df5b;
}

.main-top>.info-box>.stop-condition>.btn-control {
    display: inline-block;
}

.btn-control.disabled {
    pointer-events: none;
    cursor: default;
    opacity: 0.5;
}

.checkbox .card {
    background: #212529 0% 0% no-repeat padding-box;
    width: 100%;
    border: 1px solid #32383E;
}

.checkbox .card .card-header {
    padding: 1rem;
}

.checkbox .card .card-header .form-control {
    background: #212529 0% 0% no-repeat padding-box;
    border: 1px solid #32383E;
    margin-right: 1px;
}

.checkbox .card .card-body {
    padding: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
}

.checkbox textarea {
    padding: 10px;
    width: 400px;
    /* height: 635px; */
    height: 100px;
    background: #212529 0% 0% no-repeat padding-box;
    border: 1px solid #32383E;
    border-radius: 3px;
    font: normal normal 300 15px/21px SCoreDream;
    color: #CED4DA;
    resize: none;
}

.exclusion-pattern {
    padding: 10px;
    width: 400px;
    /* height: 635px; */
    height: 100px;
    line-height: 1.8;
    background: #212529 0% 0% no-repeat padding-box;
    border: 1px solid #32383E;
    border-radius: 3px;
    font: normal normal 350 19px/21px Nanum Gothic;
    color: #CED4DA;
    line-height: 1.4;
    letter-spacing: 2px;
    resize: none;
    /* text-transform: uppercase; */
}

.main-body {
    display: flex;
    margin-top: 10px;
    height: calc(100vh - 351px);
}

.room-list {
    position: relative;
    min-width: 1440px;
    display: flex;
    flex-wrap: wrap;
    /* height: calc(100vh - 326px); */
    overflow-y: auto;
    /* justify-content: space-between; */
    margin-right: 6px;
    gap: 15px 15px;
}

.room {
    position: relative;
    display: flex;
    width: 700px;
    height: fit-content;

    /* ë°°ê²½: ì€ì€í•œ ë‹¤í¬ ê·¸ë¼ë°ì´ì…˜ */
    background: linear-gradient(180deg, #1f2328 0%, #181a1d 100%);

    /* í…Œë‘ë¦¬: ë” ì •ì œëœ ë‹¤í¬ í†¤ */
    border: 1px solid #2b2f35;
    border-radius: 8px;

    /* ë‚´ë¶€ ì—¬ë°± */


    /* ê¹Šì´ê° ì£¼ê¸° */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35),
        0 -1px 2px rgba(255, 255, 255, 0.05) inset;

    /* ë¶€ë“œëŸ¬ìš´ ì „í™˜ */
    transition: transform 0.2s ease, box-shadow 0.3s ease;
}



.room.real {
    /* background-color: #1B2039; */
    background: linear-gradient(354deg, hwb(243deg 0% 86%) 0%, rgba(27, 32, 57, 1) 72%, rgb(46 75 133) 100%);
}

.room.virtual {
    /* background-color: #865CE21A; */
    background: linear-gradient(354deg, hwb(270deg 5% 80%) 0%,
            /* ì—°ë³´ë¼ë¹› (ë¼ë²¤ë” ëŠë‚Œ) */
            rgba(40, 30, 65, 1) 72%,
            /* ë‚¨ë³´ë¼/ë”¥ë°”ì´ì˜¬ë › */
            rgb(88 55 175) 100%
            /* í¬ì¸íŠ¸ ë˜ëŠ” ë³´ë¼ (í¼í”Œ/ë°”ì´ì˜¬ë ›) */
        );
}

.room.virtual.pause {
    background: linear-gradient(354deg, hwb(243deg 0% 86%) 0%, rgba(27, 32, 57, 1) 72%, rgb(22 17 71) 100%);
}

.room.real.pause {
    background: linear-gradient(354deg, hwb(243deg 0% 86%) 0%, rgba(27, 32, 57, 1) 72%, rgb(15 41 93) 100%);
}

.room .cover {
    background: #000000a1;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1001;
    display: flex;
    align-items: center;
    justify-content: center;
}

.room .cover .reconnect-ui {
    color: #EFF2F7;
    min-height: 1px;
    padding: 1.25rem;
    /* text-align: center; */
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.room .left {
    width: 471px;
    height: 100%;
    border-right: 1px solid #32383E;
}

.room .left .top {
    border-bottom: 1px solid #32383E;
    width: 471px;
    height: 41px;
    /* align-self: baseline; */
    align-items: center;
    display: flex;
}

.room .state {
    width: 37px;
    height: 18px;
    background: #30322B 0% 0% no-repeat padding-box;
    border-radius: 3px;
    text-align: center;
    cursor: pointer;
}

.room .state.disabled {
    /* cursor: default; */
    /* pointer-events: none; */
    filter: brightness(0.4);
}

.room .stop-rv {
    width: 45px;
    height: 18px;
    background: #3c3c3c 0% 0% no-repeat padding-box;
    /* font: normal normal 300 8px/11px SCoreDream; */
    font: normal normal 300 10px/11px SCoreDream;
    border-radius: 9px;
    text-align: center;
    line-height: 18px;
    margin-top: 2px;
}

.room .stop-rv.on {
    background-color: #E87152;
}

.room .stop-rv::after {
    content: 'ì¤‘ì§€ì˜ˆì•½';
    color: #666768;
}

.room .stop-rv.on::after {
    content: 'ì¤‘ì§€ì˜ˆì•½';
    color: #ffffff;
}

.room .state::after {
    /* content: 'ì¤‘ì§€'; */
    color: #FFFFFF;
    /* font: normal normal 300 8px/11px SCoreDream; */
    font: normal normal 300 11px/9px SCoreDream;
    vertical-align: 5%;
}

.room .state.virtual {
    background: linear-gradient(180deg, #9a74f0 0%, #764ac8 100%);
    color: #fff;
    font-weight: 600;
    border-radius: 2px;

    /* ìž…ì²´ê° */
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);

    /* ë¶€ë“œëŸ¬ìš´ ì „í™˜ */
    transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.room .state.virtual::after {
    content: 'ê°€ìƒ';
    vertical-align: 5%;
}

.room .state.real {
    background: linear-gradient(180deg, #6a9cf0 0%, #4d7ed1 100%);
    color: #fff;
    font-weight: 600;
    border-radius: 2px;

    /* ì‚´ì§ ìž…ì²´ê° */
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);

    /* ë¶€ë“œëŸ¬ìš´ ì „í™˜ */
    transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.room .state.real::after {
    content: 'ë¦¬ì–¼';
    vertical-align: 5%;
}

.room .right .state-buttons {
    display: flex;
    position: absolute;
    right: 10px;
}

.space-around {
    justify-content: space-around;
}

.room .left .title {
    font: normal normal 300 15px/21px SCoreDream;
    color: #EFF2F7;
}

.room .left .level {
    font: normal normal 300 11px/15px SCoreDream;
    color: #CED4DA;
}

.room .left .top .part1 {
    display: flex;
    justify-content: space-around;
    margin-left: 1rem;
    gap: 6px;
    align-items: center;
}

.room .left .top .part2 {
    display: flex;
    justify-content: space-around;
    margin-right: 10px;
    margin-left: auto;
    align-items: center;
}

.btn-show,
.btn-control,
.btn-reset-profit {
    width: 24px;
    height: 24px;
    /* background: #1B2039 0% 0% no-repeat padding-box; */
    border: 1px solid #33393F;
    border-radius: 3px;
    text-align: center;
    line-height: 22px;
    cursor: pointer;
}

.btn-reload-history {
    width: 220px;
    height: 220px;
    border: 1px solid #33393F;
    border-radius: 3px;
    text-align: center;
    line-height: 225px;
    cursor: pointer;
    margin-left: 1422px;
    margin-top: 6px;
    margin-bottom: -266px;
}

.btn-show.active,
.btn-control.active {
    background-color: #e6e6e6;
    color: #000;
    cursor: default;
}

.btn-reset-profit:before,
.btn-reload-history:before {
    content: "\F708";
}

.btn-show.game:before {
    content: "\F63A";
}

.btn-show.result:before {
    content: "\FE4D";
}

.btn-show.graph:before {
    content: "\F12A";
}

.btn-control:before {
    content: "\F8BA"
}

.room .left .bottom .view {
    width: 452px;
    height: 147px;
    margin: 4px;
    margin-top: 8px;
}

/* .room .left .bottom .view .graph {
  width: 462px;
  height: 147px;
} */
.view .game {
    overflow: hidden;
    z-index: 1000;
    width: 452px;
    height: 147px;
    /* margin: 4px; */
    background-image: url(/assets/images/table_bg.jpg);
    position: relative;
    transform-origin: center center;
    font: normal normal 300 11px/15px SCoreDream;
    transition: all 0.4s;
    margin-left: 5px;
    /* cursor: zoom-in; */
}


.view .btn-zoom {
    position: absolute;
    z-index: 1001;
    width: 16px;
    height: 16px;
    margin-left: 2px;
    margin-top: 2px;
    cursor: pointer;
    background-repeat: no-repeat;
    /* background-position: 5px 5px; */
}


.view .btn-zoom.in {
    background-image: url(/assets/images/sizeup.svg);
}

.view .btn-zoom.out {
    background-image: url(/assets/images/sizedown.svg);
}

.view .game.zoom {
    position: fixed;
    z-index: 99999;
    top: calc(50% - 147px * 3.5 / 2);
    left: calc(50% - 462px * 3.5 / 2);
    transform-origin: left top;
    transform: scale(3.5);
    transition: all 0.4s;
    background-image: url(/assets/images/table_bg_big.png);
    background-size: contain;
    /* cursor: zoom-out; */
}

.view .not-connected {
    display: none;
    z-index: 50;
    pointer-events: none;
    justify-content: center;
    position: absolute;
    top: 64px;
    width: 100%;
    text-align: center;
}

.view .not-connected.active {
    display: block !important;
}

.view .not-connected.active:before {
    color: #000000;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #ffffffc4;
    font-weight: 900;
    /* font-family: 'Font Awesome 5 Free'; */
    letter-spacing: 4px;
    font-family: Verdana;
    text-transform: uppercase;
    font-size: 3em;
    content: "Connecting..";
}

.view .graph {
    overflow: hidden;
    z-index: 1000;
    width: 462px;
    height: 147px;
    /* margin: 4px; */
    position: relative;
    transform-origin: center center;
    transition: all 0.4s;
    /* cursor: zoom-in; */
}

.view .graph.zoom {
    position: fixed;
    z-index: 99999;
    top: calc(50% - 147px * 3.5 / 2);
    left: calc(50% - 462px * 3.5 / 2);
    transform-origin: left top;
    transform: scale(3.5);
    transition: all 0.4s;
    background-size: contain;
    /* cursor: zoom-out; */
}

.zoom-cover {
    pointer-events: visible;
    display: none;
    position: fixed;
    z-index: 99900;
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: 0px;
    background-color: rgba(0, 0, 0, 0.7);
}

.zoom-cover.active {
    display: block;
}

.flip-container {
    perspective: 1000px;
}

@keyframes spinY {
    0% {
        transform: rotateY(0deg);
    }

    50% {
        transform: rotateY(180deg);
    }

    100% {
        transform: rotateY(360deg);
    }
}

@keyframes flip-fadeout {
    0% {
        transform: rotateY(180deg);
    }

    50% {
        transform: rotateY(180deg);
    }

    100% {
        transform: rotateY(0deg);
    }
}

/* flip the pane when hovered */
/* .flip-container:hover .flipper,  */
.flip-container.flip .flipper {
    transform: rotateY(180deg);
}

.flip-container.flip-fadeout .flipper {
    animation: flip-fadeout 0.5s;
}

.flip-container,
.front,
.back {
    width: var(--card-w);
    height: var(--card-h);
}

/* flip speed goes here */
.flipper {
    transition: 0.6s;
    transform-style: preserve-3d;

    position: relative;
    /* opacity: 1; */
    /* animation: fadein 1.4s linear forwards; */
}

/* hide back of pane during swap */
.front,
.back {
    backface-visibility: hidden;

    position: absolute;
    top: 0;
    left: 0;
}

/* front pane, placed above back */
.front {
    z-index: 2;
    /* for firefox 31 */
    transform: rotateY(0deg);
}

/* back, initially hidden pane */
.back {
    transform: rotateY(180deg);
}

.game .g-card {
    position: relative;
}

.game .g-card-shadow {
    width: 80%;
    height: 0px;
    -webkit-box-shadow: 1px 14px 8px 3px rgb(0 0 0 / 65%);
    position: absolute;
    top: 44px;
    left: 3px;
}

.game .s2 .g-card-shadow {
    width: 41px;
    left: -3px;
    top: 36px;
}

.game .player-hand .g-card.s2 {
    position: absolute;
    transform: rotate(90deg);
}

.game .player-hand .flip-container.s2 {
    position: absolute;
    top: 8px;
    left: -47px;
}

.game .banker-hand .g-card.s2 {
    position: absolute;
    transform: rotate(-90deg);
}

.game .banker-hand .flip-container.s2 {
    position: absolute;
    top: 8px;
    left: 87px;
}

.game .card-line {
    display: flex;
    gap: 38px;
    justify-content: center;
    position: absolute;
    width: 100%;
    top: 61px;
}

.player-hand,
.banker-hand {
    position: relative;
    width: 75px;
    display: flex;
    gap: 5px;
}

/* ì ìˆ˜ ë¼ì¸ */
.game .score-line {
    pointer-events: none;
    display: flex;
    justify-content: center;
    gap: 320px;
    /* ê¸°ì¡´ë³´ë‹¤ ì‚´ì§ ì¤„ì—¬ ì•ˆì •ê° */
    position: absolute;
    width: 100%;
    top: 56px;

    font-weight: 500;
    font-size: 18px;
    font-family: 'SCoreDream', sans-serif;
    color: #e0e0e0;
    text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);

    transition: color 0.3s ease, text-shadow 0.3s ease;
}


/* ëŒ€ê¸° ìƒíƒœ í‘œì‹œ */
.game .wait-state-line {
    pointer-events: none;
    width: 100%;
    padding: 4px 12px;

    font-size: 15px;
    line-height: 20px;
    font-weight: 400;
    text-align: center;

    color: #9ca3af;
    text-shadow: 0 0 4px rgba(0, 0, 0, 0.4);

    transition: color 0.3s ease;
}

/* ìµœëŒ€ ë ˆë²¨ ë¼ì¸ */
.game .maxlv-line {
    position: absolute;
    pointer-events: none;
    display: flex;
    justify-content: flex-start;
    width: 100%;
    padding: 6px 24px;

    font-size: 16px;
    font-weight: 600;
    font-family: 'Gruppo', sans-serif;
    color: #f5f5f5;

    text-shadow: 0 0 6px rgba(0, 0, 0, 0.6);
    letter-spacing: 0.5px;
}

.maxlv-line .maxlv {
    font-family: 'Gruppo', sans-serif;
    font-size: 22px;
    font-weight: 600;
    color: #f8f8f8;

    /* ë„¤ì˜¨ ê¸€ë¡œìš°ë¥¼ ì€ì€í•˜ê²Œ */
    --color1: #ffd700;
    /* ê³¨ë“œ */
    --color2: #ff7a45;
    /* ì˜¤ë Œì§€ ë ˆë“œ */
    --color3: #467cff;
    /* ë¸”ë£¨ */
    --color4: #9b59b6;
    /* í¼í”Œ */

    text-shadow:
        0 0 4px var(--color1),
        0 0 8px var(--color2),
        0 0 16px var(--color3),
        0 0 32px var(--color4);

    filter: saturate(80%);
    transition: text-shadow 0.3s ease, color 0.3s ease;
}

.game .streak-line {
    position: absolute;
    pointer-events: none;
    display: flex;
    justify-content: flex-end;
    /* font: normal normal 800 16px/22px SCoreDream; */
    /* color: #c8c8c8; */
    width: 100%;
    padding: 4px 8px;
}

/* ì—°ìŠ¹/ì—°íŒ¨ streak ê³µí†µ */
.streak-line .streak {
    font-weight: 700;
    font-size: 18px;
    letter-spacing: 1px;
    transition: text-shadow 0.3s ease, color 0.3s ease;
}

/* ìŠ¹ë¦¬ streak */
.streak-line .streak.win {
    color: #ffe97f;
    --color1: #ffd700;
    --color2: #ff9f45;
    --color3: #ffef99;
    --color4: #ffc107;

    text-shadow:
        0 0 6px var(--color1),
        0 0 12px var(--color2),
        0 0 24px var(--color3);
}

/* íŒ¨ë°° streak */
.streak-line .streak.lose {
    color: #ff6363;
    --color1: #e70404;
    --color2: #ff3b3b;
    --color3: #ff7878;

    text-shadow:
        0 0 6px var(--color1),
        0 0 12px var(--color2),
        0 0 24px var(--color3);
}

.game .betchip-line.show {
    top: 47px;
    opacity: 1;
    transition-property: top, opacity;
    transition-duration: 0.5s;
    pointer-events: visible;
}

.game .betchip-line {
    /* cursor: default; */
    display: flex;
    gap: 3px;
    /* padding-left: 47px; */
    pointer-events: none;
    position: absolute;
    width: 100%;
    /* padding: 3px 0px; */
    top: 40px;
    opacity: 0;
    justify-content: center;
    transition-property: top, opacity;
    transition-duration: 0.5s;
}

.game .bet-time-line.show {
    top: 9px;
    opacity: 1;
    transition-property: opacity;
    transition-duration: 0.5s;
    pointer-events: visible;
}

.game .bet-time-line {
    display: flex;
    gap: 10px;
    pointer-events: none;
    position: absolute;
    width: 100%;
    /* top: 40px; */

    opacity: 0;
    justify-content: center;
    transition-property: opacity;
    transition-duration: 0.5s;

    color: #dfdfdf;
    font-weight: bold;
    font-size: 28px;
    text-shadow: -2px 3px 1px #000000;
}



.game .bet-line.show {
    /* top: 47px; */
    opacity: 1;
    transition-property: opacity;
    transition-duration: 0.5s;
    pointer-events: visible;
}

.game .bet-line {
    /* display: flex; */
    /* gap: 10px; */
    pointer-events: none;
    position: absolute;
    width: 100%;
    /* top: 40px; */
    bottom: 0px;
    opacity: 0;
    /* justify-content: center; */
    transition-property: opacity;
    transition-duration: 0.5s;
    perspective: 93px;
    perspective-origin: bottom;
    /* flex-direction: row; */
}

.bet-btn-con {
    display: flex;
    gap: 10px;
    justify-content: center;
    height: 147px;
    transform: rotate3d(1, 0, 0, 45deg);
    transform-origin: bottom;
}

.bet-line .bet-pp {
    position: absolute;
    left: 0px;
    top: 122px;
    width: 160px;
    height: 25px;
    background: #dc820042;
    font-size: 21px;
    font-weight: 600;
    font-family: 'SCoreDream';
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ff7a43;
    cursor: pointer;
}

.bet-line .bet-player {
    cursor: pointer;
    width: 220px;
    /* width: 220px; */
    /* height: 147px; */
    /* height: 100%; */
    /* border-top-left-radius: 86px; */
    /* border: 1px solid #5577ff; */
    background-color: rgba(0, 0, 255, 0.2);
    /* transform: rotate3d(1, 0, 0, 45deg); */
    /* transform-origin: bottom; */
}

.bet-line .bet-banker {
    cursor: pointer;
    width: 220px;
    /* width: 220px; */
    /* height: 147px; */
    /* border-top-right-radius: 86px; */
    /* border: 1px solid #d90404; */
    background-color: rgba(255, 0, 0, 0.2);
    /* transform: rotate3d(1, 0, 0, 45deg); */
    /* transform-origin: bottom; */
}

.bet-line .bet-tie {
    cursor: pointer;
    /* flex-grow: 2 */
    width: 120px;
    text-align: center;
    /* height: 50%; */
    /* height: 100%; */
    /* border-top-left-radius: 86px; */
    /* border: 1px solid #5577ff; */
    background-color: rgb(80 255 0 / 20%);
    /* transform: rotate3d(1, 0, 0, 45deg); */
    /* transform-origin: bottom; */
}

.bet-center {
    display: flex;
    flex-direction: column;
    /* height: 100%; */
}

.bet-center-top {
    display: flex;
    height: 60%;
    /* font-size: 11px; */
    /* font-weight: 900; */
}

.bet-center-bottom {
    display: flex;
    width: 120px;
    height: 40%;
    font-size: 15px;
    font-weight: 900;
}

.pairout .bet-center-bottom {
    display: none;
}

.pairout .bet-center-top {
    height: 100%;
}

.bet-center-bottom .bet-player-pair {
    cursor: pointer;
    height: 100%;
    /* background-color: rgba(87, 146, 223, 0.2); */
    background-color: rgb(8 29 56 / 45%);
    text-align: center;
}

.bet-center-bottom .bet-banker-pair {
    cursor: pointer;
    height: 100%;
    /* background-color: rgba(223, 99, 87, 0.2); */
    background-color: rgb(78 7 0 / 45%);
    text-align: center;
}

.bet-center-bottom .bet-player-pair:before {
    content: "Player Pair";
    display: flex;
    padding-top: 20px;
    color: #4d8bfc;
}

.bet-center-bottom .bet-player-pair:hover:before {
    --color1: #4e77e1;
    --color2: #281de1;
    --color3: #1eebff;
    --color4: #41b2b3;
    text-shadow: 0 0 10px var(--color1), 0 0 20px var(--color2), 0 0 40px var(--color3), 0 0 80px var(--color4);
}

.bet-center-bottom .bet-banker-pair:before {
    content: "Banker Pair";
    display: flex;
    padding-top: 20px;
    color: #fc4d4d;
}

.bet-center-bottom .bet-banker-pair:hover:before {
    --color1: #d24949;
    --color2: #af2828;
    --color3: #eaaaaa;
    --color4: #df634e;
    text-shadow: 0 0 10px var(--color1), 0 0 20px var(--color2), 0 0 40px var(--color3), 0 0 80px var(--color4);
}

.bet-line .bet-player:before {
    content: "Player";
    padding-left: 10px;
    font-size: 40px;
    font-weight: 900;
    display: flex;
    justify-content: center;
    /* text-align: center; */
    padding-top: 75px;
    color: #4d8bfc;
}

.bet-line .bet-player:hover:before {
    --color1: #4e77e1;
    --color2: #281de1;
    --color3: #1eebff;
    --color4: #41b2b3;
    text-shadow: 0 0 10px var(--color1), 0 0 20px var(--color2), 0 0 40px var(--color3), 0 0 80px var(--color4);
}

.bet-line .bet-banker:before {
    content: "Banker";
    padding-right: 10px;
    font-size: 40px;
    font-weight: 900;
    display: flex;
    justify-content: center;
    /* text-align: center; */
    padding-top: 75px;
    color: #fc4d4d;
}

.bet-line .bet-banker:hover:before {
    --color1: #d24949;
    --color2: #af2828;
    --color3: #eaaaaa;
    --color4: #df634e;
    text-shadow: 0 0 10px var(--color1), 0 0 20px var(--color2), 0 0 40px var(--color3), 0 0 80px var(--color4);
}

.bet-line .bet-tie:before {
    content: "Tie";
    padding-left: 30px;
    font-size: 40px;
    font-weight: 900;
    display: flex;
    padding-top: 35px;
    color: #69d243;
}

.pairout .bet-tie:before {
    padding-top: 75px;
}

.bet-line .bet-tie:hover:before {
    --color1: #4de069;
    --color2: #1de048;
    --color3: #1fff8d;
    --color4: #41b364;
    text-shadow: 0 0 10px var(--color1), 0 0 20px var(--color2), 0 0 40px var(--color3), 0 0 80px var(--color4);
}

.game .chip-line {
    pointer-events: none;
    /* display: flex; */
    /* justify-content: center; */
    position: absolute;
    top: 0px;
    width: 100%;
    padding: 4px 8px;
}

.chip-line .chip {
    position: absolute;
}

.game .money-line {
    z-index: 50;
    gap: 42px;
    pointer-events: none;
    display: flex;
    justify-content: space-around;
    position: absolute;
    top: 126px;
    width: 100%;
    padding: 4px 95px;
}

.money-line .bet-money {
    font-family: Sriracha;
    font-size: 20px;
    color: azure;
    --color1: azure;
    --color2: aqua;
    --color3: dodgerblue;
    --color4: blue;
    text-shadow: 0 0 10px var(--color1), 0 0 20px var(--color2), 0 0 40px var(--color3), 0 0 80px var(--color4);
    will-change: filter, color;
    /* filter: saturate(60%); */
    filter: drop-shadow(0px 1px 0px black);
}

.money-line .bet-money.Player {
    position: absolute;
    right: 304px;
}

.money-line .bet-money.Banker {
    position: absolute;
    left: 308px;
}

.money-line .bet-money.Tie {
    position: absolute;
    top: -41px;
    font-size: 10px;
}

.money-line .bet-money.PlayerPair {
    position: absolute;
    right: 236px;
    top: 10px;
    font-size: 10px;
}

.money-line .bet-money.BankerPair {
    position: absolute;
    left: 234px;
    top: 10px;
    font-size: 10px;
}

.money-line .bet-money.PerfectPair {
    position: absolute;
    left: 23px;
    top: 10px;
    font-size: 10px;
}


.game .winp-line {
    pointer-events: none;
    display: flex;
    gap: 333px;
    justify-content: center;
    position: absolute;
    width: 100%;
    top: 84px;
    left: 3px;
}

.game .watcher-line {
    pointer-events: none;
    display: flex;
    position: absolute;
    width: 100%;
    top: 131px;
    justify-content: center;
    font-size: 12px;
    padding: 0px 3px;
    color: #fff;
    text-shadow: -1px -1px 1px black;
    align-items: center;
}

.game .watcher-line>* {
    align-self: baseline;
}

.game .betp-line {
    pointer-events: none;
    display: flex;
    /* gap: 353px; */
    justify-content: space-between;
    position: absolute;
    width: 100%;
    top: 114px;
    padding: 0px 3px;
}

.g-betp {
    font: normal normal 500 12px/46px SCoreDream;
    color: #CED4DA;
}

.game .betdata-line {
    pointer-events: none;
    display: flex;
    /* gap: 230px; */
    justify-content: space-between;
    position: absolute;
    width: 100%;
    top: 100px;
    /* left: 3px; */
    padding: 0px 3px;
}

.g-bet {
    font: normal normal 500 12px/46px SCoreDream;
    color: #CED4DA;
}

.game .winner-cover {
    position: absolute;
    top: 0px;
    height: 60px;
    /* font: normal normal 300 56px/21px SCoreDream; */
    /* color: #fff; */
    /* animation: fadeout 0.5s; */
    /* justify-content: center;
  display: flex;
  align-items: center; */
    /* padding-bottom: 81px; */
    /* pointer-events: none; */
}

.game .shoe-animation {
    position: absolute;
    /* font: normal normal 300 37px/21px SCoreDream; */
    text-align: center;
}

.game .shoe-animation.play {
    display: flex;
    justify-content: center;
    gap: 8px;
    padding-left: 27px;
}

.shoe-animation .flipper {
    animation: spinY 1.2s infinite;
}

.shoe-animation .text {
    color: #fff;
    text-shadow: 1px 2px 0px black;
    /* -webkit-text-stroke-width: 1px; */
    /* -webkit-text-stroke-color: #ffffffc4; */
    font-weight: 900;
    font-size: 25px;
    font-family: Verdana;
    text-transform: uppercase;
    align-self: center;
}

.shoe-animation .icon {
    align-self: center;
    transform-origin: center;
    transform: scale(0.7);
}

/* .game .shoe-animation.play:before {
  color: #000000;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #ffffffc4;
  font-weight: 900;
  letter-spacing: 4px;
  font-family: Verdana;
  text-transform: uppercase;

  padding-top: 15px;
  content: "Shoe Reset";
  display: inline-block !important;
} */



/* .game .shoe-animation.betting:before {
  content: 'Betting Time'
} */

.game .last-level-animation {
    position: absolute;
    /* opacity: 0; */
    display: none;
    /* filter: brightness(2); */
}

@keyframes slide-bg {
    0% {
        background-position: -500%;
    }

    100% {
        background-position: 500%;
    }
}

.bettingtime-animation.play {
    /* display: block !important; */
    /* position: relative;
  font-family: Verdana;
  text-transform: uppercase;
  font-size: 3em;
  letter-spacing: 4px;
  overflow: hidden;
  background: linear-gradient(90deg, #A67C0011, #FFDC73, #A67C0011);
  background-repeat: no-repeat;
  background-size: 80%;
  animation: slide-bg 3s linear infinite;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; */
    /* padding-left: 31px; */
    /* padding-top: 71px; */
    display: flex;
}

.bettingtime-animation,
.cardopen-animation {
    display: none;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    min-height: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.cardopen-animation.play,
.cardopen-animation.play2,
.cardopen-animation.play3 {
    display: flex;
}

.neon {
    font-family: Verdana;
    text-transform: uppercase;
    font-size: 3em;
    letter-spacing: 4px;
    text-align: center;
    line-height: 1;
    color: #FFDC73;
    animation: neon .08s ease-in-out infinite alternate;
}

.cardopen-animation.play .t {
    animation: t1 0.6s cubic-bezier(0.35, 0.78, 0.31, 1.73);
    transform-style: preserve-3d;
}

.cardopen-animation.play2 .t {
    animation: t2 1s linear;
    transform-style: preserve-3d;
}

.cardopen-animation.play3 .t {
    animation: t3 0.4s cubic-bezier(0.63, -0.42, 0.74, 0.61);
    transform-style: preserve-3d;
}

.cardopen-animation .s {
    transform: translateZ(20px);
}

@keyframes t1 {
    0% {
        transform: rotate3d(1, 0, 0, 90deg);
    }

    100% {
        transform: rotate3d(1, 0, 0, 0deg);
    }
}

@keyframes t2 {
    0% {
        transform: rotate3d(1, 0, 0, 0deg);
    }

    100% {
        transform: rotate3d(1, 0, 0, 0deg);
    }
}

@keyframes t3 {
    0% {
        transform: rotate3d(1, 0, 0, 0deg);
    }

    100% {
        transform: rotate3d(1, 0, 0, -90deg);
    }
}

@keyframes neon {
    from {
        text-shadow:
            0 0 6px rgba(255, 220, 115, 0.92),
            0 0 30px rgba(255, 207, 64, 0.34),
            0 0 12px rgba(255, 191, 0, 0.52),
            0 0 21px rgba(191, 155, 48, 0.92),
            0 0 34px rgba(166, 124, 0, 0.78),
            0 0 54px rgba(132, 102, 18, 0.92);
    }

    to {
        text-shadow:
            0 0 6px rgba(255, 220, 115, 0.98),
            0 0 30px rgba(255, 207, 64, 0.42),
            0 0 12px rgba(255, 191, 0, 0.58),
            0 0 22px rgba(191, 155, 48, 0.84),
            0 0 38px rgba(166, 124, 0, 0.88),
            0 0 60px rgba(132, 102, 18, 1);
    }
}

.game .winner-gradient {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    opacity: 0;
    /* background: linear-gradient(#00000000, #00000000, #00000000, #00000000); */
}

.game .winner-gradient.Player {
    background: linear-gradient(to right, #0000ff3d, #0000ff38, #ff002d00, #ff002d00);
    /* transition: background 10s; */
    /* animation: fadein 0.6s linear forwards; */
    animation: fadeinout 4s linear forwards;
}

.game .winner-gradient.Banker {
    background: linear-gradient(to left, #ff00003d, #ff000017, #ff002d00, #ff002d00);
    /* transition: background 1s; */
    /* animation: fadein 0.6s linear forwards; */
    animation: fadeinout 4s linear forwards;
}

.game .winner-gradient.Tie {
    background: linear-gradient(to left, #24c94638, #00000000, #00000000, #24c94638);
    /* animation: fadein 0.6s linear forwards; */
    animation: fadeinout 4s linear forwards;
}

@keyframes fadeinout {
    0% {
        opacity: 0;
    }

    25% {
        opacity: 1;
    }

    /* 50% {opacity:1;} */
    70% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes fadeout {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

/* .winner-cover.Player {
  background-color: #4a93d27a;
  animation: fadein 0.5s;
}
.winner-cover.Banker {
  background-color: #d2594a7a;
  animation: fadein 0.5s;
}
.winner-cover.Tie {
  background-color: #33926e7a;
  animation: fadein 0.5s;
}
.winner-cover.Player:before {
  content: "Player Win";
}
.winner-cover.Banker:before {
  content: "Banker Win";
}
.winner-cover.Tie:before {
  content: "Tie";
} */

.g-score {
    font: normal normal 300 33px/46px SCoreDream;
    color: #CED4DA;
}

.g-winp {
    font: normal normal 200 16px/46px SCoreDream;
    color: #CED4DA;
}

.room.disabled {
    /* pointer-events: none; */
    /* filter: brightness(0.3); */
}

.room-shortcut.disabled {
    filter: brightness(0.3);
}

.shortcut-btns {
    width: 140px;
}

.shortcut-btns .btn {
    display: flex;
    justify-content: center;
    font-size: 10px !important;
    padding: 6px 4px !important;
}

.shortcut-btns .btn.btn-dark {
    border: 1px solid #32383E !important;
}

.shortcut-btns .btn.disabled {
    cursor: default;
    /* pointer-events: none; */
    /* background-color: #2f2f2f; */
    /* color: #858585; */
    /* filter: grayscale(); */
    filter: brightness(0.5);
}

.room .bottom {
    display: flex;
    flex-direction: column;
    position: relative;
}

.bottom .stats {
    margin-bottom: 5px;
    margin-left: 20px;
}

:root {
    --pattern-size: 24px;
    --pattern-cols: 18;
    --P-color: #1a92fe;
    --B-color: #FF7F41;
    --T-color: #A6CA80;
    --virtual-color: #8f61f4;
    --real-color: #6691E7;
}

.nowrap {
    white-space: nowrap;
}

.pt-group .pattern {
    position: absolute;
    width: 164px;
    display: inline-block;
    overflow-wrap: break-word;
    height: 20px;
    overflow: hidden;
}

.pt-group .pattern.hover {
    z-index: 10000;
    height: 200px;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.6);
}

.pt-group .bet-money {
    display: inline-block;
    width: 75px;
    text-align: right;
}

.cl-P {
    color: var(--P-color);
}

.cl-B {
    color: var(--B-color);
}

.cl-T {
    color: var(--T-color);
}

.bottom .results {
    /* position: relative; */
    /* width: calc(var(--pattern-size) * 18 + 1px); */
    width: calc(var(--pattern-size) * var(--pattern-cols) + 1px);
    height: var(--pattern-size);
    background-color: #1F2328;
    margin-left: 19px;
    border-right: 1px solid #32383E;
    cursor: pointer;
    z-index: 2000;
}

.bottom .results.rel {
    position: absolute;
    bottom: calc(var(--pattern-size) * -1 + -5px);
}


.bottom .results-cover {
    /* border: 1px solid rgb(255, 0, 0); */
    width: 433px;
    height: 24px;
    position: absolute;
    top: 189px;
    margin-left: 19px;
}

/* .pt-editor {
  position: absolute;
  top: 188px;
  left: 223px;
} */
.card-gray {
    background: #212529 0% 0% no-repeat padding-box;
    width: 100%;
    border: 1px solid #32383E;
}

.cell-label {
    align-items: end;
    display: flex;
    gap: 7px;
    cursor: pointer;
}

.cell-label.active {
    border: solid 1px aqua;
}

.pm-editor-ui {
    margin-left: 25px;
    display: flex;
    gap: 30px;
}

.pm-cell-P {
    background: #4787ff4a;
}

.pm-cell-B {
    background: #ff47474a;
}

.pm-cell-A {
    background: #35ed3c52;
}

.pm-cell-S {
    background: #fffa2852;
}

.pm-cell-Z {
    background: #1a812852;
}

.pm-cell-X {
    background: #89862952;
}

/* .pm-cell-X:before, .pm-cell-Z:before {
  content: "M" !important;
  color: #fff;
} */
.bet-target:before {
    content: "bet" !important;
    /* border: solid 2px #ffff0096 !important; */
    /* width: 24px; */
    /* height: 24px; */
}

.pm-editor-cells .results {
    width: calc(var(--pattern-size) * 8 + 1px);
    /* top: calc(var(--pattern-size) * -3); */
    margin-bottom: 6px;
}

.pm-editor-cells .results.m6 {
    height: calc(var(--pattern-size) * 6);
}

/* .pm-editor-cells .results.m5 {
  height: calc(var(--pattern-size) * 5);
}
.pm-editor-cells .results.m4 {
  height: calc(var(--pattern-size) * 4);
} */

.bottom .results.expend {
    position: absolute;
    bottom: calc(var(--pattern-size) * -1 + -5px);
    /* top: calc(var(--pattern-size) * -3); */
    height: calc(var(--pattern-size) * 4);
    -webkit-box-shadow: 3px 1px 13px 3px #17181b;
}

.bottom .results.expend_8m {
    /* top: calc(var(--pattern-size) * -3); */
    height: calc(var(--pattern-size) * 8);
    margin-bottom: 6px;
}

.bottom .results.expend_6m {
    /* top: calc(var(--pattern-size) * -3); */
    height: calc(var(--pattern-size) * 6);
    margin-bottom: 6px;
}

.bottom .results.expend_5m {
    /* top: calc(var(--pattern-size) * -3); */
    height: calc(var(--pattern-size) * 5);
    margin-bottom: 6px;
}

.bottom .results.expend_4m {
    /* top: calc(var(--pattern-size) * -3); */
    height: calc(var(--pattern-size) * 4);
    margin-bottom: 6px;
}


.room.real .bottom .results {
    /* background-color: #1B2039; */
    background-color: #09092a;
}

.room.virtual .bottom .results {
    /* background-color: #252335; */
    background-color: #17092a;
}

.bottom .results::-webkit-scrollbar {
    display: none;
    /* Chrome, Safari, Opera*/
}

.bottom .results .sub-t {
    color: var(--T-color);
    position: absolute;
    bottom: 3px;
    transform: scale(0.5);
    transform-origin: left bottom;
}

.bottom .results>*,
.cell {
    position: relative;
    display: inline-block;
    width: var(--pattern-size);
    height: var(--pattern-size);
    border: 1px solid #32383E;
    border-left-width: 1px;
    border-right-width: 0px;
    font: normal normal 300 12px/14px SCoreDream;
    text-align: center;
    line-height: calc(var(--pattern-size) - 4px);
}

.cell {
    border-right-width: 1px;
}

.bottom .results>*::before {
    content: ' ';
    display: inline-block;
}

.bottom .results .win::before {
    height: calc(var(--pattern-size) - 2px);
    width: calc(var(--pattern-size) - 2px);
    border-bottom: 3px solid #4DBC5B;
    display: inline-block;
    content: ' ';
}

.bottom .results .lose::before {
    height: calc(var(--pattern-size) - 2px);
    width: calc(var(--pattern-size) - 2px);
    border-bottom: 3px solid #E64949;
    display: inline-block;
    content: ' ';
}

@keyframes blink {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.bottom .results .now::before {
    height: calc(var(--pattern-size) - 2px);
    width: calc(var(--pattern-size) - 2px);
    border-bottom: 3px solid #ECEC43;
    display: inline-block;
    content: ' ';
    animation: blink 0.7s 0s infinite alternate;
}

.bottom .results .O:before {
    content: "O";
    color: var(--P-color);
}

.bottom .results .U:before {
    content: "U";
    color: var(--B-color);
}

.bottom .results .P:before {
    content: "P";
    color: var(--P-color);
}

.bottom .results .B:before {
    content: "B";
    color: var(--B-color);
}

.bottom .results .T:before {
    content: "T";
    color: var(--T-color);
}

.bottom .results .now:before {
    content: "ã…¤";
    color: rgba(#000000, 0);
}

.bottom .stats .btn-reset-result {
    display: inline;
    width: 24px;
    height: 24px;
    border: 1px solid #33393F;
    padding: 0px;
    font-size: 12px;
    line-height: 10px;
    /* display: flex;
  justify-content: center;
  align-items: center; */
}

.bottom>.stats>.pt-group>* {
    margin-left: 10px;
}

.bottom>.stats>.pt-group {
    /* float: right; */
    margin-right: 20px;
    position: relative;
}

.blink {
    animation: blink 0.7s 0s infinite alternate;
}

.text-gold {
    color: gold;
}

.room .right {
    position: relative;
    width: 229px;
    height: 100%;
    padding: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px 0px;
}

.room>.right>.setting-info>.info-group {
    /* margin-bottom: 8px; */
    margin-bottom: 2px;
    width: 210px;
}

.room>.right>.setting-info>.info-group>.title {
    display: inline-block;
    width: 39px;
    height: 19px;
    background: #F3F6F91A 0% 0% no-repeat padding-box;
    border-radius: 3px;
    text-align: center;
    margin-right: 4px;
}

.room>.right>.setting-info>.info-group>.text {
    display: inline-block;
    font: normal normal 300 11px/18px SCoreDream;
    letter-spacing: 0px;
    color: #CED4DA;
    width: 164px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: inherit;
    line-height: 10px;
}

/* .room > .right > .setting-info > .info-group.hover > .text {
  z-index: 10000;
  height: 190px;
  line-height: unset;
  display: flex;
  flex-direction: column;
  position: absolute;
  overflow: auto;
  top: 76px;
  left: 54px;
  background-color: rgba(0, 0, 0, 0.6);
} */
.setting-info {
    overflow: hidden;
}

.setting-info .state-box {
    font: normal normal 300 11px/18px SCoreDream;
    color: #CED4DA;
    letter-spacing: 0px;
    /* pointer-events: none; */
    /* position: relative; */
    z-index: 10000;
    width: 173px;
    height: 190px;
    /* line-height: unset; */
    display: flex;
    flex-direction: column;
    text-overflow: ellipsis;
    white-space: nowrap;
    position: absolute;
    overflow: auto;
    /* overflow-y: scroll; */
    /* overflow-x: hidden; */
    top: 76px;
    left: 54px;
    background-color: rgba(0, 0, 0, 0.6);
}

.state-box div {
    white-space: nowrap;
}

.room>.right>.money-info {
    width: 210px;
    height: 118px;
    border: 1px solid #32383E;
    border-radius: 3px;
    /* padding: 7.5px 8.5px; */
    padding: 1px 8.5px;
    color: #CED4DA;
    display: flex;
    flex-wrap: wrap;
}

.room>.right>.money-info>.item {
    /* display: flex; */
    /* flex-wrap: wrap; */
    width: 95px;
    height: 57px;
    line-height: 10px;
}

.room>.right>.money-info>.item>.label {
    /* font: normal normal 300 10px/14px SCoreDream; */
    font: normal normal 300 10px/21px SCoreDream;
}

.room>.right>.money-info>.item>.text {
    /* font: normal normal 300 15px/21px SCoreDream; */
    font: normal normal 300 11px/15px SCoreDream;
    display: flex;
    justify-content: space-between;
    gap: 2px;
}

.room>.right>.money-info>.item>.text>.sub {
    font: normal normal 300 10px/14px SCoreDream;
}

.room>.right .btn {
    border: 1px solid #32383E;
    /* border-radius: 5px; */
    font: normal normal 300 14px/14px SCoreDream;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    color: #EFF2F7;
}

.room>.right .btn-group {
    display: flex;
    width: 100%;
    height: 30px;
}

.room>.right .btn-group>.btn {
    flex: 1;
}

.room>.right .btn-start {
    /* width: 210px; */
    /* height: 30px; */
    background: #6691E7 0% 0% no-repeat padding-box;
}

.room>.right .btn-stop {
    /* width: 105px; */
    /* height: 30px; */
    background: #d05252 0% 0% no-repeat padding-box;
}

.room>.right .btn-stop-reserve {
    /* width: 105px; */
    /* height: 30px; */
    background: #e87152 0% 0% no-repeat padding-box;
}

.room>.right .btn-stop-reserve-cancel {
    /* width: 105px; */
    /* height: 30px; */
    background: #a62525 0% 0% no-repeat padding-box;
}

.room>.right .btn.disabled,
.main-top .btn.disabled {
    cursor: default;
    pointer-events: none;
    /* background-color: #2f2f2f; */
    /* color: #858585; */
    /* filter: grayscale(); */
    filter: brightness(0.5);
}


.flex-wrap {
    flex-wrap: wrap;
}

.empty-screen {
    display: flex;
    justify-content: center;
    align-items: center;
    /* height: 58vh; */
    height: 725px;
    font-size: 50px;
}

.wobble {
    /* animation: invert-blink 0.7s;
  animation-iteration-count: 2; */
    /* animation: shadow-fadeout 4s normal forwards ease-in-out; */
    /* animation-iteration-count: 1; */

    /* animation: jello-horizontal 2.4s both; */

    animation: wobble-hor-bottom 2.4s both;
}

.border-fadeout {
    animation: no-wobble-hor-bottom 2.4s both;
}

@keyframes jello-horizontal {
    0% {
        filter: drop-shadow(1px 1px -1px #f2fe1d);
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }

    15% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }

    20% {
        filter: drop-shadow(1px 1px 5px #f2fe1d);
        -webkit-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }

    25% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }

    32.5% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }

    37.5% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }

    50% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }

    100% {
        filter: drop-shadow(1px 1px -1px #f2fe1d);
    }
}

@keyframes wobble-hor-bottom {

    0%,
    50% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
        -webkit-transform-origin: 50% 50%;
        transform-origin: 50% 50%;
    }

    7.5% {
        -webkit-transform: translateX(-30px) rotate(-6deg);
        transform: translateX(-30px) rotate(-6deg);
    }

    15% {
        -webkit-transform: translateX(15px) rotate(6deg);
        transform: translateX(15px) rotate(6deg);
    }

    22.5% {
        -webkit-transform: translateX(-15px) rotate(-3.6deg);
        transform: translateX(-15px) rotate(-3.6deg);
    }

    30% {
        -webkit-transform: translateX(9px) rotate(2.4deg);
        transform: translateX(9px) rotate(2.4deg);
    }

    37.5% {
        filter: drop-shadow(1px 1px 20px #c96dfc);
        -webkit-transform: translateX(-6px) rotate(-1.2deg);
        transform: translateX(-6px) rotate(-1.2deg);
    }

    100% {
        filter: drop-shadow(1px 1px -1px #f2fe1d);
    }
}

@keyframes no-wobble-hor-bottom {
    37.5% {
        filter: drop-shadow(1px 1px 8px #83509f);
    }

    100% {
        filter: drop-shadow(1px 1px -1px #f2fe1d);
    }
}

/* @keyframes jello-horizontal {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
} */
@keyframes invert-blink {
    50% {
        filter: invert(10%);
    }
}

@keyframes shadow-fadeout {
    0% {
        filter: drop-shadow(1px 1px -1px #f2fe1d);
    }

    20% {
        filter: drop-shadow(1px 1px 8px #f2fe1d);
    }

    100% {
        filter: drop-shadow(1px 1px -1px #f2fe1d);
    }
}

@keyframes shadow-fadeout-shake {
    0% {
        filter: drop-shadow(1px 1px -1px #f2fe1d);
    }

    10% {
        transform: rotate3d(0, 1, 0.3, 7deg);
    }

    20% {
        filter: drop-shadow(1px 1px 8px #f2fe1d);
        transform: rotate3d(0, 1, 0.3, -7deg);
    }

    30% {
        transform: rotate3d(0, 1, 0.3, 7deg);
    }

    40% {
        transform: rotate3d(0, 1, 0.3, -7deg);
    }

    50% {
        transform: rotate3d(0, 1, 0.3, 0deg);
    }

    100% {
        filter: drop-shadow(1px 1px -1px #f2fe1d);
    }
}




.room-shortcut-list {
    margin-left: auto;
    /* height: calc(100vh - 376px); */
    height: calc(100vh - 435px);
    overflow-y: auto;
    min-width: 241px;
}

.room-shortcut {
    cursor: pointer;
    width: 225px;
    height: 54px;
    margin: 6px 8px;
    padding: 6px 10px;

    display: flex;
    align-items: center;

    /* ë°°ê²½: ì‚´ì§ ì–´ë‘ìš´ ê·¸ë¼ë°ì´ì…˜ */
    background: linear-gradient(180deg, #2a2f36 0%, #22262b 100%);
    border-radius: 6px;

    /* ì™¼ìª½ ë°” ëŒ€ì‹  box-shadow ë¡œ ê°•ì¡° */
    border-left: 4px solid #363d48;

    /* ë¶€ë“œëŸ¬ìš´ ì „í™˜ */
    transition: all 0.3s ease;
}

/* Hover íš¨ê³¼ */
.room-shortcut:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

/* Active íš¨ê³¼ */
.room-shortcut:active {
    transform: translateY(1px);
    box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.5);
}

/* REAL */
.room-shortcut.real {
    background: linear-gradient(180deg, #1b2039 0%, #14182b 100%);
    border-left-color: #6691e7;
}

.room-shortcut.real .title {
    color: #6691e7;
    font-weight: 600;
}

/* VIRTUAL */
.room-shortcut.virtual {
    background: linear-gradient(180deg, rgba(134, 92, 226, 0.15) 0%, rgba(134, 92, 226, 0.05) 100%);
    border-left-color: #865ce2;
}

.room-shortcut.virtual .title {
    color: #ac8fec;
    font-weight: 600;
}

.room-shortcut-list-con {
    background: linear-gradient(180deg, #1f2328 0%, #181a1d 100%);
    border: 1px solid #2b2f35;
    border-radius: 8px;
    padding: 14px;

    /* ê·¸ë¦¼ìž: ê¹Šì´ê° */
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.35),
        0 -1px 2px rgba(255, 255, 255, 0.05) inset;

    /* ë¶€ë“œëŸ¬ìš´ ì „í™˜ */
    transition: transform 0.2s ease, box-shadow 0.3s ease;
}


.room-shortcut-list-con>.top {
    /* display: flex;
  justify-content: space-between; */
}

.main-header {
    display: flex;
    height: 24px;
}

.filter-control {
    display: flex;
    margin: 5px 8px;
    width: 300px;
}

.filter-control .checkbox {
    flex: 0 0 90px;
}

.filter-control .checkbox>label {
    margin-left: 5px;
    font: normal normal 100 13px/18px SCoreDream;
}

.room-shortcut-list-con>.top>.sort-control {
    display: flex;
    margin: 5px 8px;
}

.room-shortcut-list-con>.top>.sort-control .checkbox {
    flex: 0 0 60px;
}

.room-shortcut-list-con>.top>.sort-control .checkbox>label {
    margin-left: 5px;
    font: normal normal 100 13px/18px SCoreDream;
}

.room-shortcut-list-con .line {
    border-bottom: 1px solid #32383E;
    margin: 5px 7px;
}

.room-count {
    font: normal normal 300 14px/19px SCoreDream;
    color: #CED4DA;
    margin: 5px 8px;
}

.room-shortcut .title {
    font: normal normal 300 12px/11px SCoreDream;
    color: #878A99;
    margin-bottom: 5px;
    white-space: nowrap;
    /* overflow: hidden; */
    /* text-overflow: ellipsis;
  direction: rtl;
  text-align: left; */
}

.room-shortcut .label {
    font: normal normal 200 12px/14px SCoreDream;
    color: #CED4DA;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.room-shortcut .left {
    width: calc(74px + 50px);
    display: flex;
    flex-direction: column;
}

.room-shortcut .right {
    margin-left: auto;
    width: 50px;
    display: flex;
    /* flex-direction: column; */
    flex-wrap: wrap;
    justify-content: right;
    /* font-size: 9pt; */
    font: normal normal 500 12px/14px SCoreDream;
}

.room-shortcut .right .top {
    display: flex;
    justify-content: right;
}

i.exmark {
    font-size: 13pt;
    line-height: 12px;
    margin-right: 2px;
}

/* ===== ë ˆë²¨ ì•„ì´ì½˜ ìƒ‰ìƒ ===== */
i.exmark.lv1 {
    color: #f6e58d;
    /* ë¶€ë“œëŸ¬ìš´ ì˜ë¡œìš° */
    text-shadow: 0 0 4px rgba(246, 229, 141, 0.6);
}

i.exmark.lv2 {
    color: #f9ca24;
    /* ê³¨ë“œí†¤ */
    text-shadow: 0 0 4px rgba(249, 202, 36, 0.6);
}

i.exmark.lv3 {
    color: #eb4d4b;
    /* ë ˆë“œí†¤ */
    text-shadow: 0 0 4px rgba(235, 77, 75, 0.6);
}

/* ===== ë ˆë²¨ ë°•ìŠ¤ ===== */
.room-shortcut .right .level {
    background: rgba(255, 255, 255, 0.08);
    /* ë” ì€ì€í•œ ë°˜íˆ¬ëª… */
    border-radius: 3px;
    font-family: 'SCoreDream', sans-serif;
    font-size: 11px;
    color: #e0e0e0;
    margin-bottom: 2px;
    height: 16px;
    width: 52px;
    line-height: 16px;
    text-align: center;

    letter-spacing: 0.5px;
    font-weight: 500;

    /* ì‚´ì§ ìž…ì²´ê° */
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.4),
        0 1px 2px rgba(0, 0, 0, 0.25);
    transition: background 0.3s ease, color 0.3s ease;
}

/* Hover ì‹œ ê°•ì¡° */
.room-shortcut .right .level:hover {
    background: rgba(102, 145, 231, 0.15);
    /* íŒŒëž€ í¬ì¸íŠ¸ */
    color: #ffffff;
}

.room-shortcut .right .profit-p-con {
    display: flex;
    height: 15px;
    min-width: 50px;
    justify-content: flex-end;
}

.room-shortcut .right .profit-con {
    display: flex;
    height: 15px;
    min-width: 50px;
    justify-content: flex-end;
}

.cl-up {
    color: #6691E7 !important;
}

.cl-down {
    color: #ED5E5E !important;
}

.connect-cover {
    position: fixed;
    z-index: 9999;
    left: 0px;
    right: 0px;
    top: 80px;
    bottom: 0px;
    background: rgba(0, 0, 0, 0.75);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 50px;
}

/* .connect-cover:before {
  content: "ì—°ê²°ì¤‘ìž…ë‹ˆë‹¤"
} */

.not-match-version-cover {
    position: fixed;
    z-index: 9999;
    left: 0px;
    right: 0px;
    top: 0px;
    bottom: 0px;
    background: rgba(0, 0, 0, 0.75);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 50px;
    pointer-events: visible;
}

.not-match-version-cover:before {
    content: "ì§€ì›í•˜ì§€ ì•ŠëŠ” ë²„ì „ìž…ë‹ˆë‹¤"
}

.custom-control-input:disabled~.custom-control-label::before,
.custom-control-input[disabled]~.custom-control-label::before {
    background-color: #242424 !important;
}

.gap-1 {
    gap: 0.25rem !important;
}

.gap-2 {
    gap: 0.5rem !important;
}

.gap-3 {
    gap: 1rem !important;
}

.gap-4 {
    gap: 1.5rem !important;
}

.gap-5 {
    gap: 2rem !important;
}

.line-count {
    position: absolute;
    z-index: 10000;
    background: #000000cf;
    padding: 5px;
    border-radius: 4px;
}

.custom-dark {
    background: linear-gradient(180deg, #1e2125 0%, #181a1d 100%);
    border: 1px solid #2b2f35;
    border-radius: 8px;
    padding: 16px;

    /* ê·¸ë¦¼ìž: ê¹Šì´ê° ì£¼ê¸° (ìœ„ëŠ” ì–•ê²Œ, ì•„ëž˜ëŠ” ì‚´ì§ ì§„í•˜ê²Œ) */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35),
        0 -1px 2px rgba(255, 255, 255, 0.05) inset;

    /* í°íŠ¸ ê¸°ë³¸ */
    color: #e0e0e0;
    font-size: 14px;

    /* ë¶€ë“œëŸ¬ìš´ ì „í™˜ */
    transition: box-shadow 0.3s ease, transform 0.2s ease;
}

/* ëª¨ë‹¬ ê¸°ë³¸ */
.modal-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
}

.modal-card {
    width: min(520px, calc(100vw - 32px));
    background: #1f2328;
    border: 1px solid #2b3036;
    border-radius: 14px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .5);
}

.modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-bottom: 1px solid #2b3036;
}

.modal-header h3 {
    margin: 0;
    color: #e6eaf0;
    font-size: 18px;
}

.icon-btn {
    background: transparent;
    border: 0;
    color: #97a3af;
    font-size: 18px;
    cursor: pointer;
}

.icon-btn:hover {
    color: #fff;
}

.modal-body {
    padding: 16px;
}

.form-row {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 12px;
}

.form-row label {
    color: #cfd6dd;
    font-size: 13px;
}

.form-row input {
    background: #0f1216;
    color: #e6eaf0;
    border: 1px solid #2b3036;
    border-radius: 8px;
    padding: 10px 12px;
    outline: none;
}

.form-row input:focus {
    border-color: #3b82f6;
}

.hint {
    margin: 4px 0 0;
    font-size: 12px;
    color: #9aa6b2;
}

.hint.error {
    color: #ff9aa2;
}

.modal-footer {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 16px;
    border-top: 1px solid #2b3036;
}

.btn {
    min-width: 84px;
    padding: 8px 12px;
    border-radius: 8px;
    border: 1px solid #2b3036;
    background: #2a3036;
    color: #e6eaf0;
    cursor: pointer;
}

.btn:hover {
    filter: brightness(1.05);
}

.btn.ghost {
    background: transparent;
}

.btn.primary {
    background: #2563eb;
    border-color: #2563eb;
}

.btn[disabled] {
    opacity: .5;
    cursor: not-allowed;
}

/* íŽ˜ì´ë“œ íŠ¸ëžœì§€ì…˜ ìž¬ì‚¬ìš© */
.fade-enter-active,
.fade-leave-active {
    transition: opacity .15s ease;
}

.fade-enter-from,
.fade-leave-to {
    opacity: 0;
}

/* Toolbar */
.board-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.board-toolbar .left {
    display: flex;
    gap: 8px;
}

.board-toolbar .right {
    display: flex;
    gap: 8px;
    align-items: center;
}

.form-control.form-sm {
    height: 37px;
    padding: 6px 10px;
    background: #0f1216;
    color: #e6eaf0;
    border: 1px solid #2b3036;
    border-radius: 8px;
}

.btn.btn-sm {
    height: 32px;
    padding: 0 10px;
    border-radius: 8px;
}

.btn-primary {
    background: #2563eb;
    border: 1px solid #2563eb;
    color: #fff;
}

/* Table */
.board-wrap {
    width: 100%;
}

.board-table {
    width: 100%;
    border-collapse: collapse;
}

.board-table thead th {
    text-align: left;
    padding: 10px 12px;
    background: #171a1f;
    color: #cfd6dd;
    font-weight: 600;
    border-bottom: 1px solid #2b3036;
    position: sticky;
    top: 0;
    z-index: 1;
}

.board-table tbody td {
    padding: 12px;
    border-bottom: 1px solid #2b3036;
    color: #e6eaf0;
}

.td-center {
    text-align: center;
}

.td-title .title {
    max-width: 100%;
    display: inline-block;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.td-title .file-ico {
    margin-left: 6px;
    opacity: .8;
}

.td-title .cmt {
    margin-left: 6px;
    color: #91a0af;
}

.row-click {
    cursor: pointer;
}

.row-click:hover {
    background: #161b20;
}

/* Badges */
.badge {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 9999px;
    font-size: 12px;
}

.badge-notice {
    background: #eab308;
    color: #1b1e23;
}

.badge-blue {
    background: #2563eb;
}

.badge-green {
    background: #16a34a;
}

.badge-gray {
    background: #374151;
}

/* Empty */
.empty {
    text-align: center;
    padding: 30px 10px;
    color: #9aa6b2;
}

/* Cards (mobile) ìˆ¨ê¹€: ë°ìŠ¤í¬í†±ì—ì„œëŠ” í…Œì´ë¸”ë§Œ ë³´ìž„ */
.board-cards {
    display: none;
}

/* Responsive */
@media (max-width: 768px) {
    .board-table {
        display: none;
    }

    .board-cards {
        display: block;
    }

    .bcard {
        border: 1px solid #2b3036;
        border-radius: 12px;
        padding: 12px;
        margin-bottom: 10px;
        background: #1a1f25;
    }

    .bcard .btitle {
        font-weight: 600;
        color: #e6eaf0;
    }

    .bcard .cmt {
        margin-left: 6px;
        color: #91a0af;
    }

    .bmeta {
        margin-top: 8px;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        font-size: 12px;
        color: #b6c0ca;
        align-items: center;
    }

    .bmeta .badge {
        margin-left: auto;
    }
}

/* Toolbar */
.board-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.board-toolbar .left {
    display: flex;
    gap: 8px;
}

.board-toolbar .right {
    display: flex;
    gap: 8px;
    align-items: center;
}

.form-control.form-sm {
    height: 32px;
    padding: 6px 10px;
    background: #0f1216;
    color: #e6eaf0;
    border: 1px solid #2b3036;
    border-radius: 8px;
}

.btn.btn-sm {
    height: 32px;
    padding: 0 10px;
    border-radius: 8px;
}

.btn-primary {
    background: #2563eb;
    border: 1px solid #2563eb;
    color: #fff;
}

/* Table */
.board-wrap {
    width: 100%;
}

.board-table {
    width: 100%;
    border-collapse: collapse;
}

.board-table thead th {
    text-align: left;
    padding: 10px 12px;
    background: #171a1f;
    color: #cfd6dd;
    font-weight: 600;
    border-bottom: 1px solid #2b3036;
    position: sticky;
    top: 0;
    z-index: 1;
}

.board-table tbody td {
    padding: 12px;
    border-bottom: 1px solid #2b3036;
    color: #e6eaf0;
}

.td-center {
    text-align: center;
}

.td-title .title {
    max-width: 100%;
    display: inline-block;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.td-title .file-ico {
    margin-left: 6px;
    opacity: .8;
}

.td-title .cmt {
    margin-left: 6px;
    color: #91a0af;
}

.row-click {
    cursor: pointer;
}

.row-click:hover {
    background: #161b20;
}

/* Badges */
.badge {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 9999px;
    font-size: 12px;
}

.badge-notice {
    background: #eab308;
    color: #1b1e23;
}

.badge-blue {
    background: #2563eb;
}

.badge-green {
    background: #16a34a;
}

.badge-gray {
    background: #374151;
}

/* Empty */
.empty {
    text-align: center;
    padding: 30px 10px;
    color: #9aa6b2;
}

/* Cards (mobile) ìˆ¨ê¹€: ë°ìŠ¤í¬í†±ì—ì„œëŠ” í…Œì´ë¸”ë§Œ ë³´ìž„ */
.board-cards {
    display: none;
}

/* Responsive */
@media (max-width: 768px) {
    .board-table {
        display: none;
    }

    .board-cards {
        display: block;
    }

    .bcard {
        border: 1px solid #2b3036;
        border-radius: 12px;
        padding: 12px;
        margin-bottom: 10px;
        background: #1a1f25;
    }

    .bcard .btitle {
        font-weight: 600;
        color: #e6eaf0;
    }

    .bcard .cmt {
        margin-left: 6px;
        color: #91a0af;
    }

    .bmeta {
        margin-top: 8px;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        font-size: 12px;
        color: #b6c0ca;
        align-items: center;
    }

    .bmeta .badge {
        margin-left: auto;
    }
}

/* Toolbar */
.board-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.board-toolbar .left {
    display: flex;
    gap: 8px;
}

.board-toolbar .right {
    display: flex;
    gap: 8px;
    align-items: center;
}

.form-control.form-sm {
    height: 32px;
    padding: 6px 10px;
    background: #0f1216;
    color: #e6eaf0;
    border: 1px solid #2b3036;
    border-radius: 8px;
}

.btn.btn-sm {
    height: 32px;
    padding: 0 10px;
    border-radius: 8px;
}

.btn-primary {
    background: #2563eb;
    border: 1px solid #2563eb;
    color: #fff;
}

/* Table */
.board-wrap {
    width: 100%;
}

.board-table {
    width: 100%;
    border-collapse: collapse;
}

.board-table thead th {
    text-align: left;
    padding: 10px 12px;
    background: #171a1f;
    color: #cfd6dd;
    font-weight: 600;
    border-bottom: 1px solid #2b3036;
    position: sticky;
    top: 0;
    z-index: 1;
}

.board-table tbody td {
    padding: 12px;
    border-bottom: 1px solid #2b3036;
    color: #e6eaf0;
}

.td-center {
    text-align: center;
}

.td-title .title {
    max-width: 100%;
    display: inline-block;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.td-title .file-ico {
    margin-left: 6px;
    opacity: .8;
}

.td-title .cmt {
    margin-left: 6px;
    color: #91a0af;
}

.row-click {
    cursor: pointer;
}

.row-click:hover {
    background: #161b20;
}

/* Badges */
.badge {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 9999px;
    font-size: 12px;
}

.badge-notice {
    background: #eab308;
    color: #1b1e23;
}

.badge-blue {
    background: #2563eb;
}

.badge-green {
    background: #16a34a;
}

.badge-gray {
    background: #374151;
}

/* Empty */
.empty {
    text-align: center;
    padding: 30px 10px;
    color: #9aa6b2;
}

/* Cards (mobile) ìˆ¨ê¹€: ë°ìŠ¤í¬í†±ì—ì„œëŠ” í…Œì´ë¸”ë§Œ ë³´ìž„ */
.board-cards {
    display: none;
}

/* Responsive */
@media (max-width: 768px) {
    .board-table {
        display: none;
    }

    .board-cards {
        display: block;
    }

    .bcard {
        border: 1px solid #2b3036;
        border-radius: 12px;
        padding: 12px;
        margin-bottom: 10px;
        background: #1a1f25;
    }

    .bcard .btitle {
        font-weight: 600;
        color: #e6eaf0;
    }

    .bcard .cmt {
        margin-left: 6px;
        color: #91a0af;
    }

    .bmeta {
        margin-top: 8px;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        font-size: 12px;
        color: #b6c0ca;
        align-items: center;
    }

    .bmeta .badge {
        margin-left: auto;
    }
}

.board-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    /* ì—´ ë„ˆë¹„ ê³ ì • */
}

.board-table thead th,
.board-table tbody td {
    padding: 12px;
    border-bottom: 1px solid #2b3036;
    vertical-align: middle;
    /* ì„¸ë¡œ ê°€ìš´ë° */
    white-space: nowrap;
    /* ì¤„ë°”ê¿ˆ ë°©ì§€ */
}

.board-table thead th {
    background: #171a1f;
    color: #cfd6dd;
    font-weight: 600;
}

.td-center {
    text-align: center;
}

.td-title {
    overflow: hidden;
}

/* ì œëª© ì…€ */
.td-title .title {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    /* ê¸´ ì œëª© ë§ì¤„ìž„ */
    vertical-align: middle;
}

.td-title .file-ico,
.td-title .cmt {
    margin-left: 6px;
    vertical-align: middle;
}

.badge {
    vertical-align: middle;
}

/* ë°°ì§€ ì •ë ¬ */

@media (max-width:768px) {

    /* ëª¨ë°”ì¼ì€ ì¹´ë“œ ë ˆì´ì•„ì›ƒ ì‚¬ìš© ì‹œ í…Œì´ë¸” ìˆ¨ê¹€ (ê¸°ì¡´ ê·œì¹™ ìœ ì§€) */
    .board-table {
        display: none;
    }
}

/* íˆ´ë°” */
.board-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.board-toolbar .left {
    display: flex;
    gap: 8px;
}

.board-toolbar .right {
    display: flex;
    gap: 8px;
    align-items: center;
}

.form-control.form-sm {
    height: 43px;
    padding: 6px 10px;
    background: #0f1216;
    color: #e6eaf0;
    border: 1px solid #2b3036;
    border-radius: 8px;
}

.btn.btn-sm {
    margin-right: 5px;
    height: 32px;
    padding: 0 10px;
    border-radius: 8px;
}

.btn-primary {
    background: #2563eb;
    border: 1px solid #2563eb;
    color: #fff;
}

/* í…Œì´ë¸” */
.board-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.board-table thead th {
    text-align: left;
    padding: 10px 12px;
    background: #171a1f;
    color: #cfd6dd;
    font-weight: 600;
    border-bottom: 1px solid #2b3036;
    position: sticky;
    top: 0;
    z-index: 1;
}

.board-table tbody td {
    padding: 12px;
    border-bottom: 1px solid #2b3036;
    color: #e6eaf0;
    vertical-align: middle;
    white-space: nowrap;
}

.td-center {
    text-align: center;
}

.td-title {
    overflow: hidden;
}

.td-title .title {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: middle;
}

.td-title .file-ico {
    margin-left: 6px;
    opacity: .8;
    vertical-align: middle;
}

.badge {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 9999px;
    font-size: 12px;
}

.badge-notice {
    background: #eab308;
    color: #1b1e23;
}

.badge-blue {
    background: #2563eb;
    color: #fff;
}

.badge-green {
    background: #16a34a;
    color: #fff;
}

.badge-gray {
    background: #374151;
    color: #fff;
}

.empty {
    text-align: center;
    padding: 30px 10px;
    color: #9aa6b2;
}

.row-click {
    cursor: pointer;
}

.row-click:hover {
    background: #161b20;
}

/* ëª¨ë°”ì¼ ì¹´ë“œ */
.board-cards {
    display: none;
}

@media (max-width:768px) {
    .board-table {
        display: none;
    }

    .board-cards {
        display: block;
    }

    .bcard {
        border: 1px solid #2b3036;
        border-radius: 12px;
        padding: 12px;
        margin-bottom: 10px;
        background: #1a1f25;
    }

    .bcard .btitle {
        font-weight: 600;
        color: #e6eaf0;
    }

    .bmeta {
        margin-top: 8px;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        font-size: 12px;
        color: #b6c0ca;
        align-items: center;
    }
}

/* ëª¨ë‹¬(ê°„ë‹¨ ë²„ì „) */
.modal-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
}

.modal-card {
    width: min(640px, calc(100vw - 32px));
    background: #1f2328;
    border: 1px solid #2b3036;
    border-radius: 14px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .5);
}

.modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-bottom: 1px solid #2b3036;
}

.modal-header h3 {
    margin: 0;
    color: #e6eaf0;
    font-size: 18px;
}

.icon-btn {
    background: transparent;
    border: 0;
    color: #97a3af;
    font-size: 18px;
    cursor: pointer;
}

.modal-body {
    padding: 16px;
}

.form-row {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 12px;
}

.form-row.inline {
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

.form-row label {
    color: #cfd6dd;
    font-size: 13px;
}

.form-row input,
.form-row textarea,
.form-row select {
    background: #0f1216;
    color: #e6eaf0;
    border: 1px solid #2b3036;
    border-radius: 8px;
    padding: 10px 12px;
    outline: none;
}

.form-row input:focus,
.form-row textarea:focus,
.form-row select:focus {
    border-color: #3b82f6;
}

.modal-footer {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 16px;
    border-top: 1px solid #2b3036;
}

.btn {
    min-width: 84px;
    padding: 8px 12px;
    border-radius: 8px;
    border: 1px solid #2b3036;
    background: #2a3036;
    color: #e6eaf0;
    cursor: pointer;
}

.btn.ghost {
    background: transparent;
}

.btn.primary {
    background: #2563eb;
    border-color: #2563eb;
}

.btn[disabled] {
    opacity: .5;
    cursor: not-allowed;
}

/* íŽ˜ì´ë“œ */
.fade-enter-active,
.fade-leave-active {
    transition: opacity .15s ease;
}

.fade-enter-from,
.fade-leave-to {
    opacity: 0;
}
#editor { width: 100%; }
.tox .tox-editor-header { border-radius: 8px 8px 0 0; }

/* ê²Œì‹œê¸€ ìž‘ì„± ëª¨ë‹¬ í•œì • ì‚¬ì´ì¦ˆ */
.modal-card.write-modal {
  width: 99%;
  height: calc(100vh - 150px);
  background: #1f2328;
  border: 1px solid #2b3036;
  border-radius: 14px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, .5);
  display: flex;
  flex-direction: column;
  min-width: 400px;
  min-height: 300px;
}

.modal-card.write-modal .modal-body {
  flex: 1;
  overflow-y: auto; /* ë‚´ìš©ì´ ë§Žì„ ê²½ìš° ë‚´ë¶€ ìŠ¤í¬ë¡¤ */
}
.modal-card.write-modal { display:flex; flex-direction:column; }
.modal-card.write-modal .modal-body { flex:1; overflow:hidden; }
.tox.tox-tinymce { display:flex !important; flex-direction:column; }
.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9998; /* ê¸°ë³¸ ëª¨ë‹¬ë³´ë‹¤ ìœ„ */
}

:root {
  --gap: 150px;      /* í™”ë©´ ê°€ìž¥ìžë¦¬ ì—¬ë°± ì´ëŸ‰ */
  
  --gap2: px;      /* í™”ë©´ ê°€ìž¥ìžë¦¬ ì—¬ë°± ì´ëŸ‰ */
  --ratio: 16 / 9;   /* ì›í•˜ëŠ” ë¹„ìœ¨(ì˜ˆ: 16:9) */
}

.modal-card.write-modal {
  position: relative;                 /* ëª¨ë‹¬ì´ë©´ fixedê°€ ì¼ë°˜ì  */

  /* ë” ìž‘ì€ ì¶• ê¸°ì¤€ìœ¼ë¡œ í¬ê¸° ê²°ì • â†’ ë¹„ìœ¨ ìœ ì§€ */
  
  aspect-ratio: var(--ratio);      /* ë¹„ìœ¨ ê³ ì • */
  max-width: calc(100vw - var(--gap2));

  background: #1f2328;
  border: 1px solid #2b3036;
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  z-index: 9999;
}
.modal-card.view-modal {
  position: relative;                 /* ëª¨ë‹¬ì´ë©´ fixedê°€ ì¼ë°˜ì  */

  

  /* ë” ìž‘ì€ ì¶• ê¸°ì¤€ìœ¼ë¡œ í¬ê¸° ê²°ì • â†’ ë¹„ìœ¨ ìœ ì§€ */
  width: calc(100vmin - var(--gap2));
  aspect-ratio: var(--ratio);      /* ë¹„ìœ¨ ê³ ì • */
  max-width: calc(100vw - var(--gap2));
  

  background: #1f2328;
  border: 1px solid #2b3036;
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  z-index: 9999;
}
.tox.tox-tinymce-aux,
.tox.tox-silver-sink,
.tox-dialog,
.tox-dialog-wrap {
  z-index: 10050 !important;
}

.tox-menu {
  z-index: 10051 !important;
}
