/* ==========================================================================
   S10 · 티파니 테마(2026-10-05 지시 — #81d8d0 · 「티파니 심볼을 느낄 수 있게」).
   index.html 맨 마지막에 로드 — ceo 공용 규칙(app-*.css · layout.css)을 같은 선택자 + 뒤 순서로 덮는다.
   ⚠️ 명명 규칙(지시): 클래스·파일명에 접두사 금지(s10_ · sk_ 등) — 역할 이름만 쓴다.
   심볼 3종 = ① 티파니 블루 판(박스) ② 흰 새틴 리본 띠 + 매듭 ③ 잉크(거의 검정) 글자·버튼.
   토큰 정본(--app-*) = app-front.css THEME TOKENS. 여기는 판·리본·잉크 3색만 추가 정의.
   ========================================================================== */
:root {
    --box: #81d8d0;            /* 티파니 블루 판 */
    --box-deep: #6fcfc6;       /* 판 아래쪽 음영 */
    --ribbon: #ffffff;         /* 새틴 리본 */
    --ink: #0f1f1e;            /* 판 위 글자·버튼 */
    --ink-soft: #24504b;       /* 판 위 보조 글자 */
}

/* ── 1. 로그인 · 회원가입 · 가입코드 모달 공통 판(app-login-modal 관용구 = 세 모달 공유) ── */
.app-login-modal,
.app-login-modal.jf_doorless {
    background: linear-gradient(180deg, var(--box) 0%, var(--box-deep) 100%);
    background-color: var(--box);
    border: 0;
    border-radius: 4px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .55), inset 0 1px 0 rgba(255, 255, 255, .45);
    color: var(--ink);
}
.app-login-modal-title { color: var(--ink); letter-spacing: .04em; }
.app-login-modal-close { background: rgba(255, 255, 255, .45); border-color: rgba(15, 31, 30, .15); color: var(--ink); }
.app-login-modal-close:hover { background: var(--ribbon); border-color: rgba(15, 31, 30, .3); }

/* 로그인 모달(s8 구조) — 로고 · 리본 띠 · 입력 · 버튼 */
.login_form_modal { position: relative; left: auto; top: auto; transform: none; width: 100%; }
.login_form_modal .login_modal_logo { display: block; width: 160px; height: auto; margin: 4px auto 0; filter: drop-shadow(0 1px 1px rgba(15, 31, 30, .45)); }
.login_form_modal .login_modal_logo ~ .app-login-modal-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
/* 리본 = 판 좌우 끝까지 닿는 흰 띠(모달 패드 24px 만큼 음수 여백) + 가운데 매듭 */
.login_ribbon { position: relative; display: block; height: 10px; margin: 14px -24px 18px; background: var(--ribbon); box-shadow: 0 1px 2px rgba(15, 31, 30, .18); }
.login_ribbon_bow { position: absolute; left: 50%; top: 50%; width: 56px; height: 25px; transform: translate(-50%, -55%); fill: var(--ribbon); filter: drop-shadow(0 1px 1px rgba(15, 31, 30, .3)); }
.login_form_modal .login_in,
.login_form_modal .login_cap_box { border-radius: 2px; background: #fff; border: 1px solid rgba(15, 31, 30, .12); color: var(--ink); }
.login_form_modal .login_in::placeholder { color: #7a8c8a; }
.login_form_modal .login_in:focus { border-color: var(--ink); box-shadow: 0 0 0 2px rgba(15, 31, 30, .12); }
.login_form_modal .pwi_eye { color: #6b7f7c; }
.login_form_modal .login_btn { border-radius: 2px; letter-spacing: .08em; font-weight: 700; }
.login_form_modal .login_btn_primary { background: var(--ink); color: #fff; border: 0; }
.login_form_modal .login_btn_primary:hover:not(:disabled) { background: #000; filter: none; }
.login_form_modal .login_btn_sub { background: var(--ribbon); color: var(--ink); border: 1px solid var(--ink); }
.login_form_modal .login_btn_sub:hover:not(:disabled) { background: #f1fbfa; filter: none; }
.login_form_modal .login_hint { color: var(--ink-soft); }

/* 회원가입 모달 — 판 맨 위 흰 리본 띠(마크업 무접촉 · border-top) + 잉크 글자 */
.app-login-modal.jf_doorless { border-top: 10px solid var(--ribbon); padding-top: 18px; }
.jf_doorless .app-join-label,
.jf_doorless .jf_sec,
.jf_doorless .app-join-desc { color: var(--ink); }
.jf_doorless .jf_div { border-top-color: rgba(15, 31, 30, .18); }
.jf_doorless .app-join-hint { color: #a3262b; }
.jf_doorless .app-join-error { color: #b42318; }
.jf_doorless .app-join-ok { color: #0d6b4f; }
.jf_doorless .jf_req { color: #b42318; }
.jf_doorless .app-input,
.jf_doorless .login_in { border-radius: 2px; background: #fff; border: 1px solid rgba(15, 31, 30, .12); color: var(--ink); }
.jf_doorless .app-input:focus,
.jf_doorless .login_in:focus { border-color: var(--ink); box-shadow: 0 0 0 2px rgba(15, 31, 30, .12); }
.jf_doorless .app-captcha-box { border-radius: 2px; }
.jf_doorless .login_btn,
.jf_doorless .app-btn { border-radius: 2px; letter-spacing: .06em; font-weight: 700; }
.jf_doorless .login_btn_primary { background: var(--ink); color: #fff; border: 0; }
.jf_doorless .login_btn_primary:hover:not(:disabled) { background: #000; filter: none; }
.jf_doorless .login_btn_sub,
.jf_doorless .app-btn-secondary { background: var(--ribbon); color: var(--ink); border: 1px solid var(--ink); }
.jf_doorless .login_btn_sub:hover:not(:disabled),
.jf_doorless .app-btn-secondary:hover:not(:disabled) { background: #f1fbfa; }

/* ── 2. 홈 경기 카드 캐러셀(s9 구조 · 이미지 타일 대체) ── */
.fixture_sec { background: var(--app-bg-panel); border: 1px solid var(--app-border); border-radius: 8px; padding: 12px; }
.fixture_head { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.fixture_head .home_sec_tools { margin-left: auto; display: flex; align-items: center; gap: 6px; }
.fixture_tabs { display: flex; border: 1px solid var(--app-border-soft); border-radius: 4px; overflow: hidden; }
.fixture_tabs button { height: 34px; padding: 0 14px; border: 0; background: transparent; color: var(--app-text-secondary); font-size: 13px; font-weight: 700; cursor: pointer; }
.fixture_tabs button i { margin-right: 3px; }
.fixture_tabs button.on { background: var(--box); color: var(--ink); }
.fixture_all { height: 30px; line-height: 28px; padding: 0 12px; border: 1px solid var(--box); border-radius: 4px; color: var(--box); font-size: 12px; font-weight: 700; text-decoration: none; }
.fixture_all:hover { background: var(--box); color: var(--ink); }
.fixture_empty { padding: 26px 10px; text-align: center; color: var(--app-text-muted); font-size: 13px; }
.page_shell .fixture_strip,
.fixture_strip { --vis: 3; }

.fixture_card { display: flex; flex-direction: column; height: 100%; background: #0f2321; border: 1px solid var(--app-border); border-radius: 8px; overflow: hidden; color: var(--app-text-primary); text-decoration: none; cursor: pointer; transition: border-color .15s; }
.fixture_card:hover { border-color: var(--box); color: var(--app-text-primary); }
.fixture_league { display: flex; align-items: center; gap: 6px; height: 32px; padding: 0 10px; background: #0b1a19; border-bottom: 1px solid var(--app-border); color: var(--app-primary-light); font-size: 12px; font-weight: 700; white-space: nowrap; }
.fixture_league img { width: 22px; height: 15px; object-fit: cover; border-radius: 2px; flex: none; }
.fixture_league span { overflow: hidden; text-overflow: ellipsis; }
.fixture_body { flex: 1; display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 6px; padding: 16px 10px; }
.fixture_team { display: flex; flex-direction: column; align-items: center; gap: 6px; min-width: 0; }
.fixture_team b { max-width: 100%; font-size: 12.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fixture_emblem { width: 40px; height: 40px; object-fit: contain; }
.fixture_initial { display: grid; place-items: center; border-radius: 50%; background: var(--box); color: var(--ink); font-weight: 900; }
.fixture_score { font-size: 22px; font-weight: 800; letter-spacing: .04em; font-variant-numeric: tabular-nums; white-space: nowrap; color: #fff; }
.fixture_when { display: flex; flex-direction: column; align-items: center; gap: 2px; white-space: nowrap; }
.fixture_when small { color: var(--app-text-muted); font-size: 11.5px; }
.fixture_when b { font-size: 19px; font-weight: 800; font-variant-numeric: tabular-nums; }
.fixture_foot { display: flex; align-items: center; justify-content: space-between; padding: 10px; border-top: 1px solid var(--app-border); font-size: 12.5px; }
.fixture_prog { display: inline-flex; align-items: center; gap: 6px; color: #ff8a8a; font-weight: 700; }
.fixture_dot { width: 8px; height: 8px; border-radius: 50%; background: #e8414b; box-shadow: 0 0 0 3px rgba(232, 65, 75, .25); }
.fixture_markets { background: var(--box); color: var(--ink); font-weight: 700; padding: 4px 8px; border-radius: 3px; }
.fixture_odds { display: grid; gap: 4px; padding: 0 10px 10px; }
.fixture_odds.two { grid-template-columns: 1fr 1fr; }
.fixture_odds.three { grid-template-columns: 1fr 1fr 1fr; }
.fixture_odds span { display: flex; align-items: center; justify-content: space-between; gap: 4px; height: 36px; padding: 0 8px; background: #0a1817; border: 1px solid #24423f; border-radius: 4px; font-size: 12px; white-space: nowrap; }
.fixture_odds span i { font-style: normal; color: var(--app-text-muted); }
.fixture_odds span b { font-size: 14px; font-weight: 800; color: #fff; font-variant-numeric: tabular-nums; }
.fixture_odds span:hover { border-color: var(--box); }

/* ── 3. 홈 공지 | 이벤트 패널 — 머리띠 = 티파니 판 + 흰 리본 선 + 잉크 글자(구 골드 그라디언트 대체) ── */
.home_index .info_head { background: var(--box) !important; border-bottom: 4px solid var(--ribbon); border-radius: 4px 4px 0 0; }
.home_index .info_title,
.home_index .info_more { color: var(--ink) !important; text-shadow: none; }
.home_index .info_row { border-bottom-color: var(--app-border); }

/* ── 4. 모바일 홈 — 배너 → 한줄공지 → 경기 카드 → 이벤트 → 공지사항 ── */
.home_notice { display: none; }
@media (max-width: 1024px) {
    /* 홈에서만 한줄공지를 배너 아래로 — 헤더 아래 띠(전 페이지 공용)는 홈일 때 숨긴다. */
    body:has(.home_index) .m_hdr_notice { display: none; }
    .home_notice {
        display: flex; align-items: center; gap: 8px; height: 34px; margin: 8px 10px 0; padding: 0 12px;
        background: var(--app-bg-panel); border: 1px solid var(--app-border); border-left: 4px solid var(--box); border-radius: 4px; overflow: hidden; cursor: pointer;
    }
    .home_notice .hdr_notice_tag { flex: none; display: inline-flex; align-items: center; color: var(--box); font-size: 13px; line-height: 1; padding-right: 8px; border-right: 1px solid var(--app-border); }
    .home_notice .hdr_notice_vp { flex: 1 1 auto; min-width: 0; overflow: hidden; position: relative; height: 100%; }
    .home_notice .hdr_notice_track { position: absolute; left: 0; top: 0; display: inline-flex; align-items: center; height: 100%; white-space: nowrap; will-change: transform; animation: hdrTicker 30s linear infinite; min-width: 200%; }
    .home_notice .hdr_notice_seg { flex: 1 0 auto; display: inline-flex; align-items: center; height: 100%; line-height: 1; padding-right: 60px; color: var(--app-text-secondary); font-size: 12px; }
    .home_notice .hdr_notice_seg .hl { color: var(--box); font-weight: 700; }
}
@media (max-width: 900px) {
    .page_shell .fixture_strip,
    .fixture_strip { --vis: 1; }
    .fixture_sec { padding: 10px; }
    .fixture_tabs button { padding: 0 10px; font-size: 12.5px; }
    .home_panels { display: block; }
    .home_panels .home_panel_grid { display: flex; flex-direction: column; gap: 12px; }
}

/* ── 5. 모바일 헤더(ceo 구조 유지) — 로그인 버튼만 티파니 판 + 잉크 글자(구 빨강 btn_red_rect · 사용처 = 모바일 헤더 1곳) ── */
.btn_red_rect { background: var(--box); color: var(--ink); border-color: var(--box); }
.btn_red_rect:hover { background: var(--app-primary-light); color: var(--ink); }

@media (max-width: 900px) {
    /* 빈 목록(0건)일 때 PC 높이 맞춤용 최소높이가 세로 배치에서 큰 빈칸이 된다 → 내용 높이로. */
    .home_panels .hp_list { min-height: 0; }
}

/* ── 6. 배경 — 쥬얼리 무드(2026-10-05 지시 · s9 네온 글로우 자산을 티파니/펄로 재색 + 반짝임) ─────────────
   ① body = 딥 틸 세로 그라디언트(고정) ② body::after = 좌 티파니 · 우 펄 실버 글로우(페이지 최상단 · 폭 60%)
   ③ body::before · html::before = 다이아 스파클 타일 2벌(위상 다른 반짝임 — 한 벌만이면 전부 같이 깜빡여 어색).
   자산 = img/Bg/glow_tiffany·glow_pearl.webp(s9 glow_blue·orange 밝기축 재색) · sparkle_a/b.svg(생성 타일 · 폴더 = img/Bg 대문자 — 리눅스 대소문자 구분).
   ceo 회색 판(#232323 그라디언트)이 셸·본문·카트 열·홈을 덮고 있어 배경이 안 보였다 → 투명으로. 헤더·좌측바 = 반투명 판(블러 금지 규약).
   ⚠️ 의사 요소 z-index -1 · pointer-events none(클릭 통과). */
body { position: relative; background: linear-gradient(180deg, #041010 0%, #051413 45%, #0a1d1c 75%) fixed; }
body::after {
    content: ""; position: absolute; left: 0; right: 0; top: 0; height: 27vw; z-index: -1; pointer-events: none; opacity: .85;
    background: url('/img/Bg/glow_tiffany.webp') left top / 60% auto no-repeat, url('/img/Bg/glow_pearl.webp') right top / 60% auto no-repeat;
}
body::before,
html::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; }
/* PC 헤더(2줄 · 129px)가 글로우의 가장 밝은 윗부분을 가려 안 보였다 → PC 는 헤더 아래에서 시작 */
@media (min-width: 1025px) { body::after { top: 129px; } }
body::before { background: url('/img/Bg/sparkle_a.svg') 0 0 / 520px 520px repeat; animation: twinkle 4.2s ease-in-out infinite; }
html::before { background: url('/img/Bg/sparkle_b.svg') 130px 90px / 760px 760px repeat; animation: twinkle 5.6s ease-in-out -2.4s infinite; }
@keyframes twinkle { 0%, 100% { opacity: .15; } 50% { opacity: .75; } }

.page_shell, .page_shell_body, .cart_sidebar, .main_index_container.home_index { background: transparent; }
.pc_header { background: linear-gradient(180deg, rgba(10, 30, 28, .94), rgba(5, 16, 15, .94)); border-bottom: 1px solid rgba(129, 216, 208, .18); }
@media (min-width: 1025px) {
    .page_shell > .league_sidebar, .league_sidebar { background: transparent; border-right: 0; }   /* S10-6 · 판색·구분선 제거(배경 보이게) */
}
@media (max-width: 1024px) {
    .league_sidebar { background: #081413; }
}

/* ── 7. 우측 내정보 카드(rt_user) — 티파니 박스 카드 ─────────────────────────────────────────
   판 = 딥 틸 + 얇은 티파니 테두리 + 상단 리본 하이라이트 · 값 = 밝은 티파니 · 칩/버튼 = 둥근 외곽선. 빈 카드(비로그인·폼 없음)는 숨김. */
.rt_user {
    position: relative; overflow: hidden;
    background: linear-gradient(160deg, #11312e 0%, #0a1b1a 70%);
    border: 1px solid rgba(129, 216, 208, .55); border-radius: 10px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 8px 22px rgba(0, 0, 0, .4);
}
.rt_user::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: linear-gradient(90deg, transparent, var(--ribbon) 50%, transparent); opacity: .7; }
.rt_user:empty { display: none; }
.rt_user_nick { color: #fff; letter-spacing: .02em; }
.rt_user_val { color: var(--app-primary-light); }
.rt_user_unit, .rt_user_nim { color: #8fb5b1; }
.rt_user_chip { border-radius: 999px; border-color: var(--box); background: transparent; color: var(--box); }
.rt_user_chip:hover { background: var(--box); color: var(--ink); }
.rt_user_gift { background: rgba(129, 216, 208, .08); border-radius: 8px; }
.rt_user_swap.drawer_swap { border-radius: 999px; border-color: var(--box); background: transparent; color: var(--box); }
.rt_user_acts button:hover { color: var(--box); }
.rt_login_input { height: 34px; border-radius: 6px; border-color: #1f3b38; background: #061110; }
.rt_login_input:focus { border-color: var(--box); outline: none; }
.rt_login_btn { border: 0; border-radius: 6px; background: var(--box); color: var(--ink); letter-spacing: .06em; }
.rt_login_btn:hover:not([disabled]) { background: var(--app-primary-light); }
.rt_signup_btn { height: 32px; border-radius: 6px; border-color: var(--box); background: transparent; color: var(--box); }
.rt_signup_btn:hover { background: rgba(129, 216, 208, .12); }

/* ── 8. 배팅슬립(cart_section · 우측 열) — 티파니 박스 머리 + 흰 리본 선 · 딥 틸 본문 ─────────────────
   빈 슬립(is_empty) = 아이콘 + 한 줄 안내 · 접힘(cart_collapsed) = 머리만 깔끔하게. 모바일 시트(.mobile_cart_overlay)는 무접촉. */
.cart_sidebar .cart_section {
    background: linear-gradient(180deg, #0f2523 0%, #0a1716 100%);
    border: 1px solid rgba(129, 216, 208, .45); border-radius: 10px;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .45); overflow: hidden;
}
.cart_sidebar .cart_header { background: var(--box); border-bottom: 3px solid var(--ribbon); padding: 10px 12px; }
.cart_sidebar .slip_title { color: var(--ink); font-weight: 800; letter-spacing: .14em; }
.cart_sidebar .slip_title .cart_toggle_btn,
.cart_sidebar .slip_title .cart_toggle_btn:hover { color: var(--ink); }
.cart_sidebar .cart_controls { color: var(--ink-soft); }
.cart_sidebar .fold_count { color: var(--ink); font-weight: 700; }
.cart_sidebar .fold_count .badge { background: var(--ink); color: #fff; border-radius: 999px; min-width: 20px; }
.cart_sidebar .clear_all_btn { background: transparent; border: 0; color: var(--ink-soft); font-weight: 700; }
.cart_sidebar .clear_all_btn:hover { color: var(--ink); }
.cart_sidebar .cart_section.is_empty .cart_empty {
    display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 18px 10px;
    color: #8fb5b1; font-size: 12.5px; background: transparent;
}
.cart_sidebar .cart_section.is_empty .cart_empty::before {
    content: "\f3ff"; font-family: "Font Awesome 5 Free"; font-weight: 900; font-size: 22px; color: rgba(129, 216, 208, .55);
}
.cart_sidebar .cart_footer { background: transparent; border-top: 1px solid rgba(129, 216, 208, .18); padding: 10px 12px; }
.cart_sidebar .summary_row { color: #a9c9c5; font-size: 12.5px; }
.cart_sidebar .summary_row .total_odds { color: var(--app-primary-light); font-weight: 800; }
.cart_sidebar .summary_row.highlight .expected_win { color: #fff; font-weight: 800; }
.cart_sidebar .cart_section.cart_collapsed .cart_header { border-bottom-width: 0; }
.cart_sidebar .cart_section .cart_list { background: transparent; }

/* ══ 9. 모바일(≤1024) 개편(2026-10-05 지시 · 여우별 캡쳐 형식) ══════════════════════════════════════
   순서(홈) = [비로그인 버튼 줄] → 배너(꽉 차게) → 한줄공지 → 충전·환전·고객센터 → 구분선 → 게임 6칸 → 인기경기 → 공지사항 → 이벤트.
   배경 = s2 와 같은 무채 다크(#050507 / 본문 #0a0a0d) · 반짝임·글로우 없음 · 헤더 = #1c1c1c(색 조절 = --m-hdr-bg 한 곳 · S10-5 정정). */
:root { --m-hdr-bg: #1c1c1c; --m-hdr-ink: #ffffff; }   /* S10-5 지시 정정 · 티파니 → 다크 */
.auth_row, .money_menu, .game_menu { display: none; }
@media (max-width: 1024px) {
    body { background: #050507; }
    body::before, html::before, body::after { display: none; }
    .page_shell, .page_shell_body { background: #0a0a0d; }

    /* 헤더 — 다크 판 · 아이콘 흰색 · 로고 = img/Logo/logo.png(MainLayout) */
    .mobile_header { background: var(--m-hdr-bg); box-shadow: 0 2px 10px rgba(0, 0, 0, .35); }
    .mobile_header .m_header_top { background: transparent; }
    .mobile_header .btn_m_menu, .mobile_header .btn_m_mail { color: var(--m-hdr-ink); }
    .mobile_header .btn_m_menu svg, .mobile_header .btn_m_mail svg { fill: var(--m-hdr-ink); }
    .mobile_header .m_hdr_notice { background: #0a0a0d; }

    /* 비로그인 버튼 줄 — 로그인 = 티파니 채움 · 회원가입/무기명가입 = 회색 · 칸 수 = cols2/cols3 */
    .auth_row { display: grid; gap: 6px; padding: 8px 10px; background: #050507; }
    .auth_row.cols1 { grid-template-columns: 1fr; }
    .auth_row.cols2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .auth_row.cols3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .auth_btn { height: 44px; border-radius: 6px; font-size: 15px; font-weight: 800; white-space: nowrap; cursor: pointer; }
    .auth_login { border: 0; background: var(--box); color: var(--ink); }
    .auth_join { border: 1px solid #4a4f55; background: #2a2d31; color: #e6e9ec; }
    .auth_btn:active { filter: brightness(.92); }

    /* 배너 = 꽉 차게(좌우 여백·라운드 0) */
    .main_index_container.home_index .main_banner_wrap { margin: 0; padding: 0; width: 100%; max-width: none; }
    .main_index_container.home_index .app-main-banner-mobile,
    .main_index_container.home_index .app-main-banner-mobile .banner_container { margin: 0; width: 100%; border-radius: 0; }
    .main_index_container.home_index .app-main-banner-mobile img { width: 100%; border-radius: 0; display: block; }

    /* 한줄공지 깨짐 수리 — 홈 컨테이너가 세로 flex + 가운데 정렬이라 내용 폭(아이콘만)으로 줄어 티커 창 폭이 0 이 됐다 → 가로 전폭 */
    .home_notice { align-self: stretch; width: auto; margin: 8px 14px 0; }

    /* 충전 · 환전 · 고객센터 — 한 줄 3칸 상자 */
    /* ⚠️ home_section 공용 규칙 width:100% + 좌우 margin = 가로 넘침 → width auto · 좌우 여백은 home_wrap 패딩에 맡긴다(아래 섹션들과 정렬) */
    .money_menu, .game_menu { width: auto; }
    .money_menu { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border: 1px solid #2a2d31; border-radius: 8px; background: #141518; overflow: hidden; }
    .money_menu a { display: flex; align-items: center; justify-content: center; gap: 8px; height: 50px; color: #f0f2f4; font-size: 15px; font-weight: 700; text-decoration: none; }
    .money_menu a + a { border-left: 1px solid #2a2d31; }
    .money_menu a i { color: var(--box); font-size: 17px; }
    .money_menu a:active { background: #1d1f23; }

    /* 구분선 + 게임 6칸(3×2) */
    .game_menu { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: -18px 0 0; padding-top: 10px; border-top: 1px solid #2a2d31; }   /* 부모 gap 28 − 18 = 위 10 + 선 + 아래 10 */
    .game_menu_tile {
        display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; height: 82px;
        border: 1px solid #34383d; border-radius: 6px; background: linear-gradient(180deg, #2b2e32 0%, #1c1e21 100%);
        color: #f0f2f4; font-size: 14px; font-weight: 600; text-decoration: none;
    }
    .game_menu_tile i { color: var(--box); font-size: 22px; }
    .game_menu_tile:active { border-color: var(--box); }
    /* GAME-MENU-IMG(2026-10-15) · 이미지 타일(4:3 · 360×270 webp) — 높이 고정(82px) 대신 비율로 높이 결정 → 360~430 폰 어디서도 잘림·늘어남 0.
       프레임·글자는 그림에 포함 → 기존 상자 배경·테두리 제거. 누름 = 살짝 축소+어둡게. */
    .game_menu_tile.img_tile { height: auto; aspect-ratio: 4 / 3; padding: 0; border: 0; border-radius: 6px; background: none; overflow: hidden; transition: transform .1s ease, filter .1s ease; }
    .game_menu_tile.img_tile img { display: block; width: 100%; height: 100%; object-fit: contain; }
    .game_menu_tile.img_tile:active { transform: scale(.97); filter: brightness(.88); }

    .home_wrap > .fixture_sec { margin-top: 12px; }
}

/* ══ 10. 배너 페이지네이션(2026-10-05 지시 · s9 바형 도트 이식 · 색 = 티파니) ═══════════════════════
   배너 아래 12px · 30×4 r40 · 활성 100px 그라디언트 · .3s. 배너 상자 3겹 overflow:hidden 이 상자 밖 도트를 자르므로 해제(슬라이드 자르기 = .slick-list). */
.main_banner_wrap,
.main_banner_wrap .app-main-banner-pc,
.main_banner_wrap .app-main-banner-mobile,
.main_banner_wrap .banner-slick-slider,
.main_banner_wrap .ceo_bn_right { overflow: visible; }
.main_banner_wrap .slick-list { overflow: hidden; }
.main_banner_wrap .slick-dots {
    position: static; display: flex !important; justify-content: center !important; gap: 8px; margin: 12px 0 0; padding: 0; height: auto; width: auto;
}
.main_banner_wrap .slick-dots li { flex: 0 0 auto; width: auto; height: auto; margin: 0; float: none; }
.main_banner_wrap .slick-dots li button {
    display: block; width: 30px; height: 4px; padding: 0; border: 0; border-radius: 40px; background: #1d2a29;
    font-size: 0; line-height: 0; text-indent: -9999px; transition: .3s;
}
.main_banner_wrap .slick-dots li button::before { content: none; }
.main_banner_wrap .slick-dots li.slick-active button { width: 100px; background: linear-gradient(90deg, #b2ebe6 1%, #3f9e95 105.5%); }
.main_banner_wrap:has(.slick-dots) { margin-bottom: 16px; }

/* ══ 11. 충전 · 환전 페이지(2026-10-05 지시 · airplane 구성 참고 · 티파니 다크 톤) ═══════════════════════════
   airplane 에서 가져온 것 = 카드형 폼 판 · 탭 밑줄 · 선택 충전유형 = 강조색 채움 + 반전 글자 · 금액 버튼 격자 · 신청 버튼 강조/문의 회색.
   ⚠️ 표 규격(행 높이·라벨:입력 3:7 비율·라벨 정렬·여백 축)은 s10 현행 그대로 — 색·판·모서리만 바꾼다.
   ⚠️ 선택 유형 = sports.css 전역 `.selected { … !important }`(배당 선택 골드)가 가로채던 것 → 같은 !important + 높은 구체성으로 확정. */
.content_section .support_tabs_container { background: #0c1a19; border: 1px solid #1f3b38; border-bottom: 0; border-radius: 10px 10px 0 0; }
.support_tabs_container .tab_item { color: #8fb5b1; }
.support_tabs_container .tab_item:hover { color: #fff; background: rgba(129, 216, 208, .05); }
.support_tabs_container .tab_item.active { color: var(--box); }
.support_tabs_container .tab_item.active::after { background: var(--box); }
/* 카드 판 = 바깥 래퍼(탭 막대와 같은 폭 · 가장자리 정렬). 안쪽 폼 상자는 판 없이(이중 테두리 방지). */
.content_section .charge_section_wrapper {
    background: linear-gradient(180deg, #0f2321 0%, #0a1716 100%);
    border: 1px solid #1f3b38; border-top: 0; border-radius: 0 0 10px 10px;
}
.charge_section_wrapper .charge_form_container { background: transparent; border: 0; }
.charge_form_container .charge_type_head { color: #e3f4f2; border-bottom-color: #1f3b38; }
.charge_form_container .charge_type_item { background: rgba(129, 216, 208, .04); border-color: #1f3b38; }
.charge_form_container .charge_type_list .charge_type_item.selected { background: var(--box) !important; border-color: var(--box) !important; color: var(--ink) !important; }
.charge_form_container .charge_type_item.selected .type_line1,
.charge_form_container .charge_type_item.selected .type_line1 b,
.charge_form_container .charge_type_item.selected .tl_pct { color: var(--ink); }
.charge_form_container .charge_type_item.selected .tl_roll,
.charge_form_container .charge_type_item.selected .tl_muted { color: var(--ink-soft); }
.charge_form_container .charge_type_item .tl_roll { color: var(--app-primary-light); }
.charge_form_container .checkmark { background: #061110; border: 1px solid #2a4c48; }
.charge_form_container .radio_container input:checked ~ .checkmark { background: #fff; border-color: var(--ink); }
.charge_form_container .radio_container .checkmark:after { background: var(--ink); }
.charge_form_container .form_label { color: #cfe7e4; }
.charge_form_container .form_control { background: #061110; border: 1px solid #1f3b38; border-radius: 6px; color: #fff; }
.charge_form_container .form_control::placeholder { color: #5d7c78; }
.charge_form_container .form_control:focus,
.charge_form_container .input_amount:focus { outline: none; border-color: var(--box); box-shadow: 0 0 0 2px rgba(129, 216, 208, .18); }
.charge_form_container .readonly_text { background: #0a1a19 !important; border: 1px solid #1f3b38 !important; color: var(--app-primary-light); }
.charge_form_container .input_unit { color: #8fb5b1; }
.charge_form_container .btn_amt { background: #10302d; border: 1px solid rgba(129, 216, 208, .35); border-radius: 6px; color: var(--app-primary-light); font-weight: 700; }
.charge_form_container .btn_amt:hover:not(:disabled) { background: var(--box); border-color: var(--box); color: var(--ink); }
.charge_form_container .btn_amt.reset { background: #2a2d31; border-color: #3a3f44; color: #e6e9ec; }
.charge_form_container .btn_amt.reset:hover { background: #3a3f44; color: #fff; }
.charge_form_container .btn_submit_charge,
.charge_form_container .btn_submit_charge.btn_submit_exchange { background: var(--box); color: var(--ink); border: 0; border-radius: 8px; letter-spacing: .04em; }
.charge_form_container .btn_submit_charge:hover:not(:disabled) { background: var(--app-primary-light); }
.charge_form_container .btn_submit_charge.btn_account_inquiry { background: #2a2d31; color: #e6e9ec; border: 1px solid #3a3f44; }
.charge_form_container .btn_submit_charge.btn_account_inquiry:hover { background: #3a3f44; }
.charge_form_container .fee_notice_box { background: #0a1a19; border-color: #1f3b38; }
.charge_form_container .fee_notice_box .fee_net { border-top-color: #1f3b38; }
/* 환전 · 롤링 조건 카드 */
.rolling_card { background: #0f2321; border-color: #1f3b38; }
.rolling_card .rc_head { background: #132b28; }
.rolling_card .rc_bar_wrap { background: #061110; }
.rolling_card .rc_bar { background: linear-gradient(90deg, #b2ebe6, #5fbfb6); }
.rolling_card .rc_game_card { background: #061110; border-color: #1f3b38; }
@media (max-width: 1024px) {
    .content_section .charge_section_wrapper { padding: 14px 10px 18px; }
    .charge_section_wrapper .charge_form_container { padding: 0; }
}

/* ── 12. 스포츠 배당 선택색(전역 .selected · --ceo-sp-*) — ceo 골드(#6f5420)·갈색 줄이 남아 있던 것 → 티파니 딥 톤 ── */
:root { --ceo-sp-sel: #1f6b65; --ceo-sp-sel2: #81d8d0; --ceo-sp-line: #1f3b38; }
.odds_box:hover { background: #163330; }

/* ══ 13. S10-5 정정(2026-10-05) ═══════════════════════════════════════════════════════════════
   ① 로그인·가입·안내 모달 판 = 밝기 낮춘 티파니 세로 그라디언트(구 #81d8d0 단색이 너무 밝음) — 잉크 글자 대비 유지 범위.
   ② X 버튼이 폼 영역(.login_form_modal · position:relative · 뒤 순서)에 덮여 가장자리만 눌리던 것 → 맨 위(z-index).
   ③ 안내 모달(app-guard-modal · 로그인 후 이용 · 통화 전환) — 문구 잉크 · 확인 = 잉크 판 흰 글자(판색과 같은 티파니라 안 보이던 것).
   ④ 홈 PC 배너 좌측 칸(ceo_bn_left) 테두리 삭제(우측 칸도 같은 축이라 함께).
   ⑤ 우측 카트 — 띄움(10px)은 카드 바깥 여백으로 옮겨 테두리가 머리(cart_header)부터 시작하게(구 = 카드 안 위아래 padding 10 이라 머리 위 빈 띠). */
.app-login-modal,
.app-login-modal.jf_doorless { background: linear-gradient(180deg, #74cdc5 0%, #5dbcb3 55%, #4aa79e 100%); background-color: #5dbcb3; }
.app-login-modal-close { z-index: 5; }
.app-guard-modal .app-guard-msg { color: var(--ink); font-weight: 700; }
.app-guard-modal .app-btn,
.app-guard-modal .app-btn-primary { background: var(--ink); color: #fff; border: 0; border-radius: 6px; font-weight: 800; }
.app-guard-modal .app-btn:not(.app-btn-primary) { background: rgba(255, 255, 255, .85); color: var(--ink); }
.app-guard-modal .app-btn-primary:hover:not(:disabled) { background: #000; filter: none; }
.ceo_bn_left, .ceo_bn_right { border: 0; border-radius: 0; }   /* TIFFANY-4(2026-10-14) · 둥근 모서리 제거(티파니 배너 = 사각 액자 디자인 — 좌·우 칸 같은 축) */
.cart_sidebar .cart_section { padding: 0; margin-top: 10px; }

/* ── 푸터(S10-5 · s9 푸터 이식 · 티파니 톤) — 셸 아래 전폭 · 모바일 = 세로 쌓기 ── */
.site_foot { margin-top: 24px; background: #061110; border-top: 1px solid rgba(129, 216, 208, .18); }
.site_foot_in { width: 1200px; max-width: 100%; margin: 0 auto; padding: 28px 16px; display: flex; flex-direction: column; gap: 16px; font-size: 12.5px; color: #8fb5b1; }
.site_foot_cols { display: flex; gap: 60px; }
.site_foot_cols div { display: flex; flex-direction: column; gap: 6px; }
.site_foot_cols b { color: var(--box); font-size: 13.5px; margin-bottom: 4px; }
.site_foot_cols a { color: #8fb5b1; text-decoration: none; }
.site_foot_cols a:hover { color: #fff; }
.site_foot_warn { display: flex; align-items: center; gap: 10px; margin: 0; }
.site_foot_warn span { width: 30px; height: 30px; border-radius: 50%; border: 2px solid #e8414b; color: #e8414b; display: grid; place-items: center; font-weight: 700; font-size: 12px; flex: none; }
.site_foot_copy { color: #5d7c78; }
@media (max-width: 1024px) {
    .site_foot { margin-top: 16px; background: #050507; border-top-color: #2a2d31; }
    .site_foot_in { padding: 20px 14px 90px; }
    .site_foot_cols { flex-wrap: wrap; gap: 18px 28px; }
}

/* ══ HDR-UNIFY(2026-10-06 지시 · s9 기준) — 스포츠 5표면 · 미니게임 · 가상게임 머리 = 막대 + 폴더 탭(s7~s10 같은 표기) ══
   스포츠 = 공용 SportsSurfaceTabs(막대 「통합스포츠」 + 4탭) · 미니 = 막대 「미니게임」 + 우측 ∨ + 그룹 탭 · 가상 = 막대 「가상게임」 + 우측 ∨(공급사 탭 없음).
   선택 탭 = 폴더 탭(위·좌·우 테두리 · 아래 열림) · ∨ 목록은 막대 머리를 탭 위로(z) 올려 아래 탭에 깔리지 않게. */
.surface_head { margin: 0 0 8px; }
.surface_bar { padding: 9px 0; text-align: center; background: linear-gradient(#123331, #0b1f1e); border-top: 1px solid #2a4c48; color: var(--box); font-size: 15px; font-weight: 700; }
.surface_tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); background: transparent; padding-top: 6px; }
.surface_tab { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; padding: 10px 2px 9px;
    border: 1px solid transparent; border-bottom-color: #1f3b38; color: #8fb5b1; text-decoration: none; line-height: 1.15; }
.surface_tab::after { content: ""; position: absolute; right: -1px; top: 12px; bottom: 12px; width: 1px; background: #1f3b38; }
.surface_tab:last-child::after, .surface_tab.on::after, .surface_tab:has(+ .surface_tab.on)::after { content: none; }
.surface_tab b { font-size: 14px; font-weight: 900; color: #cfe7e4; }
.surface_tab small { font-size: 10.5px; color: #8fb5b1; }
.surface_tab:hover b { color: #fff; }
.surface_tab.on { background: #0f2321; border-color: #1f3b38; border-bottom-color: transparent; border-radius: 6px 6px 0 0; }
.surface_tab.on b { color: var(--box); }
.game_head .surface_bar { position: relative; z-index: 30; }
.game_head .surface_bar .vm-dd-wrap { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); }
.game_head .surface_bar .vm-dd-btn { width: 30px; height: 30px; border: 1px solid #2a4c48; border-radius: 4px; background: rgba(0, 0, 0, .25); color: var(--box); font-size: 13px; }
.game_head .surface_bar .vm-dd-btn:hover { background: rgba(0, 0, 0, .45); color: #fff; }
.game_head .surface_bar .vm-dd-menu { z-index: 100; text-align: left; font-weight: 500; background: #0f2321; border-color: #1f3b38; }
.game_head .surface_bar .vm-dd-item { display: flex; align-items: baseline; gap: 6px; white-space: nowrap; color: #dbe5f1; }
.game_head .surface_bar .vm-dd-item:hover { background: #163330; color: #fff; }
.game_head .surface_bar .vm-dd-item.active { color: var(--box); }
button.surface_tab { background: transparent; font: inherit; cursor: pointer; }
button.surface_tab.on { background: #0f2321; }
.game_head + .virtual-sport-tabs { display: flex; margin-bottom: 8px; }


/* ══ S10-6(2026-10-06 지시) · 좌·우 열 정리 ════════════════════════════════════════════════
   제안 채택: 열(기둥) 자체는 투명 · 구분선 없음 → 배경(쥬얼리 글로우·반짝임)이 이어지고, 내용 블록만 「카드」로 띄운다.
   좌측 리그 트리 = 우측 배팅슬립과 같은 딥 틸 카드(테두리·상단 리본 하이라이트) → 양쪽 열이 같은 재질로 대칭.
   모바일 = 좌 드로어(리그 트리)·우 드로어(카트) 같은 판색 · 구분선(우 드로어 border-left #5fbfb6) 제거 ·
            다크 헤더(#1c1c1c) 아래 티파니 머리카락선 1px → 헤더와 판 사이 「티파니 박스 리본」 연결(헤더 색 자체는 유지 권장). */
.league_sidebar .side_section_head { color: var(--box); }
.league_sidebar .snb_sp_box.side_tree {
    background: linear-gradient(180deg, #0f2523 0%, #0a1716 100%);
    border: 1px solid rgba(129, 216, 208, .35); border-radius: 10px; overflow: hidden;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 8px 22px rgba(0, 0, 0, .35);
}
.league_sidebar .side_tree .snb_item { border-bottom: 1px solid rgba(129, 216, 208, .08); }
.league_sidebar .side_tree .icon_sp { filter: drop-shadow(0 0 4px rgba(129, 216, 208, .35)); }
.league_sidebar .side_tree .snb_sp_group.active > .snb_item { background: rgba(129, 216, 208, .12); box-shadow: inset 3px 0 0 var(--box); }
@media (max-width: 1024px) {
    .league_sidebar,
    .mobile_cart_overlay { background: linear-gradient(180deg, #0f2523 0%, #0a1716 100%) !important; border-left: 0 !important; border-right: 0 !important; }
    .mobile_header { border-bottom: 1px solid rgba(129, 216, 208, .45); }
}

/* ══ S10-7(2026-10-06 지시 · 시안 캡쳐) · 충전·환전 2열 — 좌 신청 폼(환전 = 롤링 카드 + 폼) / 우 안내문 ════════════════
   우측 = 관리자 작성 안내(MoneyGuidePanel · KIND 6/7 + 방식별 GUIDE) · 항상 펼침 · 화면에 붙어 다님(sticky).
   모바일(≤1024) = 1열 · 안내가 위(먼저) → 폼. 안내가 없으면(패널 미렌더) 우측 열 숨김 → 폼이 전폭.
   탭 막대는 두 열 위 공용이라, 2열 화면에서는 탭·카드를 이어 붙이지 않고 각자 테두리로 끊는다. */
.money_split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; align-items: start; margin-top: 12px; }
.money_guide:empty { display: none; }
.money_main { min-width: 0; }
.money_main > .rolling_card { margin-top: 0; }
.content_section:has(.money_split) .support_tabs_container { border-bottom: 1px solid #1f3b38; border-radius: 10px; }
.money_split .charge_section_wrapper { border-top: 1px solid #1f3b38; border-radius: 10px; }
.money_guide { position: sticky; top: 12px; min-width: 0; }
.money_guide .spacer_v { margin: 0; padding: 0; background: transparent; border: 0; }
.money_guide .money_guide_panel {
    margin: 0; padding: 16px; border-radius: 10px;
    background: linear-gradient(180deg, #0f2523 0%, #0a1716 100%);
    border: 1px solid rgba(129, 216, 208, .45);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 8px 22px rgba(0, 0, 0, .35);
}
.money_guide .mg_body { padding: 0; color: #e3f4f2; font-size: 13.5px; line-height: 1.7; }
.money_guide .mg_body img { display: block; max-width: 100%; height: auto; margin: 0 auto; border-radius: 6px; }
.money_guide .mg_method { border-top-color: rgba(129, 216, 208, .25); color: #cfe7e4; }
@media (max-width: 1024px) {
    .money_split { grid-template-columns: minmax(0, 1fr); gap: 12px; }
    .money_guide { order: -1; position: static; }
    .money_guide .money_guide_panel { padding: 12px; }
}

/* ══ S10-8(2026-10-06 결재 시안) · 충전·환전 폼 = 캡쳐 구조 그대로 ════════════════════════════════════════════
   항목 = 위 라벨 / 아래 값(세로 쌓기·좌측 정렬·구분선) · 유형 버튼 · 보너스 라디오 · 금액 3열 · 신청 버튼 가운데 같은 크기
   (충전 신청 = 파랑 / 환전 신청 = 빨강) · 환전 = 한 장의 카드([환전유형]→[현재롤링]→[환전방법]→[환전신청]).
   우측 안내 = 고정 제목 알약(입금 안내/출금 안내) + 관리자 작성 본문(문구든 이미지든 그대로). */
.money_split .charge_form_container { padding: 4px 0 0; max-width: none; }
.money_split .charge_form_container .form_row {
    flex-direction: column; align-items: stretch; gap: 7px;
    margin: 0; padding: 12px 4px; border-bottom: 1px solid #1f3b38;
}
.money_split .charge_form_container .form_label_area { flex: none; text-align: left; padding: 0; }
.money_split .charge_form_container .form_label { color: #e3f4f2; font-size: 13.5px; font-weight: 700; }
.money_split .charge_form_container .form_input_area { flex: none; min-width: 0; }
.money_split .charge_form_container .form_control { text-align: left; background: #061110; border-color: #2a4c48; color: #b2ebe6; font-size: 15px; font-weight: 600; border-radius: 6px; }
.money_split .charge_form_container .form_control:focus { border-color: var(--box); outline: 0; }
.money_line { font-size: 13px; color: #cfe7e4; word-break: break-all; }
.balance_val { color: var(--box); font-weight: 800; font-variant-numeric: tabular-nums; }
.balance_big { font-size: 20px; }
.money_note { margin: 0; font-size: 12px; color: #cfe7e4; line-height: 1.6; }
.money_note em { font-style: normal; color: var(--box); }
.warn_note { margin: 0; font-size: 12px; color: #ffb454; }
.pill_btn {
    height: 32px; padding: 0 16px; border: 2px solid var(--box); border-radius: 16px;
    background: transparent; color: #e3f4f2; font-size: 13px; font-weight: 600; cursor: pointer;
}
.pill_btn:hover { background: rgba(129, 216, 208, .12); }
.cur_btns { display: flex; flex-wrap: wrap; gap: 8px; }
.cur_btn {
    height: 36px; padding: 0 18px; border: 1px solid #2a4c48; border-radius: 5px;
    background: #0f2321; color: #cfe7e4; font-size: 13px; font-weight: 600; cursor: pointer;
}
.cur_btn.on { background: var(--box); border-color: var(--box); color: var(--ink); font-weight: 700; }
/* 보너스 라디오 */
.bonus_list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.bonus_opt label { display: flex; align-items: flex-start; gap: 9px; padding: 5px 0; cursor: pointer; }
.bonus_opt input[type=radio] { flex: none; width: 16px; height: 16px; margin: 2px 0 0; accent-color: var(--box); }
.bonus_text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bonus_name { font-size: 13px; font-weight: 600; color: #e3f4f2; }
.bonus_name b { color: var(--box); }
.bonus_opt.on .bonus_name { color: #b2ebe6; }
.bonus_desc { font-size: 12px; color: #9fc4c0; line-height: 1.5; }
.bonus_off { color: #ff7b7b; margin-left: 4px; }
.bonus_range { color: #ffb454; }
/* 금액 3열 */
.money_split .money_btn_grid.amount_grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin-top: 8px; }
.money_split .amount_grid .btn_amt {
    height: 40px; padding: 0 4px; border: 1px solid #2a4c48; border-radius: 6px;
    background: linear-gradient(180deg, #163330, #0d211f); color: #e3f4f2; font-size: 13px; font-weight: 600; white-space: nowrap;
}
.money_split .amount_grid .btn_amt:hover { border-color: var(--box); }
.money_split .amount_grid .btn_amt.reset { background: #2a2d31; border-color: #3a3f44; color: #e6e9ec; }
/* 신청 버튼 — 가운데 · 같은 크기 · 충전 파랑 / 환전 빨강 (앞 S10 민트 규칙 덮음) */
.money_split .submit_area.submit_center { display: flex; justify-content: center; margin: 0; padding: 18px 0 4px; }
.money_split .charge_form_container .submit_center .btn_submit_charge {
    width: 220px; max-width: 100%; height: 48px; padding: 0; border: 0; border-radius: 8px;
    font-size: 15px; font-weight: 800; letter-spacing: .04em; color: #fff;
}
.money_split .charge_form_container .submit_center .btn_submit_charge.btn_submit_deposit { background: linear-gradient(180deg, #3b82f6, #1d4ed8); }
.money_split .charge_form_container .submit_center .btn_submit_charge.btn_submit_deposit:hover:not(:disabled) { background: linear-gradient(180deg, #60a5fa, #2563eb); }
.money_split .charge_form_container .submit_center .btn_submit_charge.btn_submit_exchange { background: linear-gradient(180deg, #ef4444, #b91c1c); }
.money_split .charge_form_container .submit_center .btn_submit_charge.btn_submit_exchange:hover:not(:disabled) { background: linear-gradient(180deg, #f87171, #dc2626); }
.money_split .charge_form_container .submit_center .btn_submit_charge:disabled { opacity: .55; cursor: not-allowed; }
/* 환전 = 한 장의 카드 */
.money_main.wd_main {
    display: flex; flex-direction: column; gap: 10px; padding: 16px 18px 20px;
    background: linear-gradient(180deg, #0f2523 0%, #0a1716 100%);
    border: 1px solid #1f3b38; border-radius: 10px;
}
.wd_main .charge_section_wrapper { background: transparent; border: 0; box-shadow: none; padding: 0; }
.money_head { font-size: 13.5px; font-weight: 800; color: var(--box); }
.money_head small { margin-left: 4px; font-size: 12px; font-weight: 500; color: #ffb454; }
.money_steps { margin: 0; padding-left: 22px; font-size: 12.5px; color: #cfe7e4; line-height: 1.8; }
.wd_main .rolling_card { margin: 0; }
.wd_main .rolling_card .rc_games { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
/* S10-8b · 종목 카드 = 시안 .rc (종목명 / % / 현재까지 롤링금액 / 금액) */
.wd_main .rc { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 12px 6px; border: 1px solid #1f3b38; border-radius: 8px; background: #0a1a19; text-align: center; min-width: 0; }
.wd_main .rc b { font-size: 15px; color: #e3f4f2; }
.wd_main .rc strong { font-size: 24px; font-weight: 900; color: var(--box); font-variant-numeric: tabular-nums; }
.wd_main .rc small { font-size: 11.5px; color: #8fb5b1; }
.wd_main .rc em { font-style: normal; font-size: 13px; color: #e3f4f2; font-variant-numeric: tabular-nums; }
/* 우측 안내 — 고정 제목 알약 */
.money_guide .mg_title {
    display: table; margin: 0 auto 14px; padding: 8px 40px; border: 2px solid var(--box); border-radius: 12px;
    color: #e3f4f2; font-size: 20px; font-weight: 900; letter-spacing: .04em;
}
@media (max-width: 1024px) {
    .money_main.wd_main { padding: 14px 12px 16px; }
    .wd_main .rolling_card .rc_games { gap: 6px; }
    .wd_main .rc { padding: 10px 4px; gap: 3px; }
    .wd_main .rc b { font-size: 13px; }
    .wd_main .rc strong { font-size: 19px; }
    .wd_main .rc small { font-size: 10.5px; }
    .wd_main .rc em { font-size: 12px; }
    .money_split .charge_form_container .submit_center .btn_submit_charge { width: 100%; }
    .money_guide .mg_title { padding: 6px 28px; font-size: 17px; }
}

/* ══ S10-8b(2026-10-06 지시) · 안내 열 상시 · 금액 우측 정렬 · 환전유형 빨강 · 흰 글씨 그림자 ════════════════ */
.money_split .charge_form_container .form_control.input_amount { text-align: right; font-variant-numeric: tabular-nums; }
.wd_main .cur_btn.on { background: linear-gradient(180deg, #ef4444, #b91c1c); border-color: #b91c1c; color: #fff; }
.wd_main .cur_btn.on,
.money_split .charge_form_container .submit_center .btn_submit_charge { text-shadow: 0 1px 2px rgba(0, 0, 0, .55); }
.money_guide .mg_body:has(> .mg_title:only-child) .mg_title { margin-bottom: 0; }

/* ══ S10-9(2026-10-06 지시) · 보더 대신 그림자로 요소 구분 ════════════════════════════════════════════════
   리그 트리·배팅슬립·보너스 바·홈 경기 섹션 = 보더 제거 + 박스 그림자(바깥 어둠 + 위쪽 얇은 하이라이트).
   홈 info_panel = 보더 없음 · 반투명 바탕(사이트 배경이 비침) + 그림자. ⚠️ backdrop-filter 금지(NOBLUR) — 반투명 rgba 로만. */
.league_sidebar .snb_sp_box.side_tree,
.cart_sidebar .cart_section,
.cart_sidebar .cart_section.is_empty,
.cart_sidebar .cart_section.cart_collapsed,
.bonus_container,
.home_section.fixture_sec {
    border: 0;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .55), 0 2px 6px rgba(0, 0, 0, .4), inset 0 1px 0 rgba(129, 216, 208, .14);
}
.bonus_container { box-shadow: none; }   /* TIFFANY-2(2026-10-14 지시) · 보너스 바만 그림자 제거(보더 0 은 위 묶음 유지) */
.bonus_item {
    border: 0;
    box-shadow: 0 3px 10px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255, 255, 255, .06);
}
.home_index .info_panel {
    border: 0; border-radius: 10px;
    background: rgba(10, 23, 22, .55);
    box-shadow: 0 10px 26px rgba(0, 0, 0, .5), 0 2px 6px rgba(0, 0, 0, .35), inset 0 1px 0 rgba(129, 216, 208, .14);
}
/* 페이지 머리 부제(「빠른 은행업무를 경험하세요!」 등) — 배경과 겹쳐 안 보이던 회색 → 밝은 민트 + 그림자. */
.support_header .sub_text,
.page_header .sub_text { color: #b2ebe6; text-shadow: 0 1px 3px rgba(0, 0, 0, .8); }

/* ══ TIFFANY-1(2026-10-13) · 로고 = img/Logo/logo.png(흰 실버 입체 · 600×118 · 가로로 긴 비율) ══
   헤더 칸은 높이 80px 기준(옛 300×80 로고)이라 가로 폭이 과해짐 → 폭 상한으로 맞춘다. 접두사 없는 역할 셀렉터만. */
.pc_header .hdr_logo img { max-height: 80px; max-width: 300px; width: auto; height: auto; object-fit: contain; }   /* TIFFANY-4 · 원본 300×80 꽉 차게(구 56/280) */
.m_header_logo img { height: auto; max-height: 44px; max-width: 200px; width: auto; }   /* TIFFANY-10(2026-10-15 지시) · 구 30/150 */
.login_form_modal .login_modal_logo { width: 220px; }

/* ══ SAFE(2026-10-13) · 금고 — 내정보 카드 줄 · 이동 모달(금고로 = 파랑 / 머니로 = 빨강) · 확인 단계 ══ */
.safe_title svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.rt_user_safe .rt_user_val { color: #81d8d0; }
.ledger_kind { margin-left: 4px; padding: 0 4px; border: 1px solid #4a6fa8; border-radius: 3px; color: #9cc0ff; font-size: 10px; vertical-align: middle; }

.safe_backdrop { position: fixed; inset: 0; z-index: 1990; background: rgba(0, 0, 0, .6); }
.safe_modal {
    position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 2000;
    width: min(440px, calc(100vw - 24px)); max-height: calc(100vh - 32px); overflow-y: auto;
    background: var(--app-bg-panel, #16161f); border: 1px solid var(--app-border-soft, #30303f); border-radius: 12px;
    box-shadow: 0 18px 48px rgba(0, 0, 0, .6); color: #e8eaed;
}
.safe_head { display: flex; align-items: center; justify-content: space-between; padding: 14px 16px; border-bottom: 1px solid var(--app-border, #262634); }
.safe_title { display: inline-flex; align-items: center; gap: 6px; font-size: 16px; font-weight: 800; }
.safe_close { position: relative; z-index: 5; width: 32px; height: 32px; border: 0; border-radius: 8px; background: var(--app-bg-panel-2, #1c1c27); color: #cfd3d8; cursor: pointer; }
.safe_balances { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 14px 16px 6px; }
.safe_bal { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border-radius: 8px; background: var(--app-bg-panel-2, #1c1c27); text-align: center; }
.safe_bal small { color: #9aa0a6; font-size: 11px; }
.safe_bal b { font-size: 15px; font-variant-numeric: tabular-nums; }
.safe_bal.is_safe b { color: #9cc0ff; }
.safe_tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 8px 16px 0; }
.safe_tab { height: 40px; border: 1px solid var(--app-border-soft, #30303f); border-radius: 8px; background: var(--app-bg-panel-2, #1c1c27); color: #aeb3b9; font-weight: 700; cursor: pointer; }
.safe_tab.in.on { background: #1d4ed8; border-color: #1d4ed8; color: #fff; }
.safe_tab.out.on { background: #c62828; border-color: #c62828; color: #fff; }
.safe_body { padding: 12px 16px 16px; }
.safe_input { display: flex; align-items: center; gap: 6px; }
.safe_input .input_amount { flex: 1; min-width: 0; }
.safe_hint { display: flex; align-items: center; gap: 6px; margin-top: 8px; font-size: 12px; color: #9aa0a6; }
.safe_hint b { color: #e8eaed; font-variant-numeric: tabular-nums; }
.safe_all { margin-left: auto; height: 26px; padding: 0 10px; border: 1px solid var(--app-border-soft, #30303f); border-radius: 6px; background: transparent; color: #cfd3d8; cursor: pointer; }
.safe_grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 12px; }
.safe_grid.in .btn_amt:not(.reset) { background-color: #1d4ed8; }
.safe_grid.out .btn_amt:not(.reset) { background-color: #c62828; }
.safe_submit { display: block; width: 220px; max-width: 100%; height: 48px; margin: 16px auto 0; border: 0; border-radius: 8px; color: #fff; font-size: 15px; font-weight: 800; cursor: pointer; text-shadow: 0 1px 2px rgba(0, 0, 0, .65), 0 0 1px rgba(0, 0, 0, .8); }
.safe_tab.on, .safe_grid .btn_amt { text-shadow: 0 1px 2px rgba(0, 0, 0, .55); }
.safe_submit.in { background: #1d4ed8; }
.safe_submit.out { background: #c62828; }
.safe_submit:disabled { opacity: .6; cursor: default; }
/* SAFE · 금고 아이콘 = 이미지(images/icon/exchange/ico_safe.webp · 512 투명) — 자리별 크기 */
.safe_ico { display: block; width: 20px; height: 20px; object-fit: contain; }
.drawer_swap .safe_ico { width: 18px; height: 18px; }
.safe_title .safe_ico { width: 22px; height: 22px; }

/* SAFE-CONFIRM(2026-10-13) · 금고 이동 확인 단계 — 위 현재 잔액·금고 잔액 / 가운데 이동 금액 + V자 화살표 / 아래 이동 후 목록 */
.safe_confirm { padding-top: 14px; }
.safe_cf_top { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.safe_cf_card { padding: 10px 8px; border-radius: 10px; background: rgba(255, 255, 255, .05); text-align: center; }
.safe_cf_card small { display: block; font-size: 12px; color: #9aa0a6; }
.safe_cf_card b { display: block; margin-top: 2px; font-size: 16px; font-weight: 800; font-variant-numeric: tabular-nums; color: #e8eaed; }
.safe_cf_card.is_safe b, .safe_cf_row b.sv { color: #9cc0ff; }
.safe_cf_move { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; margin: 8px 0 6px; }
.safe_cf_arw { display: flex; justify-content: center; }
.safe_cf_arw svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.safe_cf_amt { padding: 8px 14px; border-radius: 10px; text-align: center; }
.safe_cf_amt small { display: block; font-size: 12px; color: #e8eaed; }
.safe_cf_amt b { display: block; font-size: 19px; font-weight: 900; white-space: nowrap; font-variant-numeric: tabular-nums; }
.safe_cf_move.in .safe_cf_amt { background: rgba(29, 78, 216, .3); }
.safe_cf_move.in .safe_cf_amt b { color: #8fb6ff; }
.safe_cf_move.in .safe_cf_arw { color: #5b8cff; }
.safe_cf_move.out .safe_cf_amt { background: rgba(198, 40, 40, .3); }
.safe_cf_move.out .safe_cf_amt b { color: #ff8f8f; }
.safe_cf_move.out .safe_cf_arw { color: #ff6b6b; }
.safe_cf_list { margin-top: 6px; }
.safe_cf_row { display: flex; justify-content: space-between; align-items: center; padding: 9px 12px; border-bottom: 1px dashed rgba(255, 255, 255, .12); font-size: 14px; }
.safe_cf_row span { color: #aeb3b9; }
.safe_cf_row b { font-variant-numeric: tabular-nums; color: #e8eaed; }
.safe_cf_q { margin-top: 16px; text-align: center; font-size: 15px; font-weight: 800; }
.safe_cf_btns { display: flex; justify-content: center; gap: 8px; margin-top: 4px; }
.safe_cf_btns .safe_submit { margin: 12px 0 0; width: 160px; }
.safe_cf_cancel { width: 120px; height: 48px; margin-top: 12px; border: 1px solid rgba(255, 255, 255, .2); border-radius: 8px; background: transparent; color: #cfd3d8; font-size: 15px; font-weight: 700; cursor: pointer; }
@media (max-width: 380px) { .safe_cf_card b { font-size: 14px; } .safe_cf_amt b { font-size: 16px; } .safe_cf_amt { padding: 8px; } }

/* ══ MAIN-BG(2026-10-13) · 본문 배경 이미지 = img/Bg/main_body.webp(1672×941 · 티파니 쥬얼리) ══
   헤더 아래(page_shell)부터 시작 · 한 장만(반복 없음) · 폭 맞춤 · 아래로 갈수록 투명(마스크) · 톤다운(밝기·채도).
   위 쥬얼리 글로우(body::after)는 이미지와 겹쳐 숨김 — 스파클 타일은 이미지가 흐려진 아래쪽에서 그대로 보임.
   ⚠️ position: relative·isolation 만 사용(overflow/transform 금지 — 좌측바 sticky 보호). */
body::after { display: none; }
/* TIFFANY-5(2026-10-15) · isolation 제거 — isolate 가 셸 전체를 한 층(z 0)으로 묶어, 안의 모바일 좌측 드로어(1000)·카트(1001)·
   배팅 확인 모달(2000)이 헤더(sticky 1000 · 한줄공지 포함) **아래**로 갇혔다(공지가 드로어·카트 윗부분을 덮음 — CEO 엔 이 규칙 없음).
   배경 의사요소는 body::before/after(반짝임·글로우)와 같은 방식(루트 층 z -1 · body 배경은 캔버스로 전파)이라 isolation 없이도 그대로 보인다. */
.page_shell { position: relative; }
.page_shell::before {
    content: ""; position: absolute; left: 0; right: 0; top: 0; z-index: -1; pointer-events: none;
    aspect-ratio: 1672 / 941; max-height: 1200px;
    background: url('/img/Bg/main_body.webp') center top / cover no-repeat;
    filter: brightness(.55) saturate(.85);
    -webkit-mask-image: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, .75) 40%, rgba(0, 0, 0, .3) 75%, transparent 100%);
    mask-image: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, .75) 40%, rgba(0, 0, 0, .3) 75%, transparent 100%);
}
@media (max-width: 1024px) {
    .page_shell::before { aspect-ratio: auto; height: 120vw; max-height: 900px; filter: brightness(.45) saturate(.85); }
}

/* ══ TIFFANY-2(2026-10-14 지시) · 좌측 「(스포츠) 팀명 검색」 = 반투명 틴트(rgba .10)라 뒷배경이 비쳐 안 보임 → 불투명 딥 틸 판. ══ */
.sch_sp_box .sch_key { background: #0b1a19; border-color: #2a4c48; color: #e6f4f2; }
.sch_sp_box .sch_key::placeholder { color: #7fa9a4; }
.sch_sp_box .sch_key:focus { outline: none; border-color: var(--box); background: #0f2321; }

/* ══ TIFFANY-3(2026-10-14 지시) · 표면 탭 줄(surface_tabs — 스포츠·미니·가상 머리 공용) 뒷배경 ══
   구 = 투명(사이트 쥬얼리 배경이 비쳐 선택 탭 구분이 약함) → 불투명 딥 틸 판 + 선택 탭 = 밝은 틸 + 위쪽 티파니 블루 2px. */
.surface_tabs { background: linear-gradient(180deg, #0b1e1d, #071312); padding: 6px 6px 0; border: 1px solid #1f3b38; border-top: 0; }
.surface_tab.on,
button.surface_tab.on { background: #17423e; border-color: #2f6b64; border-top: 2px solid var(--box); border-bottom-color: transparent; }
.surface_tab.on b { color: #fff; }
.surface_tab.on small { color: var(--box); }
.surface_tab:not(.on):hover { background: rgba(129, 216, 208, .06); }

/* ══ TIFFANY-4(2026-10-14 지시) · 메인 배너 원본 규격 671×271 · 모바일 도트 아래로 한줄공지 ══
   PC 2분할 칸 비율 628/270 → 671/271(등록 원본 비율 그대로 — cover 크롭 0). 모바일은 첫 이미지 natural 비율(site.js) 그대로.
   모바일 도트(.main_banner_wrap .slick-dots = 배너 아래 static 12px+4px)가 한줄공지와 겹치던 것 → 배너 섹션 아래에 도트 자리 확보. */
.ceo_bn_left, .ceo_bn_right { aspect-ratio: 671 / 271; }
@media (max-width: 1024px) {
    .main_index_container.home_index .main_banner_wrap:has(.slick-dots) { padding-bottom: 20px; }
}

/* ══ TIFFANY-5(2026-10-15 지시) · 배팅카트 항목(.cart_item) — 카드 배경(--app-bg-panel-2)이 카트 판색과 겹쳐 구분 불가 →
   딥 틸 #021516 + 티파니 테두리 머리카락선 + 은은한 그림자(바깥 어둠 + 안쪽 위 하이라이트). 보너스 항목도 같은 판(좌측 띠만 유지). */
.cart_item,
.cart_item.bonus {
    background: #021516;
    border: 1px solid rgba(129, 216, 208, .22);
    border-left: 3px solid var(--box);
    box-shadow: 0 4px 12px rgba(0, 0, 0, .55), 0 0 10px rgba(129, 216, 208, .08), inset 0 1px 0 rgba(178, 235, 230, .08);
}

/* ══ TIFFANY-5(2026-10-15 지시) · 내용이 짧은 페이지(/money/history 등)에서 푸터가 화면 중간까지 올라오던 것 ══
   셸 최소 높이 = 화면 높이(PC = 셸 안에 PC 헤더 포함 · 모바일 = 셸 밖 모바일 헤더 56 + 한줄공지 32 를 뺀 높이) → 푸터는 항상 화면 아래. */
.page_shell { min-height: 100vh; }
@media (max-width: 1024px) {
    .page_shell { min-height: calc(100dvh - 88px); }
}

/* GAME-MENU-IMG(2026-10-15) · 태블릿 폭(600~1024)에서 4:3 이미지 타일이 과대해지는 것 방지 — 칸 폭 상한 160px(높이 120) · 묶음 가운데 정렬.
   구분선(border-top)은 .game_menu 전폭 그대로. */
@media (min-width: 600px) and (max-width: 1024px) {
    .game_menu { grid-template-columns: repeat(3, minmax(0, 160px)); justify-content: center; }
}

/* ══ TIFFANY-EXPAND(2026-10-17) · 국내형·스페셜 「모두보기 ▽ / 모두닫기 △」 — 보너스 안내 줄 우측 끝.
   모두보기(접힘 상태) = 채운 티파니 버튼 · 모두닫기(.on · 펼침 상태) = 외곽선 버튼. */
.bonus_bar { display: flex; align-items: center; gap: 10px; padding: 4px 2px 8px; }
.bonus_bar .bonus_notice { padding: 0; }
.expand_all {
    margin-left: auto; display: inline-flex; align-items: center; gap: 4px; white-space: nowrap;
    border: 1px solid var(--box); border-radius: 999px; padding: 3px 12px;
    background: var(--box); color: var(--ink); font-size: 12px; font-weight: 700; cursor: pointer;
}
.expand_all.on { background: rgba(10, 30, 28, .7); color: var(--box); border-color: rgba(129, 216, 208, .6); }

/* ══ TIFFANY-PANEL(2026-10-17) · cs 6화면(고객센터·마이페이지·쪽지·게시판·이벤트·공지) + 카지노·슬롯 = 판 배경(A안 · 머리까지 판 안).
   재질 = 우측 내정보 카드(.rt_user)와 동일(딥 틸 + 티파니 테두리 + 상단 리본) — 배경 이미지 위에서 버튼·표 줄이 묻히던 것 해소.
   머리(support_header page_header) = 판 윗단(얇은 구분선) · action_buttons 는 판 안쪽 여백만큼 안으로. */
.page_panel {
    position: relative; overflow: hidden; padding: 0 16px 16px;
    background: linear-gradient(160deg, #11312e 0%, #0a1b1a 70%);
    border: 1px solid rgba(129, 216, 208, .55); border-radius: 10px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 8px 22px rgba(0, 0, 0, .4);
}
.page_panel::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: linear-gradient(90deg, transparent, var(--ribbon) 50%, transparent); opacity: .7; z-index: 1; }
.page_panel > .support_header.page_header,
.page_panel > .support_container > .support_header.page_header {
    margin: 0 -16px 16px; padding: 12px 16px;
    border-bottom: 1px solid rgba(129, 216, 208, .22); background: rgba(129, 216, 208, .05);
}
.page_panel .support_header.page_header .action_buttons { right: 16px; }
@media (max-width: 1024px) {
    .page_panel { padding: 0 10px 12px; border-radius: 8px; }
    .page_panel > .support_header.page_header,
    .page_panel > .support_container > .support_header.page_header { margin: 0 -10px 12px; padding: 10px; }
    .page_panel .support_header.page_header .action_buttons { right: 10px; }
}

/* TIFFANY-PANEL 확장(2026-10-17 지시 · 일관성) — 쿠폰함·출석·룰렛·복권·포인트상점·페이백·충전/환전/내역·슬롯 게임 목록도 같은 판(.page_panel).
   충전·환전·내역: 판 안에서 안쪽 카드(charge_section_wrapper)의 판·테두리는 걷어 이중 테두리 방지 · 탭 막대만 옅은 띠로. */
.content_section.page_panel .support_tabs_container { background: rgba(0, 0, 0, .18); border-color: rgba(129, 216, 208, .22); border-radius: 8px 8px 0 0; }
.page_panel .charge_section_wrapper { background: transparent; border: 0; }
/* 배팅내역·결과·머니/포인트 내역(.bet_history_container.betlist_new — 머리 = history_header) = 같은 재질 · 머리 띠 동일 */
.bet_history_container.betlist_new {
    position: relative;
    background: linear-gradient(160deg, #11312e 0%, #0a1b1a 70%);
    border: 1px solid rgba(129, 216, 208, .55); border-radius: 10px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 8px 22px rgba(0, 0, 0, .4);
}
.bet_history_container.betlist_new > .history_header {
    margin: -10px -10px 10px; border-radius: 10px 10px 0 0;
    background: rgba(129, 216, 208, .05); border-bottom: 1px solid rgba(129, 216, 208, .22);
}

/* ══ INPLAY-ALL(2026-10-17) · /game/inplay 전부 펼침형 — 점수판(스페셜 헤더형) + /live 형 배당 행 5칸 · 「발매경기만」 스위치.
   범위 = .inplay_all(이 화면) 만. 마켓명·상태 = 한 줄(말줄임) · 진행 칸 = 2줄 고정 높이(잘림 없음). */
.inplay_all .sports_tab_container { position: relative; }
.inplay_all .btn_sports_tab.released_toggle {
    position: sticky; right: 0; margin-left: auto; min-width: 84px; gap: 6px; z-index: 2;
    background: #1d2b2a; border: 1px solid #2c3d3b; box-shadow: -10px 0 10px rgba(5, 16, 15, .9);
}
.inplay_all .released_toggle .sw { width: 30px; height: 16px; border-radius: 9px; background: #444; position: relative; flex: 0 0 auto; }
.inplay_all .released_toggle .sw::after { content: ""; position: absolute; top: 2px; left: 2px; width: 12px; height: 12px; border-radius: 50%; background: #bbb; transition: left .15s; }
.inplay_all .released_toggle.on { border-color: var(--box); }
.inplay_all .released_toggle.on .sw { background: #1f6b65; }
.inplay_all .released_toggle.on .sw::after { left: 16px; background: var(--box); }
.inplay_all .released_toggle.on .sport_name { color: var(--box); font-weight: 700; }

.inplay_all .live_fixture { margin: 8px 0; border: 1px solid #22403d; border-radius: 6px; background: rgba(8, 20, 19, .75); overflow: hidden; }
.inplay_all .live_score_row,
.inplay_all .live_odds_row { display: grid; grid-template-columns: 130px minmax(0, 1fr) 96px minmax(0, 1fr) 76px; gap: 4px; }
.inplay_all .live_score_row { padding: 6px; background: #142a28; border-bottom: 1px solid #22403d; }
.inplay_all .live_score_row > div { min-height: 46px; display: flex; align-items: center; border-radius: 4px; background: #1b3533; padding: 0 10px; min-width: 0; }
.inplay_all .score_prog { flex-direction: column; justify-content: center; white-space: nowrap; line-height: 1.25; padding: 4px 6px !important; }
.inplay_all .score_prog .prog_now { color: var(--box); font-weight: 700; font-size: 13px; }
.inplay_all .score_prog .prog_sport { color: #8fb5b1; font-size: 11px; }
.inplay_all .live_dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: #ff4d4f; margin-right: 5px; vertical-align: middle; animation: live_blink 1.2s infinite; }
@keyframes live_blink { 50% { opacity: .25; } }
.inplay_all .score_team { gap: 8px; font-weight: 700; color: #fff; }
.inplay_all .score_team .tname { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.inplay_all .score_team .pt { margin-left: auto; font-size: 20px; color: #fff; }
.inplay_all .score_team.away { justify-content: flex-end; }
.inplay_all .score_team.away .pt { margin-left: 0; margin-right: auto; }
.inplay_all .score_team .pt.lead { color: #f0c040; }
.inplay_all .score_sep { justify-content: center; color: #8fb5b1; }
.inplay_all .score_meta { justify-content: center; font-size: 11px; color: #8fb5b1; white-space: nowrap; }
.inplay_all .period_strip { display: flex; gap: 4px; flex-wrap: wrap; padding: 5px 8px; background: #11211f; border-bottom: 1px solid #22403d; font-size: 11px; color: #8fb5b1; }
.inplay_all .period_strip span { padding: 1px 7px; border-radius: 10px; background: #1b3533; white-space: nowrap; }
.inplay_all .period_strip span.now { background: #1f6b65; color: #fff; }
.inplay_all .suspend_bar { padding: 8px 12px; color: #f0a500; background: #2a2419; font-size: 12px; }
.inplay_all .odds_wait { padding: 10px 12px; color: #8fb5b1; font-size: 12px; }

.inplay_all .live_odds_list { padding: 4px 6px 6px; display: grid; gap: 4px; }
.inplay_all .market_name {
    display: block; height: 36px; line-height: 36px; padding: 0 6px; border-radius: 4px; text-align: center;
    background: #24384f; color: #fff; font-size: 12px; font-weight: 700;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0;
}
.inplay_all .market_name.kind_2 { background: #3b2f52; }
.inplay_all .market_name.kind_3 { background: #24443f; }
.inplay_all .market_name .row_lock { margin-right: 3px; }
.inplay_all .odds_cell {
    position: relative; height: 36px; border-radius: 4px; border: 1px solid transparent; background: #1f2f2e; color: #e7f4f2;
    display: flex; align-items: center; gap: 4px; padding: 0 10px; min-width: 0; cursor: pointer;
}
.inplay_all .odds_cell:hover:not(:disabled) { background: #284240; }
.inplay_all .odds_cell .side_name { color: #a9c4c1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.inplay_all .odds_cell .odds_val { margin-left: auto; font-weight: 700; white-space: nowrap; }
.inplay_all .odds_cell.away { justify-content: flex-end; }
.inplay_all .odds_cell.away .odds_val { margin-left: 0; margin-right: auto; }
.inplay_all .odds_cell.center { justify-content: center; font-weight: 700; color: #fff; }
.inplay_all .odds_cell.center .odds_val { margin: 0; }
.inplay_all .odds_cell.line { background: #18262a; cursor: default; }
.inplay_all .odds_cell.selected { border-color: var(--box); background: #1f6b65; }
.inplay_all .odds_cell.selected .side_name { color: #e6fffc; }
.inplay_all .odds_cell.odds_up .odds_val { color: #ff6b6b; }
.inplay_all .odds_cell.odds_down .odds_val { color: #5c9dff; }
.inplay_all .odds_cell:disabled { opacity: .5; cursor: not-allowed; }
.inplay_all .odds_cell .abs-handi { color: #e5534b; font-weight: 700; font-size: 11px; }
.inplay_all .sale_state { display: flex; align-items: center; justify-content: center; font-size: 11px; color: var(--box); white-space: nowrap; }
.inplay_all .sale_state.stop { color: #f0a500; }

@media (max-width: 1024px) {
    .inplay_all .live_score_row,
    .inplay_all .live_odds_row { grid-template-columns: 78px minmax(0, 1fr) 50px minmax(0, 1fr); gap: 3px; }
    .inplay_all .score_meta, .inplay_all .sale_state { display: none !important; }
    .inplay_all .score_team .team_logo_odds { display: none; }
    .inplay_all .live_score_row > div { min-height: 44px; padding: 0 6px; }
    .inplay_all .score_prog { padding: 3px 2px !important; }
    .inplay_all .score_prog .prog_now { font-size: 12px; }
    .inplay_all .score_prog .prog_sport { font-size: 10px; }
    .inplay_all .live_dot { width: 6px; height: 6px; margin-right: 3px; }
    .inplay_all .score_team { font-size: 12px; gap: 4px; }
    .inplay_all .score_team .pt { font-size: 18px; }
    .inplay_all .market_name { font-size: 10.5px; padding: 0 3px; letter-spacing: -.3px; height: 38px; line-height: 38px; }
    .inplay_all .odds_cell { height: 38px; padding: 0 6px; font-size: 12px; }
    .inplay_all .odds_cell .side_name { font-size: 11px; max-width: 54px; }
    .inplay_all .live_odds_list { padding: 4px; }
    .inplay_all .btn_sports_tab.released_toggle { min-width: 70px; }
}

/* INPLAY-ALL 보정(2026-10-17 지시) · 점수판 팀 로고 = 크로스(.odds_box .team_logo_odds)와 같은 18px 원형. */
.inplay_all .score_team .team_logo_odds { width: 18px; height: 18px; border-radius: 50%; object-fit: contain; background: #fff; flex: 0 0 auto; }

/* TIFFANY-CHIP(2026-10-17 지시) · 회원 페이지 상태 칩 = 모서리 2px(둥근 알약 → 각진 칩) · 「안읽음」 = 고객센터·쪽지 같은 정의 → 같은 파랑·같은 규격.
   고객센터 「대기중」은 안읽음(파랑)과 겹치지 않게 호박색(wait). */
.page_panel .badge_status { border-radius: 2px; }
.page_panel .badge_status.unread { background: #2366cb; }
.page_panel .badge_status.wait { background: #b7791f; }
/* 쪽지 행 삭제 = 금고 닫기(✕ · .safe_close) 형식 · 작은 행 크기 */
.page_panel .row_close {
    width: 28px; height: 28px; border: 0; border-radius: 4px; cursor: pointer;
    background: var(--app-bg-panel-2, #1c1c27); color: #cfd3d8; font-size: 13px; line-height: 28px; padding: 0;
}
.page_panel .row_close:hover { background: #2a3a39; color: #fff; }
.page_panel .row_close:disabled { opacity: .35; cursor: not-allowed; }

/* INPLAY-ALL 모바일 보정(2026-10-17 지시) · 마켓명이 잘려 「오버언더 - 2…」/「- 3…」 구분이 안 되던 것(2세트 대신 3세트 배팅 위험) →
   모바일은 마켓명 칸을 숨기고 같은 마켓 줄 묶음 위에 전체 이름 한 줄. PC 는 기존 5칸 그대로(묶음 머리 숨김). 이름 = 구간 먼저(2세트 오버언더). */
.inplay_all .market_group_head { display: none; }
@media (max-width: 1024px) {
    .inplay_all .market_group_head {
        display: block; margin-top: 4px; padding: 4px 8px; border-radius: 3px;
        background: #1b3533; color: #b2ebe6; font-size: 12px; font-weight: 700; white-space: normal; word-break: keep-all;
    }
    .inplay_all .market_group_head:first-child { margin-top: 0; }
    .inplay_all .live_odds_row { grid-template-columns: minmax(0, 1fr) 54px minmax(0, 1fr); }
    .inplay_all .live_odds_row .market_name { display: none; }
    .inplay_all .odds_cell .side_name { max-width: none; }
}

/* PERIOD-VIEW 모바일 · 경기 전체 마켓 묶음 머리 = 다른 색 + 「(경기 전체)」(구간 마켓과 구분). */
@media (max-width: 1024px) {
    .inplay_all .market_group_head.full { background: #24384f; color: #fff; }
}

/* KOREA-KIND(2026-10-17 지시) · 국내형 모바일 = 크로스와 같게 마켓명 줄(odds_kind) 숨김 — 승무패(무·VS) · 핸디캡(H·기준점) · 오버언더(▲▼·기준점)로 구분.
   sports.css 「모바일에서도 구분명 표시」(.odds_section .odds_group_special .odds_kind 되살림)는 스페셜용으로 유지 → 국내형만 다시 숨김. */
@media (max-width: 1024px) {
    .korea_list .odds_section .odds_group_special.basic_kind .odds_kind { display: none !important; }   /* 기본 3종만 숨김 · 하프타임/풀타임 등은 표시 */
}

/* ODDS-LINE(2026-10-17 지시) · 선택할 수 없는 가운데 칸 = 한 가지 색 — 기준점(핸디캡·오버언더)도 VS 칸과 같은 판(var(--app-bg-panel-2)).
   국내형·크로스·스페셜·실시간(.odds_box.center) + 인플레이(.odds_cell.center.line) 공통. hover 해도 그대로. */
.odds_box.center.handi,
.odds_box.center.overunder,
.odds_box.center.handi:hover,
.odds_box.center.overunder:hover,
.odds_box.center.vs:hover { background: var(--app-bg-panel-2); }   /* VS 도 hover 시 색 유지(구 = 본문색으로 바뀜) */
.inplay_all .odds_cell.center.line { background: var(--app-bg-panel-2); }

/* ODDS-H · 핸디캡 H 표시 = 차분한 초록(오버언더 ▲ 빨강 화살표와 구분) · 깜빡임 없음. */
.odds_box .abs-handi,
.inplay_all .odds_cell .abs-handi { color: #5fc98a; animation: none; }

/* INFO-ROW(2026-10-17 지시) · 스페셜 경기 정보 줄([날짜][홈][VS][원정] — 배당 없음 · 누르면 마켓 펼침)은 선택 칸이 아니라
   마우스를 올려도 판색·테두리가 바뀌지 않게(구 = 줄 전체 테두리 강조 + 칸 hover 판색). 클릭(펼침)은 그대로. */
.odds_group_special.info_row .odds_box,
.odds_group_special.info_row .odds_box:hover,
.odds_group_special.info_row:hover .odds_box { background: var(--ceo-sp-cell); border-color: var(--ceo-sp-line); }
.odds_group_special.info_row .odds_box.center,
.odds_group_special.info_row .odds_box.center:hover,
.odds_group_special.info_row:hover .odds_box.center { background: var(--app-bg-panel-2); border-color: var(--ceo-sp-line); }
