[data-theme="type2"] {
  /* =========================================
     1. Common Settings & Fonts
     ========================================= */
  /* Fonts skipped as per request */

  /* =========================================
     2. Dark Mode (Default)
     Based on Figma '1920w dark' Analysis
     ========================================= */

  /* Base Colors (Dark) */
  --background: #120a0a; /* Main App Background */
  --foreground: #ffffff; /* Primary Text */

  /* Brand Colors (Common) */
  --primary: #da0d40; /* Brand Green (Logo, Links, Accents) */
  --primary-foreground: #ffffff; /* Text on Primary */
  --primary-hover: #b80b36; /* Slightly lighter green */
  --primary-gradient-from: #f4476b;
  --primary-gradient-to: #da0d40;
  --primary-shadow: 0px 0px 12px 0px rgba(218, 13, 64, 0.3);
  --primary-inset-shadow: inset 0px -2px 0px 0px #b80b36;

  /* Status Colors (Common) */
  --destructive: #f43f5e; /* Danger/Error (from coin drop %) */
  --destructive-hover: #e11d48;
  --success-gradient-from: #05df72;
  --success-gradient-to: #00c950;
  --error: #f43f5e;

  /* Form Components (Dark) */
  --input-bg: #201717; /* Bg-Layer2 (Inputs) */
  --input-border: #373737; /* Bg-Layer3 (Borders) */
  --input-focus-border: #da0d40;
  --input-text: #ffffff;
  --input-placeholder: #99a1af; /* Text-Disabled */
  --input-disabled-bg: #201717;
  --input-disabled-text: #99a1af;

  --checkbox-bg: #201717;
  --checkbox-border: #373737;
  --checkbox-checked-bg: #da0d40;
  --checkbox-checked-border: #da0d40;
  --checkbox-checked-mark: #000000; /* source: Framelink 2628:15775 checked path fill */

  /* Table Colors (Dark) — source: Framelink 4067:6888 / 4008:8002 */
  --table-card-bg: #1d1212; /* source: Framelink 4067:6888 fills */
  --table-card-border: #3c2c2c; /* source: Framelink 4067:6888 strokes */
  --table-card-shadow: 0px 4px 6px 0px
    rgba(0, 0, 0, 0.3); /* source: Framelink 4067:6888 effects.boxShadow */
  --table-header-bg: #2b1c1e; /* source: Framelink 4067:6889 fills */
  --table-header-text: #ffffff; /* source: Framelink 4067:6891 fills */
  --table-body-text: #ffffff; /* source: Framelink 4067:6900 fills */
  --table-muted-text: rgba(
    255,
    255,
    255,
    0.5
  ); /* source: Framelink 4067:6898 fills */
  --table-cell-separator: rgba(
    255,
    255,
    255,
    0.2
  ); /* source: Framelink 4067:6892 strokes */
  --table-border: rgba(
    255,
    255,
    255,
    0.1
  ); /* source: Framelink 4067:6896 strokes */
  --table-row-hover: transparent; /* source: Framelink 4067:6896 fills absent */
  --table-row-even: transparent; /* source: Framelink 4067:6903 fills absent */

  /* DatePicker Specific (Dark) */
  --datepicker-bg: #201717;
  --datepicker-text: #ffffff;
  --datepicker-label: #99a1af; /* Text-Secondary */
  --datepicker-label-error: #f43f5e;

  /* UI Elements (Dark) */
  --card-bg: #1c1012; /* Footer, Sidebar */
  --card-border: #2f1d20;
  --muted-foreground: #99a1af; /* Text-Muted */
  --border: #373737;
  --ring: #da0d40;

  /* Dialog (Dark) */
  --dialog-bg: #201717;
  --dialog-border: #373737;
  --dialog-text: #ffffff;
  --skeleton-bg: #2b1c1e; /* 다이알로그/상세 스켈레톤 로딩 톤 (다크) */
  --warning: #ffc92f; /* 주의·경고 강조 (한도초과/점검 등) — 테마 골드 */

  /* Maintenance screen (점검중) — MaintenanceGuard 기존 녹색 디자인 토큰화(값 보존) */
  --maintenance-border: #8ce974;
  --maintenance-text: #23ff8a;
  --maintenance-text-muted: #c2f2cf;
  --maintenance-label-bg: #1a6355;

  /* Login Dialog — 구조 source: Figma 4115:13427, 색상은 type2 웜 팔레트 매핑(쿨→웜) */
  --login-dialog-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.3); /* Figma 4115:13427 effect 그대로(중립) */
  --login-inquiry-btn-bg: #4d4444; /* Figma EL-2877cc41 #3B4558(쿨 raised) → 웜 raised. --dialog-bg #201717 대비 확실히 밝게(Δ≈45) 해 버튼 식별 */

  /* Signup Dialog — structure source: Figma 4115:12827, colors mapped to type2 warm theme */
  --signup-dialog-bg: var(--dialog-bg); /* source: LoginDialog Dialog.Content bg var(--dialog-bg) */
  --signup-input-bg: var(--dialog-bg); /* LoginDialog 입력창과 동일색 #201717. ⚠️var(--input-bg) 금지: form 래퍼의 [--input-bg:var(--signup-input-bg)]와 순환참조→배경 transparent로 깨짐. 동일값 --dialog-bg로 우회 */
  --signup-tab-active-bg: var(--login-inquiry-btn-bg); /* source: LoginDialog inquiry button raised surface */
  --signup-tab-inactive-text: var(--muted-foreground); /* source: type2 muted text */
  --signup-muted-text: var(--muted-foreground); /* source: LoginDialog secondary text */
  --signup-action-gradient: linear-gradient(
    90deg,
    var(--primary-gradient-from) 0%,
    var(--primary-gradient-to) 100%
  ); /* source: LoginDialog gradient link + theme primary gradient */
  --signup-dialog-shadow: var(--login-dialog-shadow); /* source: LoginDialog Dialog.Content shadow */

  /* Guideline Section — structure source: Figma 2628:15736, colors mapped to type2 warm theme */
  --guideline-bg: linear-gradient(
    180deg,
    var(--card-bg) 0%,
    var(--background) 100%
  ); /* source: Framelink 2628:15736 fills gradient — stop0 rgba(25,15,15)≈--card-bg #1c1012 / stop100 rgba(19,11,11)≈--background #120a0a */
  --guideline-border: #272020; /* source: Framelink 2628:15736 strokes[0] */

  /* Transaction Amount Form (Deposit/Withdraw/PointExchange 공유) — source: Figma 2628:15741 */
  --amount-row-bg: #2b1c1e; /* source: Framelink fill_bad30bcc (InfoBox 행 배경) */
  --amount-value-bg: #1d1212; /* source: Framelink EL-6c8d2d60 fills (값 박스 배경) */
  --amount-accent: #d6942c; /* source: Framelink fill_5b2f3dfb (앰버 — 금액값/버튼 텍스트) */
  --amount-btn-bg: linear-gradient(
    270deg,
    rgba(79, 50, 5, 1) 0%,
    rgba(79, 36, 4, 1) 100%
  ); /* source: Framelink fill_e0d1f50a (빠른금액버튼 배경) */
  --amount-btn-border: #a66602; /* source: Framelink fill_0e1c89e0 (빠른금액버튼 테두리) */

  /* Deposit Form — source: Framelink 2628:15741 */
  --deposit-form-card-bg: linear-gradient(
    180deg,
    rgba(25, 15, 15, 1) 0%,
    rgba(19, 11, 11, 1) 100%
  ); /* source: Framelink 2628:15741 fills.gradient */
  --deposit-form-card-border: #272020; /* source: Framelink 2628:15741 strokes */
  --deposit-form-account-alert: #de3e41; /* source: Framelink 2628:15746 / 2628:15833 fills */
  --deposit-form-level-bg: #ff9422; /* source: Framelink 2628:15830 fills */
  --deposit-form-level-text: #000000; /* source: Framelink 2628:15831 / 2628:15832 fills */
  --deposit-form-submit-bg: linear-gradient(
      90deg,
      rgba(219, 25, 57, 1) 0%,
      rgba(217, 146, 12, 1) 100%
    ),
    #e35a20; /* source: Framelink 2628:15834 fills */
  --deposit-form-submit-text: #ffffff; /* source: Framelink 2628:15835 fills */

  /* Withdraw Form — source: Framelink 2635:8488 */
  --withdraw-form-card-bg: #1d1212; /* source: Framelink 2635:8488 fills */
  --withdraw-form-card-border: #3c2c2c; /* source: Framelink 2635:8488 strokes */
  --withdraw-form-submit-bg: linear-gradient(
      90deg,
      rgba(219, 25, 57, 1) 0%,
      rgba(217, 146, 12, 1) 100%
    ),
    #e35a20; /* source: Framelink 2635:8525 fills */
  --withdraw-form-submit-text: #ffffff; /* source: Framelink 2635:8526 fills */

  /* Point Exchange Form — source: Framelink 2635:9055 */
  --point-exchange-form-card-bg: #1d1212; /* source: Framelink 2635:9055 fills */
  --point-exchange-form-card-border: #3c2c2c; /* source: Framelink 2635:9055 strokes */
  --point-exchange-form-muted: #9ca1c2; /* source: Framelink 2635:9058 / 2635:9063 / 2635:9082 fills */
  --point-exchange-form-submit-bg: linear-gradient(
      90deg,
      rgba(219, 25, 57, 1) 0%,
      rgba(217, 146, 12, 1) 100%
    ),
    #e35a20; /* source: Framelink 2635:9110 fills */
  --point-exchange-form-submit-text: #ffffff; /* source: Framelink 2635:9111 fills */

  /* Withdraw Rolling Progress Cards — source: Framelink 2635:8395 */
  --withdraw-rolling-card-bg: #1d1212; /* source: Framelink 2635:8396 fills */
  --withdraw-rolling-card-border: #3c2c2c; /* source: Framelink 2635:8396 strokes / 2635:8405 progress track */
  --withdraw-rolling-muted: #9ca1c2; /* source: Framelink 2635:8401 / 2635:8408 / 2635:8419 fills */
  --withdraw-rolling-text: #ffffff; /* source: Framelink 2635:8403 fills */
  --withdraw-rolling-accent: #d6942c; /* source: Framelink 2635:8406 / 2635:8417 fills */
  --withdraw-rolling-record-bg: #2b1c1e; /* source: Framelink 2635:8414 fills */
  --withdraw-rolling-scroll-track: #331d1d; /* source: Framelink 2635:8482 fills */
  --withdraw-rolling-scroll-thumb: #da0d40; /* source: Framelink 2635:8483 fills */

  /* Main Page (Dark) */
  --main-hero-bg: #210b0d;
  --main-hero-border: #3c2c2c;
  --main-hero-eyebrow: #da0d40;
  --main-hero-title: #99a1af;
  --main-hero-text: #ffffff;
  --main-hero-text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);
  --main-hero-logo-image: url("/images/common/headerLogo.svg");
  --main-hero-side-gradient: linear-gradient(
    270deg,
    rgba(33, 11, 13, 1) 0%,
    rgba(33, 11, 13, 1) 30%,
    rgba(33, 11, 13, 0) 100%
  );
  --main-hero-bottom-gradient: linear-gradient(
    0deg,
    rgba(33, 11, 13, 1) 0%,
    rgba(33, 11, 13, 0) 100%
  );

  --main-quickmenu-bg: #221818;
  --main-quickmenu-gradient-from: #2b0b11;
  --main-quickmenu-gradient-via: #1e0c0f;
  --main-quickmenu-gradient-to: #130a0a;

  --main-game-card-bg: #3a0c14; /* Game Cards */
  --main-game-card-border: #4b1316;
  --main-game-overlay-from: rgba(33, 11, 13, 0);
  --main-game-overlay-to: #210b0d;
  --main-game-title-shadow: 0px 0px 20px rgba(0, 0, 0, 1);

  /* Subpage Title */
  --subpage-title-text: #ffffff; /* source: Framelink 2617:6380 fills #FFFFFF */
  --subpage-title-gradient: linear-gradient(
    90deg,
    #dc173b 0%,
    #d8900a 100%
  ); /* source: Framelink 2617:6381 fills linear-gradient(90deg, rgba(220,23,59,1) 0%, rgba(216,144,10,1) 100%) */
  --subpage-title-breadcrumb-text: #99a1af; /* source: Framelink 2617:6114 fills #99A1AF */
  --subpage-title-breadcrumb-current: #f43f5e; /* source: Framelink 2617:6116 fills #F43F5E */

  --main-provider-bg: #170d0e;
  /* Game provider action banners — source: Figma 48:5963 */
  --game-provider-action-banner-bg:
    url("data:image/svg+xml,%3Csvg viewBox='0 0 342.5 70' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'%3E%3Crect x='0' y='0' height='100%25' width='100%25' fill='url(%23grad)' opacity='0.699999988079071'/%3E%3Cdefs%3E%3CradialGradient id='grad' gradientUnits='userSpaceOnUse' cx='0' cy='0' r='10' gradientTransform='matrix(7.5471e-14 5.6875 -27.238 0.000039217 171.25 -4.375)'%3E%3Cstop stop-color='rgba(200,132,255,1)' offset='0'/%3E%3Cstop stop-color='rgba(156,80,204,0)' offset='1'/%3E%3C/radialGradient%3E%3C/defs%3E%3C/svg%3E"),
    linear-gradient(90deg, #1c1424 0%, #1c1424 100%);
  --game-provider-action-banner-bg-soft:
    url("data:image/svg+xml,%3Csvg viewBox='0 0 342.5 70' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'%3E%3Crect x='0' y='0' height='100%25' width='100%25' fill='url(%23grad)' opacity='0.5'/%3E%3Cdefs%3E%3CradialGradient id='grad' gradientUnits='userSpaceOnUse' cx='0' cy='0' r='10' gradientTransform='matrix(7.5471e-14 5.6875 -27.238 0.000039217 171.25 -4.375)'%3E%3Cstop stop-color='rgba(200,132,255,1)' offset='0'/%3E%3Cstop stop-color='rgba(156,80,204,0)' offset='1'/%3E%3C/radialGradient%3E%3C/defs%3E%3C/svg%3E"),
    linear-gradient(90deg, #1c1424 0%, #1c1424 100%);
  --game-provider-action-banner-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.5);
  --game-provider-action-banner-title: #cf93ff;
  --game-provider-action-banner-telegram: #29aaed;
  --game-provider-action-banner-title-base: #b8c1ff;
  --game-provider-action-banner-link: #ffffff;
  --game-provider-action-banner-title-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  --game-provider-action-banner-link-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.5);
  --game-provider-action-banner-bg-size: 100% 100%, 100% 100%;
  --game-provider-action-banner-bg-position: center top, center;

  /* Notice */
  --notice-overlay: rgba(0, 0, 0, 0.6);
  --notice-detail-card-bg: var(
    --table-card-bg
  ); /* source: Framelink 4067:7219 fills #1D1212 */
  --notice-detail-card-border: var(
    --table-card-border
  ); /* source: Framelink 4067:7219 strokes #3C2C2C */
  --notice-detail-card-shadow: var(
    --table-card-shadow
  ); /* source: Framelink 4067:7219 effects.boxShadow */
  --notice-detail-section-bg: var(
    --table-header-bg
  ); /* source: Framelink 4067:7225 / 4067:7228 fills #2B1C1E */
  --notice-detail-field-bg: var(
    --table-card-bg
  ); /* source: Framelink 4067:7226 / 4067:7229 fills #1D1212 */
  --notice-detail-heading-text: var(
    --foreground
  ); /* source: Framelink 4067:7222 fills #FFFFFF */
  --notice-detail-body-text: #9ca1c2; /* source: Framelink 4067:7227 / 4067:7230 fills */
  --notice-detail-button-bg: linear-gradient(
      90deg,
      rgba(219, 25, 57, 1) 0%,
      rgba(217, 146, 12, 1) 100%
    ),
    #e35a20; /* source: Framelink 4067:7232 fills */
  --notice-detail-button-text: var(
    --foreground
  ); /* source: Framelink 4067:7233 fills #FFFFFF */

  /* Event Card */
  --event-card-overlay-hover: rgba(0, 0, 0, 0.2);
  --event-card-gradient-from: rgba(0, 0, 0, 1);
  --event-card-gradient-via: rgba(0, 0, 0, 0.8);
  --event-card-gradient-to: rgba(0, 0, 0, 0);

  /* Event Page Tab Bar (공지사항/이벤트) */
  --event-tab-header-gradient: linear-gradient(
    90deg,
    rgba(44, 4, 12, 1) 0%,
    rgba(155, 22, 45, 1) 50%,
    rgba(44, 4, 12, 1) 100%
  ); /* source: Framelink 4068:8289 strokes GRADIENT_LINEAR */
  --event-tab-bg: #3a260e; /* source: Framelink 4068:8290 fill_3789be32 */
  --event-tab-active-border: #a66602; /* source: Framelink 4068:8292 strokes fill_0e1c89e0 */
  --event-tab-active-text: var(
    --foreground
  ); /* source: Framelink 4068:8293 fills #FFFFFF */
  --event-tab-inactive-text: #a66602; /* source: Framelink 4068:8291 fills fill_0e1c89e0 */

  /* Event Status Filter (진행중/종료) */
  --event-filter-active-bg: #46131c; /* source: Framelink 4068:8295 fills */
  --event-filter-active-border: #7f1428; /* source: Framelink 4068:8295 strokes 2px */
  --event-filter-active-text: #f43f5e; /* source: Framelink 4068:8296 fills */
  --event-filter-inactive-bg: #302020; /* source: Framelink 4068:8297 fills */
  --event-filter-inactive-border: #443636; /* source: Framelink 4068:8297 strokes 1px */
  --event-filter-inactive-text: #d1d5dc; /* source: Framelink 4068:8298 fills */

  /* Event Detail Dialog */
  --event-dialog-bg: #1d1212; /* source: Framelink 4068:8360 fills #1D1212 */
  --event-dialog-border: #3c2c2c; /* source: Framelink 4068:8360 strokes #3C2C2C 1px */

  /* Inquiry */
  --inquiry-overlay: rgba(0, 0, 0, 0.6);
  --inquiry-primary: #da0d40;
  --inquiry-primary-foreground: #ffffff;
  --inquiry-muted: #99a1af;
  --inquiry-border: #2f1d20;

  /* Inquiry Status Neon Badges (Dark) */
  --inquiry-status-unanswered: #ff4d6a; /* 네온 핑크-레드 */
  --inquiry-status-unanswered-bg: rgba(255, 77, 106, 0.12);
  --inquiry-status-unanswered-glow: 0 0 8px rgba(255, 77, 106, 0.6);
  --inquiry-status-answered: #00e5ff; /* 네온 시안 */
  --inquiry-status-answered-bg: rgba(0, 229, 255, 0.12);
  --inquiry-status-answered-glow: 0 0 8px rgba(0, 229, 255, 0.6);
  --inquiry-status-confirmed: #05df72; /* 네온 그린 */
  --inquiry-status-confirmed-bg: rgba(5, 223, 114, 0.12);
  --inquiry-status-confirmed-glow: 0 0 8px rgba(5, 223, 114, 0.6);
  --inquiry-list-status-answered: #5cb3ff; /* source: Framelink 4044:6687 fills #5CB3FF */
  --inquiry-list-status-unanswered: #ff6565; /* source: Framelink 4044:6831 fills #FF6565 */
  --inquiry-list-delete-bg: var(--message-delete-btn-bg); /* source: Framelink EL-03e5bb7a fills gradient 270deg + #E35A20 */
  --inquiry-list-delete-border: var(--message-delete-btn-border); /* source: Framelink EL-03e5bb7a strokes #A66602 */
  --inquiry-create-card-bg: #1d1212; /* source: Framelink 4051:8224 fills #1D1212 */
  --inquiry-create-card-border: #3c2c2c; /* source: Framelink 4051:8224 strokes #3C2C2C */
  --inquiry-create-card-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.3); /* source: Framelink 4051:8224 effects.boxShadow */
  --inquiry-create-row-bg: #2b1c1e; /* source: Framelink 4051:8225 / 4051:8229 / 4051:8233 fills #2B1C1E */
  --inquiry-create-field-bg: #1d1212; /* source: Framelink 4051:8227 / 4051:8231 / 4051:8236 fills #1D1212 */
  --inquiry-create-label: #9ca1c2; /* source: Framelink 4051:8226 / 4051:8230 / 4051:8234 fills #9CA1C2 */
  --inquiry-create-placeholder: #9ca1c2; /* source: Framelink 4051:8228 / 4051:8232 fills #9CA1C2 */
  --inquiry-create-muted: #d1d5dc; /* source: Framelink 4051:8239 fills #D1D5DC */
  --inquiry-create-accent: #ff9422; /* source: Framelink 4051:8239 ts1 fills #FF9422 */
  --inquiry-create-add-bg: #3a0c14; /* source: Framelink 4051:8237 fills #3A0C14 */
  --inquiry-create-add-border: #6b0f20; /* source: Framelink 4051:8237 strokes #6B0F20 */
  --inquiry-create-add-text: #f43f5e; /* source: Framelink 4051:8238 fills #F43F5E */
  --inquiry-attach-card-bg: #221818; /* source: Framelink 4051:8241 fills #221818 */
  --inquiry-attach-card-border: #3c2c2c; /* source: Framelink 4051:8241 strokes #3C2C2C */
  --inquiry-attach-type-text: #a66602; /* source: Framelink 4051:8243 fills #A66602 */
  --inquiry-attach-id-text: #ff9422; /* source: Framelink 4051:8248 fills #FF9422 */
  --inquiry-attach-main-text: #ffffff; /* source: Framelink 4051:8249 / 4051:8256 / 4051:8257 fills #FFFFFF */
  --inquiry-attach-status-bg: #343642; /* source: Framelink 4051:8250 fills #343642 */
  --inquiry-attach-status-text: #9ca1c2; /* source: Framelink 4051:8251 fills #9CA1C2 */
  --inquiry-attach-label-bg: rgba(255, 255, 255, 0.2); /* source: Framelink 4051:8255 fills rgba(255,255,255,0.2) */
  --inquiry-betting-dialog-bg: #1d1212; /* source: Framelink 4052:9526 fills #1D1212 */
  --inquiry-betting-dialog-border: #3c2c2c; /* source: Framelink 4052:9526 strokes #3C2C2C */
  --inquiry-betting-dialog-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.3); /* source: Framelink 4052:9526 effects.boxShadow */
  --inquiry-betting-dialog-text: #ffffff; /* source: Framelink 4052:9529 fills #FFFFFF */
  --inquiry-betting-dialog-tab-bg: #3a260e; /* source: Framelink 4052:9531 / 4052:9533 fills #3A260E */
  --inquiry-betting-dialog-tab-border: #a66602; /* source: Framelink 4052:9531 strokes #A66602 */
  --inquiry-betting-dialog-tab-muted: #a66602; /* source: Framelink 4052:9534 fills #A66602 */
  --inquiry-betting-dialog-date-active-bg: #46131c; /* source: Framelink 4052:9540 fills #46131C */
  --inquiry-betting-dialog-date-active-border: #7f1428; /* source: Framelink 4052:9540 strokes #7F1428 */
  --inquiry-betting-dialog-date-active-text: #f43f5e; /* source: Framelink 4052:9541 fills #F43F5E */
  --inquiry-betting-dialog-date-bg: #302020; /* source: Framelink 4052:9542 fills #302020 */
  --inquiry-betting-dialog-date-border: #443636; /* source: Framelink 4052:9542 strokes #443636 */
  --inquiry-betting-dialog-date-text: #d1d5dc; /* source: Framelink 4052:9543 fills #D1D5DC */
  --inquiry-betting-dialog-card-bg: #221818; /* source: Framelink 4052:9552 fills #221818 */
  --inquiry-betting-dialog-card-border: #3c2c2c; /* source: Framelink 4052:9552 strokes #3C2C2C */
  --inquiry-betting-dialog-checkbox-bg: #443636; /* source: Framelink 4052:9553 fills #443636 */
  --inquiry-betting-dialog-selected-bg: #2b1c1e; /* source: type2 warm elevated surface, aligned with Framelink 4051:8225 */
  --inquiry-betting-dialog-count-text: #d1d5dc; /* source: Framelink 4052:9624 fills #D1D5DC */
  --inquiry-betting-dialog-confirm-bg: linear-gradient(
      90deg,
      rgba(219, 25, 57, 1) 0%,
      rgba(217, 146, 12, 1) 100%
    ),
    #e35a20; /* source: Framelink 4052:9628 fills gradient + #E35A20 */

  /* Message */
  --message-overlay: rgba(0, 0, 0, 0.6);
  --message-primary: #da0d40;
  --message-primary-foreground: #ffffff;
  --message-border: #2f1d20;
  --message-status-read-text: #5cb3ff; /* source: Framelink 4053:9939 fills #5CB3FF (확인 텍스트) */
  --message-status-unread-text: #ff6565; /* source: Framelink 4053:9953 fills #FF6565 (미확인 텍스트) */
  --message-delete-btn-bg: linear-gradient(
      270deg,
      rgba(79, 50, 5, 1) 0%,
      rgba(79, 36, 4, 1) 100%
    ),
    #e35a20; /* source: Framelink EL-03e5bb7a fills gradient 270deg + #E35A20 */
  --message-delete-btn-border: #a66602; /* source: Framelink EL-03e5bb7a strokes #A66602 */
  --message-detail-label-text: #9ca1c2; /* source: Framelink fill_9db58bf4 4053:10410/10414/10418/10420 #9CA1C2 */

  /* MyPage */
  --mypage-primary: #da0d40;
  --mypage-primary-foreground: #ffffff;
  --mypage-border: #2f1d20;
  --mypage-section-bg: #210b0d;
  --mypage-identity-nickname: #ffffff; /* source: Framelink 2628:8838 fills */
  --mypage-identity-userid: #8c929e; /* source: Framelink 2628:8840 fills */
  --mypage-identity-level: #f43f5e; /* source: Framelink 2628:8842 fills */
  --mypage-summary-card-bg: linear-gradient(
      180deg,
      rgba(25, 15, 15, 1) 0%,
      rgba(19, 11, 11, 1) 100%
    ),
    #1b1515; /* source: Framelink 2628:8740 fills */
  --mypage-summary-card-border: #272020; /* source: Framelink 2628:8740 strokes */
  --mypage-summary-title: #ffffff; /* source: Framelink 2628:8742 fills */
  --mypage-summary-label: #6a7282; /* source: Framelink 2628:8745 / 2628:8759 fills */
  --mypage-summary-value: #ffffff; /* source: Framelink 2628:8746 fills */
  --mypage-summary-point-value: #fdc700; /* source: Framelink 2628:8760 fills */
  --mypage-summary-divider: #2a2120; /* source: Framelink 2628:8757 strokes */
  --mypage-summary-action-bg: #3a0c14; /* source: Framelink 2628:8748 / 2628:8752 / 2628:8762 fills */
  --mypage-summary-action-border: #6b0f20; /* source: Framelink 2628:8748 / 2628:8752 / 2628:8762 strokes */
  --mypage-summary-action-text: #f43f5e; /* source: Framelink 2628:8751 / 2628:8755 / 2628:8765 fills */
  --mypage-info-card-bg: linear-gradient(
      180deg,
      rgba(25, 15, 15, 1) 0%,
      rgba(19, 11, 11, 1) 100%
    ),
    #1b1515; /* source: Framelink 2628:8801 fills */
  --mypage-info-card-border: #272020; /* source: Framelink 2628:8801 strokes */
  --mypage-info-title: #ffffff; /* source: Framelink 2628:8803 fills */
  --mypage-info-row-bg: #261b1b; /* source: Framelink EL-eaa12fcf fills */
  --mypage-info-label: #6a7282; /* source: Framelink 2628:8807 / 2628:8810 / 2628:8820 fills */
  --mypage-info-value: #ffffff; /* source: Framelink 2628:8808 / 2628:8811 / 2628:8821 fills */
  --mypage-history-card-bg: linear-gradient(
      180deg,
      rgba(25, 15, 15, 1) 0%,
      rgba(19, 11, 11, 1) 100%
    ),
    #1b1515; /* source: Framelink 2628:8766 fills */
  --mypage-history-card-border: #272020; /* source: Framelink 2628:8766 strokes */
  --mypage-history-title: #ffffff; /* source: Framelink 2628:8769 fills */
  --mypage-history-tab-active-bg: #3a0c14; /* source: Framelink 2628:8771 fills */
  --mypage-history-tab-active-border: #6b0f20; /* source: Framelink 2628:8771 strokes */
  --mypage-history-tab-active-text: #f43f5e; /* source: Framelink 2628:8772 fills */
  --mypage-history-tab-inactive-bg: #1f1616; /* source: Framelink 2628:8773 fills */
  --mypage-history-tab-inactive-border: #352e2e; /* source: Framelink 2628:8773 strokes */
  --mypage-history-tab-inactive-text: #cfd3da; /* source: Framelink 2628:8774 fills */
  --mypage-history-header-bg: #261b1b; /* source: Framelink 2628:8775 fills */
  --mypage-history-row-border: #2a2120; /* source: Framelink EL-e62cbabf strokes */
  --mypage-history-text: #6a7282; /* source: Framelink 2628:8776 / 2628:8782 fills */
  --attendance-calendar-card-bg: #1d1212; /* source: Framelink 4005:4622 fills */
  --attendance-calendar-card-border: #3c2c2c; /* source: Framelink 4005:4622 strokes */
  --attendance-calendar-title: #ffffff; /* source: Framelink 4005:4807 fills */
  --attendance-calendar-weekday: #9ca1c2; /* source: Framelink 4005:4794 fills */
  --attendance-calendar-day-bg: #2b1c1e; /* source: Framelink EL-6a430c78 fills */
  --attendance-calendar-day-muted: rgba(
    255,
    255,
    255,
    0.3
  ); /* source: Framelink 4005:4626 / 4005:4629 fills */
  --attendance-calendar-icon-on: #d6942c; /* source: Framelink 4005:4760 fills */
  --attendance-calendar-icon-off: rgba(
    255,
    255,
    255,
    0.3
  ); /* source: Framelink 4005:4629 fills */
  --attendance-info-card-bg: #1d1212; /* source: Framelink 4005:4581 fills */
  --attendance-info-card-border: #3c2c2c; /* source: Framelink 4005:4581 strokes */
  --attendance-info-muted: #9ca1c2; /* source: Framelink 4005:4582 / 4005:4588 fills */
  --attendance-info-title: #ffffff; /* source: Framelink 4005:4585 / 4005:4593 fills */
  --attendance-info-panel-bg: #2b1c1e; /* source: Framelink 4005:4583 fills */
  --attendance-info-accent: #d6942c; /* source: Framelink 4005:4591 fills */
  --attendance-info-chevron-mark: #080808; /* source: Framelink 4005:4588 SVG path fill */

  /* Common Radius */
  --radius: 4px;

  /* Button Theme */
  --button-font-family: "Montserrat", var(--font-geist-sans); /* source: user button theme spec */
  --button-transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1); /* source: user button theme spec */
  --button-hover-scale: 1.05; /* source: user button theme spec */

  --button-radius-sm: 8px; /* source: user button theme spec */
  --button-radius-md: 12px; /* source: user button theme spec */
  --button-radius-lg: 16px; /* source: user button theme spec */
  --button-radius-full: 9999px; /* source: user button theme spec */

  --button-text-primary: #ffffff; /* source: user button theme spec */
  --button-text-inverse: #000000; /* source: user button theme spec */
  --button-text-muted: #9ca3af; /* source: user button theme spec */

  --tenant-primary: rgb(220, 20, 60); /* source: source-site --tenant-primary */
  --tenant-accent: rgb(217, 147, 10); /* source: source-site --tenant-accent */
  --button-brand-crimson: var(--tenant-primary); /* source: source-site --tenant-primary */
  --button-brand-amber: var(--tenant-accent); /* source: source-site --tenant-accent */
  --button-primary-gradient: linear-gradient(
    to right,
    var(--tenant-primary),
    var(--tenant-accent)
  ); /* source: source-site .btn-tenant-primary */
  --button-primary-text: #000000; /* source: user button theme spec */
  --button-primary-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1),
    0px 4px 6px -4px rgba(0, 0, 0, 0.1); /* source: Tailwind shadow-lg */
  --button-primary-hover-shadow: 0px 20px 40px -12px rgba(220, 20, 60, 0.45),
    0px 10px 24px -16px rgba(217, 147, 10, 0.55); /* source: user glow spec colors */
  --button-primary-glow: 0px 0px 20px 0px rgba(220, 20, 60, 0.4),
    0px 0px 36px 0px rgba(217, 147, 10, 0.3); /* source: user glow spec colors */

  --button-outline-bg: transparent; /* source: user button theme spec */
  --button-outline-border: rgba(255, 255, 255, 0.2); /* source: user button theme spec */
  --button-outline-hover-bg: rgba(255, 255, 255, 0.1); /* source: user button theme spec */
  --button-outline-text: #ffffff; /* source: user button theme spec */

  --button-glass-bg: rgba(255, 255, 255, 0.05); /* source: user button theme spec */
  --button-glass-border: rgba(255, 255, 255, 0.1); /* source: user button theme spec */
  --button-glass-hover-bg: rgba(255, 255, 255, 0.1); /* source: user button theme spec */
  --button-glass-text: #ffffff; /* source: user button theme spec */

  --button-fifa-gradient: linear-gradient(
    to right,
    #facc15,
    #f59e0b,
    #facc15
  ); /* source: user button theme spec */
  --button-fifa-text: #ffffff; /* source: user button theme spec */
  --button-fifa-glow: 0px 0px 20px 0px rgba(250, 204, 21, 0.48),
    0px 0px 36px 0px rgba(245, 158, 11, 0.36); /* source: user button theme spec */
  --button-fifa-card-gradient: linear-gradient(
    to right,
    rgba(234, 179, 8, 0.15),
    rgba(245, 158, 11, 0.1)
  ); /* source: user button theme spec */
  --button-fifa-card-hover-gradient: linear-gradient(
    to right,
    rgba(234, 179, 8, 0.25),
    rgba(245, 158, 11, 0.18)
  ); /* source: user button theme spec */
  --button-fifa-card-border: rgba(234, 179, 8, 0.3); /* source: user button theme spec */
  --button-fifa-card-text: #ffffff; /* source: user button theme spec */

  --button-hero-padding-y: 16px; /* source: user button theme spec */
  --button-hero-padding-x: 32px; /* source: user button theme spec */
  --button-hero-font-size: 18px; /* source: user button theme spec */
  --button-hero-font-weight: 700; /* source: user button theme spec */
  --button-hero-shadow: 0px 25px 50px -12px rgba(0, 0, 0, 0.25); /* source: Tailwind shadow-2xl */

  --button-worldcup-gradient: linear-gradient(
    to right,
    rgb(52, 211, 153),
    rgb(6, 182, 212)
  ); /* source: user button theme spec */
  --button-worldcup-text: #000000; /* source: user button theme spec */
  --button-top4-gradient: linear-gradient(
    135deg,
    rgb(120, 53, 15),
    rgb(146, 64, 14),
    rgb(180, 83, 9)
  ); /* source: user button theme spec */
  --button-top4-text: #ffffff; /* source: user button theme spec */
  --button-bonus-gradient: linear-gradient(
    to right,
    var(--tenant-primary),
    var(--tenant-accent)
  ); /* source: source-site .btn-tenant-primary */
  --button-bonus-text: #000000; /* source: user button theme spec */

  --button-carousel-size: 32px; /* source: user button theme spec */
  --button-carousel-bg: rgba(255, 255, 255, 0.05); /* source: user button theme spec */
  --button-carousel-border: rgba(255, 255, 255, 0.1); /* source: user button theme spec */
  --button-carousel-text: #9ca3af; /* source: user button theme spec */
  --button-carousel-hover-bg: rgba(255, 255, 255, 0.1); /* source: user button theme spec */
  --button-carousel-hover-text: #ffffff; /* source: user button theme spec */

  --button-dot-size: 8px; /* source: user button theme spec */
  --button-dot-active-width: 16px; /* source: user button theme spec */
  --button-dot-bg: rgba(255, 255, 255, 0.2); /* source: user button theme spec */
  --button-dot-active-bg: #34d399; /* source: user button theme spec */

  --button-card-padding: 16px; /* source: user button theme spec */
  --button-card-bg: rgba(17, 24, 39, 0.9); /* source: user button theme spec */
  --button-card-hover-bg: rgba(31, 41, 55, 0.9); /* source: user button theme spec */
  --button-card-border: rgba(255, 255, 255, 0.1); /* source: user button theme spec */
  --button-card-text: #ffffff; /* source: user button theme spec */
  --button-card-backdrop-filter: blur(12px); /* source: user button theme spec */

  --button-header-padding-y: 8px; /* source: user button theme spec */
  --button-header-padding-x: 16px; /* source: user button theme spec */
  --button-header-cta-padding-y: 10px; /* source: user button theme spec */
  --button-header-cta-padding-x: 20px; /* source: user button theme spec */
  --button-language-padding-y: 8px; /* source: user button theme spec */
  --button-language-padding-x: 12px; /* source: user button theme spec */
  --button-icon-padding: 10px; /* source: user button theme spec */
  --button-bottom-nav-padding-y: 6px; /* source: user button theme spec */
  --button-bottom-nav-padding-x: 12px; /* source: user button theme spec */
  --button-bottom-nav-active: rgb(220, 20, 60); /* source: user button theme spec */

  /* Main Surfaces (Dark) */
  --main-surface-1: #323738;
  --main-surface-2: #3a4142;
  --main-surface-3: #353c3d;
  --main-overlay-weak: rgba(0, 0, 0, 0.1);
  --main-icon-bg: rgba(255, 255, 255, 0.08);
  --main-icon-border: rgba(255, 255, 255, 0.1);
  --glass-bg: rgba(255, 255, 255, 0.048);
  --glass-border: rgba(255, 255, 255, 0.1);

  /* Quick Menu Gradients (Dark) */
  --quickmenu-hero1-gradient:
    linear-gradient(270deg, #2c5040 0%, rgba(44, 80, 64, 0) 75%), #323738;
  --quickmenu-hero1-accent: #5ff0d3;

  --quickmenu-hero2-gradient:
    linear-gradient(270deg, #582e59 0%, rgba(88, 46, 89, 0) 75%), #323738;
  --quickmenu-hero2-accent: #cfa5e6;

  --quickmenu-slot-gradient:
    linear-gradient(
      270deg,
      rgba(39, 232, 187, 0.2) 0%,
      rgba(39, 232, 187, 0) 75%
    ),
    #323738;
  --quickmenu-slot-accent: #5ff0d3;

  --quickmenu-popular-gradient:
    linear-gradient(270deg, #504130 0%, rgba(80, 65, 48, 0) 75%), #323738;
  --quickmenu-popular-accent: #ffd477;

  --quickmenu-recent-gradient:
    linear-gradient(270deg, #425330 0%, rgba(66, 83, 48, 0) 75%), #323738;
  --quickmenu-recent-accent: #d4f7cc;

  /* Main Carousel (Dark) */
  --main-carousel-card-bg: linear-gradient(180deg, #3c3f43 0%, #1f2023 100%);
  --main-carousel-overlay: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.1) 0%,
    rgba(0, 0, 0, 0.2) 50%,
    rgba(0, 0, 0, 0.4) 100%
  );
  /* source: Figma 6025:9029 text-white */
  --main-casino-title: #ffffff;
  /* source: Figma 6025:9031 bg-[#1e2531] */
  --main-casino-action-bg: #1e2531;
  /* source: Figma 6025:9032 text-[#99a1af] */
  --main-casino-action-text: #99a1af;
  /* source: Figma 6025:9043 border-[#2f3b4e] */
  --main-casino-card-border: #2f3b4e;
  /* source: Figma 6025:9039 border-[#da0d40] */
  --main-casino-active-border: #da0d40;
  /* source: Figma 6025:9039 no boxShadow effect */
  --main-casino-active-shadow: none;
  /* source: Framelink 4078:8807 fill #D9930A */
  --main-casino-active-text: #d9930a;
  --main-slot-title: #ffffff; /* source: Framelink 6025:9104 fills */
  --main-slot-action-bg: #1e2531; /* source: Framelink 6025:9106 fills */
  --main-slot-action-text: #99a1af; /* source: Framelink 6025:9107 fills */
  --main-slot-card-border: #373737; /* source: Framelink 6025:9115 strokes */
  /* source: Framelink 4078:8695 fills gradient 135deg */
  --market-card-bg: linear-gradient(135deg, #2b0b11 0%, #130a0a 100%);
  /* source: Framelink 4078:8695 strokes */
  --market-card-border: #332020;
  --market-card-header-bg: rgba(0, 0, 0, 0.5);
  --market-card-header-border: rgba(218, 13, 64, 0.2);
  --market-card-header-border-gradient: linear-gradient(
    90deg,
    rgba(218, 13, 64, 0.2) 0%,
    rgba(218, 13, 64, 1) 50%,
    rgba(218, 13, 64, 0.2) 100%
  );
  --market-card-header-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.5);
  --market-card-header-ellipse: radial-gradient(
    84% 140% at 50% 100%,
    rgba(218, 13, 64, 0.28) 0%,
    rgba(218, 13, 64, 0.16) 36%,
    rgba(218, 13, 64, 0) 74%
  );
  /* 피그마 원본: fill rgba(140,233,116,0.5) + blur(90px) */
  --market-card-header-ellipse-color: rgba(218, 13, 64, 0.5);
  --market-card-overlay: linear-gradient(
    180deg,
    rgba(49, 49, 49, 0.5) 6%,
    rgba(38, 53, 34, 0.5) 60%
  );
  --market-card-button-bg: rgba(0, 0, 0, 0.3);
  --market-card-region: #8f8f8f;
  /* source: Framelink 4078:8721 fills fill_b0a7574b */
  --market-card-label: #afafaf;
  /* source: Framelink 4078:8719 fills — 홈 버튼 배경 */
  --market-card-button-home-bg: #3a0c14;
  /* source: Framelink 4078:8722 fills — 무 버튼 배경 */
  --market-card-button-draw-bg: #2e1f1f;
  /* source: Framelink 4078:8725 fills — 어웨이 버튼 배경 */
  --market-card-button-away-bg: #39250a;
  /* source: Framelink 4078:8720 fills — 홈 배당 */
  --market-card-odds-home: #f43f5e;
  /* source: Framelink 4078:8723 fills — 무 배당 */
  --market-card-odds-draw: #c4c6cc;
  /* source: Framelink 4078:8726 fills — 어웨이 배당 */
  --market-card-odds-away: #e2ac20;
  /* source: Framelink 4078:8702 fills — LIVE 뱃지 배경 */
  --market-card-live-bg: #4b1316;
  /* source: Framelink 4078:8702 strokes — LIVE 뱃지 테두리 */
  --market-card-live-border: #7f191f;
  /* source: Framelink 4078:8703 fills — LIVE 점 */
  --market-card-live-dot: #ae2128;
  /* source: Framelink 4078:8704 fills — LIVE 텍스트 */
  --market-card-live-text: #f96164;
  /* source: Framelink 4078:8705 fills — 날짜 텍스트 */
  --market-card-date-text: #bc3149;
  /* source: Framelink 4078:8706 fills — 시간 텍스트 */
  --market-card-time-text: #78859c;
  /* source: Framelink 4078:8713 fills — vs/스코어 텍스트 */
  --market-card-vs-text: #6b6b6b;
  /* 팀 로고 원형 — 밝은 프로스티드 글래스 (은은한 대각선 광택)
     어두운 카드 위에서도 진한 로고가 보이도록 밝게 유지하되, 위→아래로
     살짝 옅어지는 그라디언트로 글래스 질감을 준다. */
  --market-card-team-logo-bg: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.96) 0%,
    rgba(255, 255, 255, 0.82) 55%,
    rgba(255, 255, 255, 0.68) 100%
  );
  /* source: Framelink 4078:8688 fill_e8198cef (SPORTS GAMES 타이틀 + 경기 전체 목록 버튼) */
  --markets-carousel-title-gradient: linear-gradient(
    90deg,
    #fec700 0%,
    #fd9c02 51%,
    #ffe792 100%
  );

  /* Quick Links (메인 바로가기 6종) — source: Framelink 6025:9152 */
  /* theme-aligned: 웜 다크 카드 배경 — 기존 --topmenu-button-bg #201717(=--card-bg #1c1012 한 단계 위 elevated 표면). 원본 Figma #1E2531(쿨 네이비)에서 교체 */
  --quick-link-bg: #201717;
  /* source: 6025:9154 / 6025:9164 strokes absent — 카드 테두리 없음 */
  --quick-link-border: transparent;
  /* source: 6025:9154 / 6025:9164 hover state absent — 강조 테두리 없음 */
  --quick-link-border-active: transparent;
  /* source: 6025:9156 / 6025:9166 fills empty — 아이콘 박스 투명 */
  --quick-link-icon-bg: transparent;
  /* source: 6025:9156 / 6025:9166 effects absent — 아이콘 글로우 없음 */
  --quick-link-icon-glow: none;
  /* theme-aligned: --text-secondary / --muted-foreground #99a1af 와 통일. 원본 Figma #78859C에서 교체 */
  --quick-link-subtext: #99a1af;
  /* theme-aligned: 브랜드 크림슨 --primary / --text-accent #da0d40. 원본 Figma #F43F5E(로즈)에서 교체 */
  --quick-link-action: #da0d40;

  /* Top Menu (Dark) */
  --topmenu-bg: #120a0a; /* source: BET8 --topmenu-bg */
  --topmenu-button-bg: #201717; /* source: BET8 --topmenu-button-bg */
  --topmenu-button-hover: #2a1e1e; /* source: BET8 --topmenu-button-hover */
  --topmenu-time-text: #fb2c36; /* source: Framelink 4001:6610 Header Top time fill */
  --topmenu-link-accent: #d98b0d; /* source: Framelink 4001:6610 Header Top deposit/withdraw fill */
  --topmenu-link-muted: #99a1af; /* source: BET8 --text-secondary */
  --topmenu-pill-bg: #201717; /* source: BET8 --topmenu-button-bg */
  --topmenu-pill-border: #362e2e; /* source: Framelink 4001:6610 value/logout pill stroke */
  --topmenu-pill-text: #ffffff; /* source: BET8 --foreground */
  --topmenu-badge-bg: #f43f5e; /* source: BET8 --destructive */
  --topmenu-badge-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3); /* source: Framelink 6006:5968 effect_7GJ41S */
  --topmenu-icon-muted: #99a1af; /* source: BET8 --text-secondary */
  --topmenu-avatar-bg: #201717; /* source: BET8 --input-bg */
  --topmenu-avatar-border: #373737; /* source: BET8 --border */

  /* Layout Colors (Dark) */
  --header-bg: #221818; /* Bg-Layer2 (Header) */
  --header-bg-md: #120a0a;
  --header-glass-bg: rgba(32, 23, 23, 0.8);
  --header-border: #2f1d20;
  --header-nav-border: #321f1f;
  --header-glass-shadow:
    0px 12px 32px 0px rgba(0, 0, 0, 0.22),
    inset 0px 1px 0px rgba(255, 255, 255, 0.04);
  --header-ellipse: radial-gradient(
    50% 140% at 50% 0%,
    rgba(218, 13, 64, 0.28) 0%,
    rgba(218, 13, 64, 0.16) 34%,
    rgba(218, 13, 64, 0) 74%
  );
  --header-overlay: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0.06) 0%,
    rgba(255, 255, 255, 0) 68%
  );
  --header-balance-pill-bg: rgba(0, 0, 0, 0.7);
  --header-balance-pill-hover-bg: rgba(0, 0, 0, 0.82);
  --header-balance-pill-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.5);
  --header-balance-pill-currency: rgba(255, 255, 255, 0.5);
  --header-level-button-bg:
    linear-gradient(
      180deg,
      rgba(218, 13, 64, 0.16) 0%,
      rgba(218, 13, 64, 0.08) 100%
    ),
    rgba(0, 0, 0, 0.62);
  --header-level-button-hover-bg:
    linear-gradient(
      180deg,
      rgba(218, 13, 64, 0.24) 0%,
      rgba(218, 13, 64, 0.14) 100%
    ),
    rgba(0, 0, 0, 0.74);
  --header-user-pill-bg:
    linear-gradient(
      135deg,
      rgba(218, 13, 64, 0.28) 0%,
      rgba(218, 13, 64, 0.18) 52%,
      rgba(255, 255, 255, 0.06) 100%
    ),
    rgba(30, 33, 33, 0.82);
  --header-user-pill-text: #ffffff;
  --header-user-pill-shadow:
    0px 0px 18px 0px rgba(218, 13, 64, 0.16),
    inset 0px 1px 0px rgba(255, 255, 255, 0.06);
  --header-balance-icon-shadow: 0px 0px 14px 0px rgba(218, 13, 64, 0.28);
  --header-balance-dialog-bg: rgba(32, 23, 23, 0.92);
  --header-balance-dialog-border: #2f1d20;
  --header-balance-dialog-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 1);
  --header-balance-dialog-secondary-button-bg: rgba(0, 0, 0, 0.3);
  --header-telegram-button-bg: #0088cc;
  --header-telegram-button-hover-bg: #006fa6;
  --header-telegram-button-shadow: 0px 0px 20px 0px rgba(47, 186, 255, 0.28);
  --header-tether-button-bg:
    linear-gradient(
      135deg,
      rgba(218, 13, 64, 0.24) 0%,
      rgba(218, 13, 64, 0.12) 58%,
      rgba(255, 255, 255, 0.04) 100%
    ),
    rgba(30, 33, 33, 0.84);
  --header-tether-button-hover-bg:
    linear-gradient(
      135deg,
      rgba(218, 13, 64, 0.3) 0%,
      rgba(218, 13, 64, 0.18) 58%,
      rgba(255, 255, 255, 0.08) 100%
    ),
    rgba(30, 33, 33, 0.92);
  --header-tether-button-border: rgba(218, 13, 64, 0.28);
  --header-tether-button-text: #e8ffe5;
  --header-tether-button-shadow:
    0px 10px 24px 0px rgba(218, 13, 64, 0.12),
    inset 0px 1px 0px rgba(255, 255, 255, 0.08);
  --header-tether-button-hover-shadow:
    0px 14px 28px 0px rgba(218, 13, 64, 0.18),
    inset 0px 1px 0px rgba(255, 255, 255, 0.12);

  --sidebar-bg: #120a0a;
  --sidebar-tab-bg: #201717;
  --sidebar-tab-hover: #2a1e1e;
  --mobile-sidebar-overlay: rgba(0, 0, 0, 0.8); /* source: Framelink 2634:6497 fills */
  --mobile-sidebar-content-bg: #000000; /* source: Framelink 2634:6508 / 2634:6638 fills */
  --mobile-sidebar-logo-shadow: 4px 8px 10px rgba(0, 0, 0, 0.5); /* source: Framelink 2634:6561 effects.boxShadow */
  --mobile-sidebar-action-gradient: linear-gradient(
    90deg,
    #fec700 0%,
    #fd9c02 51%,
    #ffe792 100%
  ); /* source: Framelink EL-8ef5bc40 fills.gradient */
  --mobile-sidebar-action-text: #000000; /* source: Framelink 2634:6504 / 2634:6507 fills */
  --mobile-sidebar-action-icon: rgba(0, 0, 0, 0.5); /* source: Framelink fill_5db237a5 */
  --mobile-sidebar-action-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1); /* source: Framelink EL-8ef5bc40 effects.boxShadow */
  --mobile-sidebar-game-bg: linear-gradient(
    135deg,
    #2b0b11 0%,
    #130a0a 100%
  ); /* source: Framelink EL-1546e377 fills.gradient */
  --mobile-sidebar-game-border: #332020; /* source: Framelink EL-1546e377 strokes */
  --mobile-sidebar-game-text: #ffffff; /* source: Framelink 2634:6535 fills */
  --mobile-sidebar-info-bg: #4b1316; /* source: Framelink EL-e4d77d91 fills */
  --mobile-sidebar-info-text: #f96164; /* source: Framelink fill_c58e2a34 */
  --mobile-sidebar-auth-actions-bg: #171717; /* user request: dark gray auth action strip */
  --mobile-sidebar-auth-action-bg: #262626; /* user request: dark gray auth action button */
  --mobile-sidebar-auth-action-border: #373737; /* user request: dark gray auth action border */
  --mobile-sidebar-auth-action-text: #ffffff; /* user request: auth action label */
  --mobile-sidebar-auth-action-icon: #99a1af; /* user request: muted auth action icon */

  --content-bg: #120a0a;
  --content-section-bg: #210b0d;
  --content-border: #2f1d20;

  /* Text Colors (Dark) */
  --text-primary: #ffffff;
  --text-secondary: #99a1af; /* Body Text */
  --text-accent: #da0d40; /* VIP Gold / Warning */
  --text-danger: #f43f5e;

  /* Pagination (Dark) */
  --pagination-item-bg: #3a260e; /* source: Framelink 4044:6840 / 4044:6846 fills #3A260E */
  --pagination-text: #a66602; /* source: Framelink 4044:6847 fills #A66602 */
  --pagination-active-bg: #a66602; /* source: Framelink 4044:6844 fills #A66602 */
  --pagination-active-text: #ffffff; /* source: Framelink 4044:6845 fills #FFFFFF */
  --pagination-hover-bg: #3a260e; /* source: Framelink 4044:6846 static inactive fills #3A260E */

  /* Scrollbar (Dark) — source: Figma 4133:10213 SVG (track #331D1D / thumb #DA0D40, full 8px, pill) */
  --scrollbar-size: 8px;
  --scrollbar-radius: 99px; /* source: Framelink 4133:10213 borderRadius=99px (SVG rx=4 = pill) */
  --scrollbar-track: #331d1d; /* source: SVG rect[0] fill=#331D1D */
  --scrollbar-thumb: var(--primary); /* source: SVG rect[1] fill=#DA0D40 == --primary */
  --scrollbar-thumb-hover: var(
    --primary-gradient-from
  ); /* Figma 정적 export hover 미정의 → 일관성 보정: 밝은 크림슨 #f4476b */

  /* Betting Components (only unique values not covered by existing vars) */
  --betting-button-bg: #595964;
  --betting-button-hover: #6e6e7a;
  --betting-text-highlight: #ffc92f;
  --betting-text-label: #617aa2;
  --betting-cart-bg: #120a0a; /* source: Framelink 4007:6322 fill_40b31c6b */
  --betting-cart-border: #3c2c2c; /* source: Framelink 4007:6322 fill_6d1c4d39 */
  --betting-cart-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 1); /* source: Framelink 4007:6322 effects.boxShadow */
  --betting-cart-title: #ffffff; /* source: Framelink I4007:6322;2618:7969 fill_658ab2fa */
  --betting-cart-muted: #9a9aa7; /* source: Framelink I4007:6322;2618:7976 fills */
  --betting-cart-badge-bg: linear-gradient(
    270deg,
    rgba(79, 50, 5, 1) 0%,
    rgba(79, 36, 4, 1) 100%
  ); /* source: Framelink I4007:6322;2618:7970 gradient */
  --betting-cart-badge-border: #a66602; /* source: Framelink fill_0e1c89e0 */
  --betting-cart-match-text: #cdcdcd; /* source: Framelink EL-98f71011 fills */
  --betting-cart-vs-text: #606060; /* source: Framelink ts2 fills */
  --betting-cart-market-text: #3589ff; /* source: Framelink ts3 fills */
  --betting-cart-team-text: #e33f3f; /* source: Framelink ts4 fills */
  --betting-cart-warning-bg: #201717; /* source: Framelink EL-d5f9c39b fills */
  --betting-cart-warning-border: #362e2e; /* source: Framelink EL-d5f9c39b strokes */
  --betting-cart-warning-text: #926868; /* source: Framelink fill_1ca61653 */
  --betting-cart-warning-chip-bg: #482929; /* source: Framelink I4007:6322;2618:8080 fills */
  --betting-cart-odds-old: #cecece; /* source: Framelink fill_b154bbe2 */
  --betting-cart-odds-up-bg: #b41f22; /* source: Framelink I4007:6322;2618:8097 fills */
  --betting-cart-odds-down-bg: #1287e7; /* source: Framelink I4007:6322;2618:8118 fills */
  --betting-cart-amount-bg: #322323; /* source: Framelink I4007:6322;2618:8170 fills */
  --betting-cart-amount-button-bg: linear-gradient(
    270deg,
    rgba(79, 50, 5, 1) 0%,
    rgba(79, 36, 4, 1) 100%
  ); /* source: Framelink fill_00d18bd4 gradient */
  --betting-cart-amount-button-border: #a66602; /* source: Framelink fill_0e1c89e0 */
  --betting-cart-amount-button-text: #d6942c; /* source: Framelink fill_5b2f3dfb */
  --betting-cart-submit-bg: linear-gradient(
    90deg,
    rgba(219, 25, 57, 1) 0%,
    rgba(217, 146, 12, 1) 100%
  ); /* source: Framelink I4007:6322;2618:8208 first gradient */
  --betting-cart-value-text: #ffc92f; /* source: Framelink EL-2b090562 fills */
  --minigame-cart-option-bg: #302020; /* source: Framelink 4008:7922 fills */
  --minigame-cart-badge-player-bg: #242c3b; /* source: Framelink 4008:7923 fills */
  --minigame-cart-badge-player-border: #2e4e85; /* source: Framelink 4008:7923 strokes */
  --minigame-cart-badge-player-text: #3b82f6; /* source: Framelink 4008:7924 fills */
  --minigame-cart-badge-banker-bg: #362629; /* source: Framelink 4008:7927 fills */
  --minigame-cart-badge-banker-border: #803133; /* source: Framelink 4008:7927 strokes */
  --minigame-cart-badge-banker-text: #ef4444; /* source: Framelink 4008:7928 fills */
  --minigame-cart-badge-tie-bg: #223730; /* source: Framelink 4008:7931 fills */
  --minigame-cart-badge-tie-border: #4c7d4a; /* source: Framelink 4008:7931 strokes */
  --minigame-cart-badge-tie-text: #ffffff; /* source: Framelink 4008:7932 fills */

  /* Bonus Selector */
  --bonus-btn-inactive-bg: #304038;
  --bonus-btn-active-sub-label: #1d7046;

  /* Odds Direction */
  --odds-up: #ff4d4f;
  --odds-down: #2d6bff;
  --odds-neutral: #a0aec0;
  --odds-indicator-down: #2469ff;
  --odds-indicator-icon: #1e2121;

  /* Options Panel */
  --options-panel-header-bg: #2b1c1e; /* source: Framelink 4007:6249 fills #2B1C1E */
  --options-panel-header-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.5); /* source: Framelink 4007:6249 effects.boxShadow */
  --options-header-badge-bg: #482929; /* source: Framelink 4007:6251 fills #482929 */
  --options-tab-inactive-border: #3c2c2c; /* source: Framelink 4007:6273/EL-b9aafa75 strokes #3C2C2C */
  --options-tab-active-gradient: linear-gradient(
    90deg,
    rgba(184, 11, 54, 1) 0%,
    rgba(218, 13, 64, 1) 39%,
    rgba(184, 11, 54, 1) 100%
  ); /* 카테고리 탭 활성 그라디언트 테두리 */
  --options-tab-bg: transparent; /* source: Framelink 4007:6248 has no filter-tab fill layer */
  --options-tab-active-bg: transparent; /* source: Framelink 4007:6248 has no filter-tab fill layer */
  --options-tab-active-border: #a66602; /* source: Framelink 4007:6270 strokes #A66602 */
  --options-tab-text: #ffffff; /* source: Framelink 4007:6271 fills #FFFFFF */
  --options-selection-bg: #1e1212; /* source: Framelink EL-b9aafa75 fills #1E1212 */
  --options-selection-border: #3c2c2c; /* source: Framelink EL-b9aafa75 strokes #3C2C2C */
  --options-selection-active-bg: #3a260e; /* source: Framelink 4007:6270 fills #3A260E */
  --options-selection-active-border: #a66602; /* source: Framelink 4007:6270 strokes #A66602 */
  --options-selection-team: #ffffff; /* source: Framelink 4007:6271/6274/6277 fills #FFFFFF */
  --options-selection-price-home: #00d5be; /* source: Framelink EL-69d770cc fills #00D5BE */
  --options-selection-price-draw: #05df72; /* source: Framelink 4007:6275 fills #05DF72 */
  --options-selection-price-away: #c27aff; /* source: Framelink EL-1a892a71 fills #C27AFF */
  --options-section-title: #a66602; /* source: Framelink 4007:6268/6280 fills #A66602 */
  --handicap-positive: #ff4949; /* source: Framelink 4007:6285 fills #FF4949 */
  --handicap-negative: #48d7ff; /* source: Framelink 4007:6290 fills #48D7FF */
  --options-match-vs: #99a1af; /* source: Framelink 4007:6259 fills #99A1AF */
  --options-match-time: rgba(255, 255, 255, 0.5); /* source: Framelink 4007:6257/6258 fills rgba(255,255,255,0.5) */
  --options-header-glow: radial-gradient(
    ellipse 100% 80% at 50% 0%,
    rgba(218, 13, 64, 0.15) 0%,
    rgba(218, 13, 64, 0.06) 40%,
    rgba(218, 13, 64, 0) 100%
  ); /* 매치 헤더 그린 글로우 */
  --options-header-badge-text: #ffffff; /* source: Framelink 4007:6254 fills #FFFFFF */
  --options-header-divider: rgba(255, 255, 255, 0.1); /* source: Framelink 4007:6266 strokes rgba(255,255,255,0.1) */
  --options-header-competition: #a66602; /* source: Framelink 4007:6256 fills #A66602 */
  --options-market-count-active: #a66602; /* source: Framelink 4007:6268 fills #A66602 */
  --sports-score-panel-overlay: linear-gradient(
    180deg,
    rgba(112, 5, 11, 0.08) 0%,
    rgba(181, 3, 6, 0.24) 100%
  );
  --sports-score-panel-bottom-overlay: linear-gradient(
    180deg,
    rgba(181, 3, 6, 0) 34%,
    rgba(108, 13, 18, 0.42) 100%
  );
  --sports-score-panel-border: rgba(255, 255, 255, 0.28);
  --sports-score-panel-cell-bg: rgba(255, 255, 255, 0.2);
  --sports-score-panel-cell-border: rgba(255, 255, 255, 0.2);
  --sports-score-panel-badge-bg: rgba(30, 54, 70, 0.46);
  --sports-score-panel-badge-border: rgba(214, 232, 244, 0.22);
  --sports-score-panel-badge-shadow:
    0px 14px 30px 0px rgba(5, 11, 16, 0.26),
    inset 0px 1px 0px rgba(255, 255, 255, 0.16);
  --sports-score-panel-badge-text: #f4fbff;
  --sports-score-panel-chip-bg: rgba(21, 39, 51, 0.34);
  --sports-score-panel-chip-border: rgba(214, 232, 244, 0.18);
  --sports-score-panel-chip-shadow:
    0px 14px 32px 0px rgba(4, 9, 14, 0.24),
    inset 0px 1px 0px rgba(255, 255, 255, 0.14);
  --sports-score-panel-chip-label: #c4d7e2;
  --sports-score-panel-chip-value: #ffffff;
  --sports-score-panel-score-text: #ffffff;
  --sports-score-panel-label-text: #ffffff;
  --sports-score-panel-card-icon-border: rgba(14, 22, 29, 0.38);
  --sports-score-panel-card-icon-shadow: 0px 6px 14px 0px rgba(3, 7, 11, 0.28);
  --sports-score-panel-yellow-card: #f5dc4a;
  --sports-score-panel-red-card: #d73b41;
  --sports-score-panel-indicator-active: #da0d40;
  --sports-score-panel-indicator-border: rgba(214, 232, 244, 0.26);

  /* Banner */
  --banner-accent: #2fbaff;

  /* Signup/Auth */
  --auth-step-complete: #79d324;
  --auth-step-active: #6c2da6;
  --auth-step-active-ring: rgba(108, 45, 166, 0.3);

  /* Games (only unique values) */
  --games-active: #ff4d4d;
  --games-filter-shell-bg: linear-gradient(
    180deg,
    color-mix(in srgb, var(--content-bg) 96%, transparent) 0%,
    color-mix(in srgb, var(--content-bg) 86%, transparent) 76%,
    color-mix(in srgb, var(--content-bg) 0%, transparent) 100%
  );
  --games-filter-shell-border: color-mix(
    in srgb,
    var(--text-primary) 5%,
    transparent
  );
  --games-filter-tab-active-bg: #3a260e; /* source: Framelink 2617:5975 fills fill_3789be32 */
  --games-filter-tab-active-border: #ffffff; /* source: Framelink 2617:5975 strokes fill_658ab2fa */
  --games-filter-tab-active-text: #ffffff; /* source: Framelink 2617:5976 fills fill_658ab2fa */
  --games-filter-tab-active-shadow: none; /* source: Framelink 2617:5975 effects absent */
  --games-filter-tab-bg: #3a260e; /* source: Framelink EL-be9cf189 fills fill_3789be32 */
  --games-filter-tab-border: #3a260e; /* source: Framelink EL-be9cf189 strokes absent, border matched to fill */
  --games-filter-tab-hover-border: #ffffff; /* source: Framelink 2617:5975 strokes fill_658ab2fa */
  --games-filter-tab-text: #e2ac20; /* source: Framelink 2617:6403 fills fill_6dd5b1bf */
  --games-filter-tab-shadow: none; /* source: Framelink EL-be9cf189 effects absent */
  --minigame-brand-tabs-border-gradient: linear-gradient(
    90deg,
    rgba(44, 4, 12, 1) 0%,
    rgba(155, 22, 45, 1) 50%,
    rgba(44, 4, 12, 1) 100%
  ); /* source: Framelink 4008:7984 strokes gradient */
  --minigame-brand-tab-bg: #3a260e; /* source: Framelink 4008:7985 fills fill_3789be32 */
  --minigame-brand-tab-active-border: #a66602; /* source: Framelink 4008:7985 strokes fill_0e1c89e0 */
  --minigame-brand-tab-active-text: #ffffff; /* source: Framelink 4008:7986 fills */
  --minigame-brand-tab-inactive-text: #a66602; /* source: Framelink 4008:7988 fills fill_0e1c89e0 */
  --minigame-subtab-active-bg: #46131c; /* source: Framelink 4008:7992 fills */
  --minigame-subtab-active-border: #7f1428; /* source: Framelink 4008:7992 strokes */
  --minigame-subtab-active-text: #f43f5e; /* source: Framelink 4008:7993 fills */
  --minigame-subtab-bg: #302020; /* source: Framelink EL-ad8aa94b fills */
  --minigame-subtab-border: #443636; /* source: Framelink EL-ad8aa94b strokes */
  --minigame-subtab-text: #d1d5dc; /* source: Framelink fill_2749f572 */
  --minigame-bet-history-card-bg: #1d1212; /* source: Framelink 4008:8002 fills */
  --minigame-bet-history-card-border: #3c2c2c; /* source: Framelink 4008:8002 strokes */
  --minigame-bet-history-card-shadow: 0px 4px 6px 0px
    rgba(0, 0, 0, 0.3); /* source: Framelink 4008:8002 effects.boxShadow */
  --minigame-bet-history-title: #9ca1c2; /* source: Framelink 4008:8010 fills */
  --minigame-bet-history-refresh-bg: linear-gradient(
      270deg,
      rgba(79, 50, 5, 1) 0%,
      rgba(79, 36, 4, 1) 100%
    ),
    #e35a20; /* source: Framelink 4008:8012 fills */
  --minigame-bet-history-refresh-border: #a66602; /* source: Framelink 4008:8012 strokes */
  --minigame-bet-history-refresh-text: rgba(
    255,
    255,
    255,
    0.5
  ); /* source: Framelink 4008:8016 fills + opacity */
  --minigame-bet-history-header-bg: #2b1c1e; /* source: Framelink 4008:8017 fills */
  --minigame-bet-history-header-text: #99a1af; /* source: Framelink fill_50c0b19e */
  --minigame-bet-history-cell-separator: rgba(
    255,
    255,
    255,
    0.2
  ); /* source: Framelink EL-6a5e6ee9 strokes */
  --minigame-bet-history-row-border: rgba(
    255,
    255,
    255,
    0.1
  ); /* source: Framelink EL-49ded211 strokes */
  --minigame-bet-history-row-muted: rgba(
    255,
    255,
    255,
    0.5
  ); /* source: Framelink EL-6b9328b4 fills */
  --minigame-bet-history-row-text: #99a1af; /* source: Framelink EL-b0cd994f fills */
  --minigame-bet-history-win-text: #5cb3ff; /* source: Framelink 4008:8038 fills */
  --minigame-bet-history-lose-text: #ff6565; /* source: Framelink EL-2cd51623 fills */
  --bet365-subtab-bg: var(--sport-tab-bg); /* source: type2 theme --sport-tab-bg */
  --bet365-subtab-border: var(--sport-tab-container-border); /* source: type2 theme --sport-tab-container-border */
  --bet365-subtab-text: var(--sport-tab-count); /* source: type2 theme --sport-tab-count */
  --bet365-subtab-active-bg: color-mix(
    in srgb,
    var(--success-gradient-to) 18%,
    var(--sport-tab-bg)
  ); /* source: type2 theme --success-gradient-to + --sport-tab-bg */
  --bet365-subtab-active-border: var(--success-gradient-from); /* source: type2 theme --success-gradient-from */
  --bet365-subtab-active-text: var(--success-gradient-from); /* source: type2 theme --success-gradient-from */
  --bet365-subtab-hover-border: var(--success-gradient-to); /* source: type2 theme --success-gradient-to */
  --bet365-subtab-hover-text: var(--success-gradient-from); /* source: type2 theme --success-gradient-from */
  --games-filter-input-bg: var(--input-bg);
  --games-filter-input-border: var(--input-border);
  --games-filter-input-text: var(--input-text);
  --games-filter-input-placeholder: var(--input-placeholder);
  --games-filter-input-icon: var(--input-placeholder);
  --games-filter-input-shadow: 0px 0px 20px 0px
    color-mix(in srgb, var(--background) 40%, transparent);
  --games-filter-input-focus-shadow: 0px 0px 24px 0px
    color-mix(in srgb, var(--primary) 18%, transparent);

  /* Sidebar */
  --sidebar-badge-bg: #353b46;

  /* Sidebar Banner Brand Colors */
  --sidebar-banner-pragmatic-text: #f9d9bd;
  --sidebar-banner-pragmatic-accent: #f7941e;
  --sidebar-banner-dot-text: #03f682;
  --sidebar-banner-dot-accent: #def3e0;

  /* Icons */
  --icon-user-online: #a3e635;

  /* Casino Icons */
  --casino-icon-stroke: #ff3b3b;
  --casino-icon-gradient-start: #ff6b6b;
  --casino-icon-gradient-mid: #ff2222;
  --casino-icon-gradient-end: #d10000;

  /* Event Card Colors */
  --event-signup: #ffe5cc;
  --event-deposit: #e5f3ff;
  --event-attendance: #e5ffe5;
  --event-referral: #ffe5f3;
  --event-casino: #f3e5ff;
  --event-sports: #ffffe5;
  --event-vip: #ffe5e5;
  --event-slot: #e5ffff;
  --event-loyalty: #f0ffe5;
  --event-birthday: #ffe5f0;
  --event-cashback: #e5f0ff;
  --event-special: #ffe5b3;
  --event-mobile: #b3ffe5;
  --event-live: #e5b3ff;
  --event-lottery: #ffb3e5;
  --event-tutorial: #b3e5ff;
  --event-login: #ffffb3;
  --event-seasonal: #ffb3b3;
  --event-levelup: #b3ffb3;
  --event-survey: #b3b3ff;
  --event-default: #d9d9d9;
  --event-text: #333333;

  /* Toast Colors */
  --toast-icon-bg: #1a1f2e;
  --toast-success-from: #22c55e;
  --toast-success-to: #4ade80;
  --toast-warning-from: #f59e0b;
  --toast-warning-to: #fcd34d;
  --toast-info-from: #3b82f6;
  --toast-info-to: #60a5fa;
  --toast-muted-from: #6b7280;
  --toast-muted-to: #9ca3af;

  /* Coupon Card */
  --coupon-bg: #323738;
  --coupon-bg-disabled: #252828;
  --coupon-border: #464f50;
  --coupon-badge-bg: #464f50;
  --coupon-accent: #da0d40;

  /* Coupon Game Type Colors */
  --coupon-color-all: #464f50;
  --coupon-color-casino: #ffe074;
  --coupon-color-slot: #37acff;
  --coupon-color-sports: #70ff57;
  --coupon-color-minigame: #ff787a;

  /* Coupon Card v2 (Framelink 4069:9437 쿠폰 페이지) */
  --coupon-card-bg: #1d1212; /* source: Framelink EL-183b6251 fills #1D1212 */
  --coupon-card-border: #3c2c2c; /* source: Framelink EL-183b6251 strokes #3C2C2C */
  --coupon-avail-label: #9ca1c2; /* source: Framelink 4069:9442 fills #9CA1C2 */
  --coupon-avail-count: #b10a1c; /* source: Framelink 4069:9442 ts1 fills #B10A1C */
  --coupon-register-bg: linear-gradient(
    270deg,
    rgba(79, 50, 5, 1) 0%,
    rgba(79, 36, 4, 1) 100%
  ); /* source: Framelink 4069:9444 fills gradient */
  --coupon-register-border: #a66602; /* source: Framelink 4069:9444 strokes fill_0e1c89e0 #A66602 */
  --coupon-expiry-text: #a66602; /* source: Framelink EL-d7b522a4 fills fill_0e1c89e0 #A66602 */
  --coupon-expiry-time: #d79b3d; /* source: Framelink EL-d7b522a4 ts3 fills #D79B3D */
  --coupon-btn-action: #000000; /* source: Framelink 4069:9461 ts4 fills #000000 */
  --coupon-type-sports: linear-gradient(
    90deg,
    rgba(253, 153, 0, 1) 0%,
    rgba(255, 105, 0, 1) 100%
  ); /* source: Framelink fill_36f5355c / 4069:9459 fills */
  --coupon-type-minigame: linear-gradient(
    90deg,
    rgba(142, 78, 255, 1) 0%,
    rgba(152, 19, 250, 1) 100%
  ); /* source: Framelink fill_7c26fb63 / 4069:9472 fills */
  --coupon-type-casino: linear-gradient(
    90deg,
    rgba(175, 71, 255, 1) 0%,
    rgba(243, 54, 159, 1) 100%
  ); /* source: Framelink fill_c2e3abc4 / 4069:9485 fills */
  --coupon-type-all: linear-gradient(
    90deg,
    rgba(7, 196, 80, 1) 0%,
    rgba(189, 30, 60, 1) 100%
  ); /* source: Framelink 4069:9498 fills gradient */

  /* Betting History Card v2 (Framelink 4005:4845 스포츠 베팅내역) */
  --bet-card-bg: #1d1212; /* source: Framelink 4005:4845 fills #1D1212 */
  --bet-card-border: #3c2c2c; /* source: Framelink fill_6d1c4d39 #3C2C2C */
  --bet-ticket-number: #ff9422; /* source: Framelink 4005:4856 fills #FF9422 */
  --bet-status-hit: #5cb3ff; /* source: Framelink fill_b7b3b969 #5CB3FF */
  --bet-status-miss: #ff6565; /* source: Framelink EL-2cd51623 fills #FF6565 */
  --bet-table-header-bg: #2b1c1e; /* source: Framelink 4005:4868 fills #2B1C1E */
  --bet-match-badge-bg: #343642; /* source: Framelink 4005:4866 fills #343642 */
  --bet-match-badge-text: #9ca1c2; /* source: Framelink 4005:4867 fills #9CA1C2 */
  --bet-summary-bar-bg: #221818; /* source: Framelink 4005:4973 fills #221818 */
  --bet-summary-badge-bg: rgba(255, 255, 255, 0.2); /* source: Framelink fill_5a1a324a EL-560a7be9 fills */
  --bet-type-pre: #3cfff5; /* source: Framelink EL-36aca7a5 fills #3CFFF5 */
  --bet-timestamp: #a8a8a8; /* source: Framelink fill_f808fe9e #A8A8A8 */
  --bet-cell-border: rgba(255, 255, 255, 0.2); /* source: Framelink fill_5a1a324a 헤더셀 좌측 구분선 */
  --bet-row-border: rgba(255, 255, 255, 0.1); /* source: Framelink EL-49ded211 strokes 데이터행 하단선 */
  --bet-delete-btn-bg: linear-gradient(
    270deg,
    rgba(79, 50, 5, 1) 0%,
    rgba(79, 36, 4, 1) 100%
  ); /* source: Framelink 4005:4860 fills GRADIENT_LINEAR */
  --bet-delete-btn-border: #a66602; /* source: Framelink 4005:4860 strokes #A66602 */

  /* Minigame Bet Colors */
  --bet-blue: #3b82f6;
  --bet-red: #ef4444;

  /* Sports Tab Colors (9-color cycle by display order) */
  --sport-tab-container-bg: #17181b;
  --sport-tab-container-border: #3c4041;
  --sport-tab-bg: #1e2121;
  --sport-tab-all-border: #3c4041;
  --sport-tab-count: #b3bec1;
  --sport-tab-label: #6b7475;
  --sport-tab-active-border: #49713f;
  --sport-tab-active-text: #da0d40;
  --sport-tab-active-shadow:
    0px 0px 10px 0px rgba(218, 13, 64, 0.3),
    inset 0px 0px 20px 0px rgba(218, 13, 64, 0.2);
  --sport-tab-color-1: #32d6ff;
  --sport-tab-color-2: #5479ff;
  --sport-tab-color-3: #a941ff;
  --sport-tab-color-4: #ff76df;
  --sport-tab-color-5: #ff5053;
  --sport-tab-color-6: #ffb14c;
  --sport-tab-color-7: #d5ff4c;
  --sport-tab-color-8: #4cff52;
  --sport-tab-color-9: #ffffff;

  /* Sports Filter Bar V2 Colors */
  --filter-v2-sort-active: #05df72; /* source: Framelink 2625:3596 fills #05DF72 */
  --filter-v2-sort-inactive: #62697b; /* source: Framelink 2625:3609 fills #62697B */
  --filter-v2-search-bg: #191212; /* source: Framelink 2625:3610 fills #191212 */
  --filter-v2-search-border: #2e2727; /* source: Framelink 2625:3610 strokes #2E2727 */
  --filter-v2-search-placeholder: #62697b; /* source: Framelink 2625:3613 fills #62697B */
  --sports-filter-select-bg: #16341e; /* source: Framelink EL-c6055bbc fills #16341E */
  --sports-filter-select-text: #05df72; /* source: Framelink 2625:3581 / 2625:3585 fills #05DF72 */

  /* Sports Tab V2 Colors */
  --sport-tab-v2-wrap-bg: #222535;
  --sport-tab-v2-label: #9ca1c2;
  --sport-tab-v2-count: #9ca1c2;
  --sport-tab-v2-active-text: #ffffff;
  --sport-tab-v2-active-bg: #da0d40;
  --sport-tab-v2-active-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);

  /* Sports Tab Bar (Framelink 2625:3551 종목 탭) */
  --sport-tab-bar-bottom-border: linear-gradient(
    90deg,
    rgba(44, 4, 12, 1) 0%,
    rgba(155, 22, 45, 1) 50%,
    rgba(44, 4, 12, 1) 100%
  ); /* source: Framelink 2625:3551 strokes gradient */
  --sport-tab-bar-btn-bg: #3a260e; /* source: Framelink fill_3789be32 #3A260E */
  --sport-tab-bar-active-border: #a66602; /* source: Framelink 2625:3553 strokes #A66602 */
  --sport-tab-bar-text: #d1d5dc; /* source: Framelink fill_2749f572 #D1D5DC */
  --sport-tab-bar-active-text: #ffffff; /* source: Framelink 2625:3554 fills #FFFFFF */

  /* League Quick Tabs (Framelink 2625:3614 리그 선택 pill) */
  --league-tab-btn-bg: #302020; /* source: Framelink EL-bb06b194 fills fill_cc3a1b34 #302020 */
  --league-tab-btn-border: #443636; /* source: Framelink EL-bb06b194 strokes #443636 */
  --league-tab-active-bg: #46131c; /* source: Framelink 2625:3619 fills #46131C */
  --league-tab-active-border: #7f1428; /* source: Framelink 2625:3619 strokes #7F1428 */
  --league-tab-active-text: #f43f5e; /* source: Framelink 2625:3619 text fills #F43F5E */

  /* SubTitle Component */
  --subtitle-bar-color: rgba(43, 139, 69, 1);
  --subtitle-bar-glow: rgba(43, 139, 69, 0.4);
  --subtitle-watermark: #14301d;

  /* Sports Group Header */
  --sport-group-bg: #1e2121;
  --sport-group-bg-from: rgba(0, 0, 0, 1);
  --sport-group-bg-to: rgba(17, 17, 17, 1);
  --sport-group-border-from: #24ee89;
  --sport-group-border-via: #0088ff;
  --sport-group-border-to: #24ee89;
  --sport-group-shadow: 0px 4px 0px 0px rgba(0, 0, 0, 0.2);
  --sport-group-radius: 5px;
  --sport-group-country: #fff264;
  --sport-group-league: #21b9ff;
  --sport-group-separator: #838383;
  --sport-group-badge-bg: #1f362c;
  --sport-group-badge-text: #24ee71;
  --sports-list-toolbar-active: #ffffff;
  --sports-list-toolbar-inactive: #767676;
  --sports-list-toolbar-accent: #3cfff5;
  /* Figma 2625:3063 / 2626:4595 sports list shell */
  --sports-list-outer-bg: #120a0a;
  --sports-list-outer-border: #3c2c2c;
  --sports-list-shell-bg: linear-gradient(
    -90deg,
    rgba(34, 16, 18, 1) 0%,
    rgba(29, 18, 18, 1) 100%
  );
  --sports-list-shell-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 1);
  --sports-asian-group-bg: #262b2d;
  --sports-asian-group-text: #ffffff;
  --sports-asian-group-meta: #9aa2a4;
  --sports-asian-row-bg: #2d3234;
  --sports-asian-row-divider: #3c4243;
  --sports-asian-team-text: #ffffff;
  --sports-asian-center-text: #d7d7d7;
  --sports-asian-handicap-indicator: #eaff00;
  --sports-list-group-bg: #2b1c1e;
  --sports-list-group-border: #3c2c2c;
  --sports-list-group-ellipse: none;
  --sports-list-group-label: #ffffff;
  /* Figma 2626:4614 market header */
  --sports-market-header-bg: #2b1c1e;
  --sports-market-header-border: #3c2c2c;
  --sports-market-header-text: #a66602;
  /* Figma 2626:4619 / 2626:4622 cross market row */
  --sports-cross-market-time-text: rgba(255, 255, 255, 0.5);
  --sports-cross-market-cell-bg: #1e1212;
  --sports-cross-market-cell-border: #3c2c2c;
  --sports-cross-market-odds-text: #a66602;
  --sports-cross-market-team-text: #ffffff;
  --sports-cross-market-active-bg: linear-gradient(
    270deg,
    rgba(79, 50, 5, 1) 0%,
    rgba(79, 36, 4, 1) 100%
  );
  --sports-cross-market-active-border: #a66602;
  --sports-cross-market-active-text: #ffffff;
  --sports-cross-market-bet-bg: #2b1c1e;
  --sports-list-row-divider: rgba(255, 255, 255, 0.1);
  --sports-list-row-meta: rgba(255, 255, 255, 0.5);
  --sports-list-row-cell-bg: #1e1212;
  --sports-list-row-cell-active-border: #358985;
  --sports-list-row-cell-active-bg: #358985;
  --sports-list-row-more-bg: #2b1c1e;
  --sports-list-row-icon-bg: #2b1c1e;
  --sports-list-row-icon-text: #dfe7ea;
  --sports-live-period-text: #3cfff5;
  --sports-live-score: #4dbbff;
  --sports-live-score-diff: #ffea00;
  /* Figma 4166:10214 live sports row */
  --sports-live-score-gradient: linear-gradient(
    90deg,
    rgba(220, 23, 59, 1) 0%,
    rgba(216, 144, 10, 1) 100%
  );
  --sports-live-score-vs: #99a1af;
  --sports-live-market-cell-bg: #221012;
  --sports-live-odds-home: #00d5be;
  --sports-live-odds-draw: #05df72;
  --sports-live-odds-away: #c27aff;
  --sports-live-more-active-bg: #3a260e;
  /* Figma 4168:10301 lock overlay */
  --sports-lock-overlay-bg: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.5) 0%,
    rgba(0, 0, 0, 1) 100%
  ); /* source: SVG export 4168:10301 paint2_linear_2609_288 */
  --sports-lock-overlay-border: rgba(
    60,
    44,
    44,
    0.5
  ); /* source: SVG export 4168:10301 Rectangle 7566 stroke #3C2C2C opacity 0.5 */
  --sports-lock-icon-bg: #a66602; /* source: SVG export 4168:10301 lock rect fill #A66602 */
  --sports-lock-icon-fg: #000000; /* source: SVG export 4168:10301 lock vector fill black */
  --sports-lock-hidden-pattern: repeating-linear-gradient(
    135deg,
    transparent,
    transparent 4px,
    rgba(128, 128, 128, 0.35) 4px,
    rgba(128, 128, 128, 0.35) 6px
  ); /* source: existing hidden overlay pattern moved from component style */
  --sports-upcoming-started-overlay-bg: color-mix(
    in srgb,
    var(--background) 72%,
    transparent
  ); /* source: theme-aligned replacement for UpcomingMatchRow bg-black/60 */
  --sports-upcoming-refresh-bg: color-mix(
    in srgb,
    var(--sports-lock-icon-bg) 18%,
    transparent
  ); /* source: sports amber token --sports-lock-icon-bg */
  --sports-upcoming-refresh-hover-bg: color-mix(
    in srgb,
    var(--sports-lock-icon-bg) 28%,
    transparent
  ); /* source: sports amber token --sports-lock-icon-bg */
  --sports-upcoming-refresh-text: var(
    --foreground
  ); /* source: theme foreground */
  --sports-upcoming-refresh-shadow: 0px 4px 12px 0px
    color-mix(
      in srgb,
      var(--sports-lock-icon-bg) 22%,
      transparent
    ); /* source: sports amber token --sports-lock-icon-bg */
  --sports-live-indicator-bg: var(
    --primary
  ); /* source: type2 current theme primary */
  --sports-live-badge-bg: color-mix(
    in srgb,
    var(--primary) 15%,
    transparent
  ); /* source: type2 current theme primary */
  --sports-live-badge-text: var(
    --primary-gradient-from
  ); /* source: type2 current theme primary gradient */
  --sports-market-active-muted-text: color-mix(
    in srgb,
    var(--foreground) 80%,
    transparent
  ); /* source: theme foreground replacement for text-white/80 */
  --sports-scroll-control-border: var(
    --sports-lock-icon-bg
  ); /* source: sports amber token --sports-lock-icon-bg */
  --sports-scroll-control-bg: var(
    --background
  ); /* source: type2 current theme background */
  --sports-scroll-control-text: var(
    --sports-lock-icon-bg
  ); /* source: sports amber token --sports-lock-icon-bg */
  --sports-scroll-control-shadow: 0px 0px 10px 0px
    color-mix(
      in srgb,
      var(--sports-lock-icon-bg) 25%,
      transparent
    ); /* source: sports amber token --sports-lock-icon-bg */
  --sports-scroll-control-hover-bg: var(
    --sports-lock-icon-bg
  ); /* source: sports amber token --sports-lock-icon-bg */
  --sports-scroll-control-hover-text: var(
    --sports-lock-icon-fg
  ); /* source: sports lock icon foreground */
  --sports-scroll-control-hover-shadow: 0px 0px 14px 0px
    color-mix(
      in srgb,
      var(--sports-lock-icon-bg) 40%,
      transparent
    ); /* source: sports amber token --sports-lock-icon-bg */
  --sports-modal-overlay-bg: color-mix(
    in srgb,
    var(--background) 72%,
    transparent
  ); /* source: type2 current theme background replacement for bg-black/60 */
  --sports-market-overlay-soft-bg: color-mix(
    in srgb,
    var(--background) 35%,
    transparent
  ); /* source: type2 current theme background replacement for bg-black/30 */
  --sports-market-overlay-strong-bg: color-mix(
    in srgb,
    var(--background) 82%,
    transparent
  ); /* source: type2 current theme background replacement for bg-black/70 */
  --sports-selection-label: #657b66;
  --sports-asian-odds: #3cfff5;

  /* Util Sidebar (Dark) */
  --util-sidebar-group-active-from: #425559;
  --util-sidebar-group-active-to: #323738;
  --util-sidebar-subitem-from: #53686c;
  --util-sidebar-subitem-to: #323738;
  --util-sidebar-balance-bg: #393e3f;
  --util-sidebar-shadow: 0px 6px 0px 0px #304b29;
}

[data-theme="type2"] .sports-live-row .sports-live-score-text {
  background-image: var(--sports-live-score-gradient);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

[data-theme="type2"] .sports-live-row .sports-live-odds-row > button:not([data-active="true"]):nth-of-type(1) .sports-selection-odds-value {
  color: var(--sports-live-odds-home);
}

[data-theme="type2"] .sports-live-row .sports-live-odds-row > button:not([data-active="true"]):nth-of-type(2) {
  color: var(--sports-live-odds-draw) !important;
}

[data-theme="type2"] .sports-live-row .sports-live-odds-row > button:not([data-active="true"]):nth-of-type(3) .sports-selection-odds-value {
  color: var(--sports-live-odds-away);
}

[data-theme="type2"] .mypage-history-table > div {
  border: 0;
  background: transparent;
  padding: 0;
  box-shadow: none;
  border-radius: 0;
}

[data-theme="type2"] .mypage-history-table table {
  min-width: 0;
}

[data-theme="type2"] .mypage-history-table thead tr {
  height: auto;
}

[data-theme="type2"] .mypage-history-table thead th {
  height: auto;
  border-left: 0;
  background: var(--mypage-history-header-bg);
  padding: 10px 20px;
  color: var(--mypage-history-text);
  font-family: "Montserrat", var(--font-geist-sans);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
}

[data-theme="type2"] .mypage-history-table thead th > div {
  height: auto;
}

[data-theme="type2"] .mypage-history-table tbody tr {
  background: transparent;
}

[data-theme="type2"] .mypage-history-table tbody td {
  height: auto;
  border-bottom: 1px solid var(--mypage-history-row-border);
  padding: 10px 20px;
  color: var(--mypage-history-text);
  font-family: "Montserrat", var(--font-geist-sans);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
}

[data-theme="type2"] .mypage-history-table tbody tr:last-child td {
  border-bottom: 0;
}

[data-theme="type2"] .mypage-history-table tbody span {
  color: var(--mypage-history-text);
  font-family: "Montserrat", var(--font-geist-sans);
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
}

[data-theme="type2"] .inquiry-betting-date-range {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 0;
  background: transparent;
  padding: 0;
}

[data-theme="type2"] .inquiry-betting-date-range .date-range-selector-scroll {
  width: 264px; /* source: Framelink 4052:9539 dimensions.width */
  height: 35px; /* source: Figma screenshot 4052:9539 dimensions.height */
  overflow: visible;
}

[data-theme="type2"] .inquiry-betting-date-range .date-range-selector-row {
  width: 264px; /* source: Figma metadata 4052:9539 width */
  min-width: 264px; /* source: Figma get_design_context 4052:9539 size-full, no horizontal scroll */
  height: 35px; /* source: Figma metadata 4052:9539 height */
  flex-wrap: nowrap; /* source: Figma get_design_context 4052:9539 single-row buttons */
  justify-content: center;
  align-items: center;
  gap: 10px; /* source: Framelink 4052:9539 layout.gap */
}

[data-theme="type2"] .inquiry-betting-date-range .date-range-separator {
  display: none; /* source: Framelink 4052:9539 has no separator node */
}

[data-theme="type2"] .inquiry-betting-date-range .inquiry-date-custom-icon {
  display: none; /* source: Framelink 4052:9546 has text only, no icon layer */
}

[data-theme="type2"] .inquiry-betting-date-range .react-datepicker-wrapper,
[data-theme="type2"] .inquiry-betting-date-range .react-datepicker__input-container {
  width: 75px; /* source: Figma metadata 4052:9546 width */
  flex: 0 0 75px; /* source: Figma metadata 4052:9546 fixed child width */
  display: block;
}

[data-theme="type2"] .inquiry-betting-date-range .inquiry-date-preset-button {
  display: flex; /* source: Framelink 4052:9540 layout.mode=row */
  flex: 0 0 auto; /* source: Figma metadata 4052:9540~9546 fixed child widths */
  box-sizing: border-box;
  height: 35px; /* source: Framelink 4052:9540 dimensions.height */
  justify-content: center; /* source: Framelink 4052:9540 justifyContent=center */
  align-items: center; /* source: Framelink 4052:9540 alignItems=center */
  gap: 5px; /* source: Framelink 4052:9540 layout.gap */
  overflow: hidden; /* source: Figma get_design_context 4052:9540 overflow-clip */
  border-radius: 5px; /* source: Framelink 4052:9540 borderRadius */
  padding: 0 15px; /* source: Framelink 4052:9540 layout.padding */
  font-family: "Pretendard", var(--font-geist-sans);
  font-size: 12px; /* source: Framelink 4052:9541 textStyle.fontSize */
  font-weight: 500; /* source: Framelink 4052:9541 textStyle.fontWeight */
  line-height: normal; /* source: Figma get_design_context 4052:9541 leading normal */
  white-space: nowrap; /* source: Figma get_design_context 4052:9541 whitespace-nowrap */
}

[data-theme="type2"] .inquiry-betting-date-range .date-range-selector-row > .inquiry-date-preset-button:nth-of-type(1) {
  width: 48px; /* source: Figma metadata 4052:9540 width */
}

[data-theme="type2"] .inquiry-betting-date-range .date-range-selector-row > .inquiry-date-preset-button:nth-of-type(2) {
  width: 54px; /* source: Figma metadata 4052:9542 width */
}

[data-theme="type2"] .inquiry-betting-date-range .date-range-selector-row > .inquiry-date-preset-button:nth-of-type(3) {
  width: 57px; /* source: Figma metadata 4052:9544 width */
}

[data-theme="type2"] .inquiry-betting-date-range .date-range-custom-trigger {
  width: 75px; /* source: Figma metadata 4052:9546 width */
}

[data-theme="type2"] .inquiry-betting-date-range .inquiry-date-preset-active {
  border: 2px solid var(--inquiry-betting-dialog-date-active-border) !important; /* source: Framelink 4052:9540 strokeWeight/strokes */
  background: var(--inquiry-betting-dialog-date-active-bg) !important; /* source: Framelink 4052:9540 fills */
  color: var(--inquiry-betting-dialog-date-active-text) !important; /* source: Framelink 4052:9541 fills */
}

[data-theme="type2"] .inquiry-betting-date-range .inquiry-date-preset-inactive {
  border: 1px solid var(--inquiry-betting-dialog-date-border) !important; /* source: Framelink 4052:9542 strokeWeight/strokes */
  background: var(--inquiry-betting-dialog-date-bg) !important; /* source: Framelink 4052:9542 fills */
  color: var(--inquiry-betting-dialog-date-text) !important; /* source: Framelink 4052:9543 fills */
}

[data-theme="type2"] .options-market-row .options-selection-price {
  color: var(--options-selection-price-home); /* source: Framelink EL-69d770cc fills #00D5BE */
}

[data-theme="type2"] .options-market-row > button:nth-child(2) .options-selection-price {
  color: var(--options-selection-price-away); /* source: Framelink EL-1a892a71 fills #C27AFF */
}

[data-theme="type2"] .options-market-row-three > button:nth-child(2) .options-selection-price {
  color: var(--options-selection-price-draw); /* source: Framelink 4007:6275 fills #05DF72 */
}

[data-theme="type2"] .options-market-row-three > button:nth-child(3) .options-selection-price {
  color: var(--options-selection-price-away); /* source: Framelink EL-1a892a71 fills #C27AFF */
}
