/* =========================================================================
   THEME V2 — Material Mono (White/Gray + Dark Gray Accents)
   목적: 플랫/모던, 높은 가시성, 배리어프리(사이즈/간격 상향)
   적용 범위: body.kiosk-v2.m3.mono
   반드시 마지막에 로드. 기존 색상/스타일을 모두 제압하기 위해 !important 사용.
   ========================================================================= */

/* 0) Design Tokens / Base Scale (접근성 위해 기본 글자/컴포넌트 사이즈 ↑) */
body.kiosk-v2.m3.mono {
  /* Palette */
  --mono-bg:           #f5f6f8;
  --mono-surface:      #ffffff;
  --mono-surface-2:    #f2f3f5;
  --mono-border:       #c0c0c0;
  --mono-outline:      rgba(17,24,39,.12);
  --mono-outline-2:    rgba(17,24,39,.08);

  --mono-text:         #111827;  /* slate-900 */
  --mono-text-sub:     #374151;  /* slate-700 */
  --mono-text-dim:     #6b7280;  /* slate-500 */

  --mono-accent:       #111827;  /* dark gray primary */
  --mono-on-accent:    #ffffff;

  --mono-danger:       #991b1b;
  --mono-on-danger:    #ffffff;

  --focus-ring:        3px solid rgba(148,163,184,.7);
  --focus-shadow:      0 0 0 8px rgba(148,163,184,.18);

  /* Radii & Elevation (플랫 성향, 그림자는 최소) */
  --r-2xl: 28px; --r-xl: 24px; --r-lg: 16px; --r-md: 12px; --r-sm: 10px;
  --elev-1: 0 1px 2px rgba(17,24,39,.06), 0 1px 3px rgba(17,24,39,.08);
  --elev-2: 0 2px 6px rgba(17,24,39,.06), 0 8px 18px rgba(17,24,39,.08);

  /* Type Scale (배리어프리: 기본 18px, 헤더/총액 크게) */
  --fs-base: 22pt;
  --fs-sm:   18pt;
  --fs-lg:   24pt;
  --fs-xl:   24px;
  --fs-2xl:  28px;
  --fs-3xl:  clamp(30px, 2.4vw, 38px);
  --fs-4xl:  clamp(34px, 3vw, 46px);
  --fs-5xl:  clamp(40px, 3.6vw, 52px);

  /* 확장 폰트 사이즈 */
  --fs-6xl:  clamp(46px, 4.2vw, 58px);
  --fs-7xl:  clamp(52px, 4.8vw, 64px);
  --fs-8xl:  clamp(58px, 5.4vw, 72px);
  --fs-9xl:  clamp(64px, 6vw, 80px);
  --fs-10xl: clamp(72px, 6.8vw, 88px);
  --fs-11xl: clamp(80px, 7.6vw, 96px);
  --fs-12xl: clamp(88px, 8.4vw, 104px);

  --fw-bold: 800; 
  --fw-black:900;

  background: var(--mono-bg) ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  font-family: "Noto Sans KR", system-ui, -apple-system, Segoe UI, Roboto, sans-serif ; /*!important;*/
  font-size: var(--fs-base) ; /*!important;*/
  line-height: 1.35 ; /*!important;*/
}

/* 1) Global Layout */
body.kiosk-v2.m3.mono .kiosk-wrapper{
  background: var(--mono-bg) ; /*!important;*/
  /* padding: 0 16px 16px 16px ; !important; 눌림/밀림 최소화 */
}

/* 좌우 3단 패널 공통 */
body.kiosk-v2.m3.mono :is(.category-area,.product-area,.cart-area){
  background: var(--mono-surface) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/
  border-radius: var(--r-xl) ; /*!important;*/
  box-shadow: none ; /*!important;*/ /* 플랫 */
  color: var(--mono-text) ; /*!important;*/
}

/* 2) Header / Title (과일 마켓) — 겹침/어긋남 해소 + 플랫 */
body.kiosk-v2.m3.mono .kiosk-header{
  position: relative ; /*!important;*/
  z-index: 2 ; /*!important;*/           /* 카테고리보다 위 */
  margin: 12px 0 12px 0 ; /*!important;*/   /* 타이틀 아래 여백 */
  padding: 0 ; /*!important;*/
  background: white ; /*!important;*/
  border-bottom: 2px solid var(--mono-border) ; /*!important;*/
  box-shadow: none ; /*!important;*/
  height: 60px ; /*!important;*/
  width: 100% ; /*!important;*/ 
}
body.kiosk-v2.m3.mono .kiosk-header .header-left{
  position: absolute ; /*!important;*/
  z-index: 2 ; /*!important;*/           /* 카테고리보다 위 */
  margin: 12px 0 12px 0 ; /*!important;*/   /* 타이틀 아래 여백 */
  padding: 0 ; /*!important;*/
  background: transparent ; /*!important;*/
  border: none ; /*!important;*/
  box-shadow: none ; /*!important;*/
  height: 60px ; /*!important;*/
  width: 100% ; /*!important;*/ 
}
body.kiosk-v2.m3.mono .kiosk-header .title,
body.kiosk-v2.m3.mono [data-i18n-key="title"]{
  display:block ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  font-size: var(--fs-lg) ; /*!important;*/
  font-weight: var(--fw-black) ; /*!important;*/
  letter-spacing: .2px ; /*!important;*/
  padding: 8px 2px 12px ; /*!important;*/
  margin: 0 ; /*!important;*/
}

body.kiosk-v2.m3.mono .content-area {
  height: 1720px ; /*!important;*/
  margin-top: 66px ; /*!important;*/
}

body.kiosk-v2.m3.mono .category-area {
  height: 1720px ; /*!important;*/
}
  body.kiosk-v2.m3.mono .category-area .category-panel {
    height: 1180px ; /*!important;*/
  }
  body.kiosk-v2.m3.mono .category-area .btn-panel {
    height: 530px ; /*!important;*/
  }
body.kiosk-v2.m3.mono .main-panel {
  height: 1720px ; /*!important;*/
}
  body.kiosk-v2.m3.mono .main-panel .product-area {
    height: 1180px ; /*!important;*/
  }
  body.kiosk-v2.m3.mono .main-panel .cart-area {
    height: 530px ; /*!important;*/
  }

/* 카테고리 패널 상단에서 타이틀과 시각적 분리 */
body.kiosk-v2.m3.mono .category-panel{ margin-top: 0 ; /*!important;*/ }

/* 로고(로딩 중…) 영역 — 플랫, 정렬 안정 */
body.kiosk-v2.m3.mono .logo{
  display:flex ; /*!important;*/ align-items:center ; /*!important;*/ justify-content:center ; /*!important;*/
}
body.kiosk-v2.m3.mono #logoText{
  display:inline-block ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  font-weight: var(--fw-black) ; /*!important;*/
  font-size: clamp(28px, 2.2vw, 34px) ; /*!important;*/
  line-height:1.12 ; /*!important;*/
  padding: 10px 14px ; /*!important;*/
  background: #fff ; /*!important;*/               /* 플랫 */
  border: 1px solid var(--mono-outline) ; /*!important;*/
  border-radius: 14px ; /*!important;*/
  box-shadow: none ; /*!important;*/               /* 그림자 제거 */
}

/* 3) Category */
body.kiosk-v2.m3.mono .category-panel{
  background: var(--mono-surface-2) ; /*!important;*/
  border-radius: var(--r-xl) ; /*!important;*/
  padding: 12px ; /*!important;*/
}
body.kiosk-v2.m3.mono .category-list{
  list-style:none; margin:0 ; /*!important;*/ padding:0 ; /*!important;*/
  display:flex ; /*!important;*/ flex-direction:column ; /*!important;*/
  gap: 12px ; /*!important;*/ /* 일정한 간격 */
}
body.kiosk-v2.m3.mono .category-button{
  display:grid ; /*!important;*/ place-items:center ; /*!important;*/
  min-height: 68px ; /*!important;*/
  background: var(--mono-surface) ; /*!important;*/ color: var(--mono-text) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/ border-radius: var(--r-lg) ; /*!important;*/
  transition: background .18s, border-color .18s ; /*!important;*/
  font-weight: var(--fw-bold) ; /*!important;*/
}
body.kiosk-v2.m3.mono .category-button:hover,
body.kiosk-v2.m3.mono .category-button[aria-pressed="true"]{
  background: var(--mono-surface-2) ; /*!important;*/ border-color: var(--mono-outline) ; /*!important;*/
}

/* 4) Products */
body.kiosk-v2.m3.mono .product-list{ gap: 22px ; /*!important;*/ }
body.kiosk-v2.m3.mono .product-item{
  background: var(--mono-surface) ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/
  border-radius: var(--r-lg) ; /*!important;*/
  box-shadow: none ; /*!important;*/ /* 플랫 */
  transition: transform .12s ease, background .18s ease ; /*!important;*/
}
body.kiosk-v2.m3.mono .product-item:hover{ transform: translateY(-2px) ; /*!important;*/ }
body.kiosk-v2.m3.mono .product-item img{
  width:100%; aspect-ratio:1/1; object-fit:cover; border-radius: var(--r-md) ; /*!important;*/
}
body.kiosk-v2.m3.mono .product-item .product-info {
  display: flex; flex-direction: column; justify-content: space-between; align-items: center; flex-grow: 1;
}
body.kiosk-v2.m3.mono .product-name{ font-weight: var(--fw-black) ; /*!important;*/ 
  display: grid ; /*!important;*/
  place-items: center ; /*!important;*/ flex-grow: 1 ; /*!important;*/ line-height: 1.6 ; /*!important;*/ color:var(--mono-text) ; /*!important;*/ }
body.kiosk-v2.m3.mono .product-price{ font-size: var(--fs-3xl) ; /*!important;*/ color: var(--mono-text-sub) ; /*!important;*/ font-weight: var(--fw-black) ; /*!important;*/ }
body.kiosk-v2.m3.mono .product-price .amount{ color: var(--mono-text) ; /*!important;*/ }
/* click policy */
body.kiosk-v2.m3.mono .product-item *{ pointer-events:none; }
body.kiosk-v2.m3.mono .product-item{ pointer-events:auto; }

/* 5) Buttons (Global) — 접근성 사이즈 & 플랫 */
body.kiosk-v2.m3.mono :where(.btn,.action-btn,.bottom-menu-btn,.cart-icon-btn,.tab-btn,.modal-close-btn,.floating-btn,.lang-btn){
  min-height: 58px ; /*!important;*/ padding: 0 22px ; /*!important;*/ border-radius: var(--r-lg) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/
  background: var(--mono-surface) ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  box-shadow: none ; /*!important;*/ /* 플랫 */
  font-weight: var(--fw-bold) ; /*!important;*/ letter-spacing: .1px;
  transition: background .18s ease, transform .12s ease ; /*!important;*/
}
body.kiosk-v2.m3.mono :where(.btn,.action-btn,.bottom-menu-btn,.cart-icon-btn,.tab-btn,.modal-close-btn,.floating-btn,.lang-btn):hover{
  background: #f9fafb ; /*!important;*/
}
body.kiosk-v2.m3.mono :where(.btn,.action-btn,.bottom-menu-btn,.cart-icon-btn,.tab-btn,.modal-close-btn,.floating-btn,.lang-btn):active{
  transform: translateY(1px) ; /*!important;*/
}
/* Primary */
body.kiosk-v2.m3.mono :is(.btn.primary,.checkout-btn,.order-btn,.btn.confirm){
  background: var(--mono-accent) ; /*!important;*/
  color: var(--mono-on-accent) ; /*!important;*/
  border-color: rgba(17,24,39,.28) ; /*!important;*/
  font-weight: var(--fw-black) ; /*!important;*/
}
/* Tonal */
body.kiosk-v2.m3.mono :is(.btn.tonal,.bottom-menu-btn.tonal){
  background: var(--mono-surface-2) ; /*!important;*/
  color: var(--mono-text-sub) ; /*!important;*/
  border-color: var(--mono-outline-2) ; /*!important;*/
}
/* Danger */
body.kiosk-v2.m3.mono .btn.danger{
  background: var(--mono-danger) ; /*!important;*/ color: var(--mono-on-danger) ; /*!important;*/
  border-color: rgba(153,27,27,.3) ; /*!important;*/
}

/* Focus ring */
body.kiosk-v2.m3.mono :where(button,[role="button"],.btn,.bottom-menu-btn,.category-button,.product-item,.cart-icon-btn,.checkout-btn,.lang-btn,.floating-btn):focus-visible{
  outline: var(--focus-ring) ; /*!important;*/ outline-offset: 2px ; /*!important;*/ box-shadow: var(--focus-shadow) ; /*!important;*/
}

/* 6) Cart */
body.kiosk-v2.m3.mono .cart-title{ color: var(--mono-text) ; /*!important;*/ font-weight: var(--fw-black) ; /*!important;*/ }
body.kiosk-v2.m3.mono .cart-list{
  background: var(--mono-surface) ; /*!important;*/ color: var(--mono-text) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/ border-radius: var(--r-md) ; /*!important;*/ padding:8px 10px ; /*!important;*/
}
body.kiosk-v2.m3.mono .cart-item{ border-bottom: 1px solid var(--mono-outline-2) ; /*!important;*/  }
body.kiosk-v2.m3.mono .cart-item .item-info * { font-size: var(--fs-lg) !important ; /*!important;*/ }
body.kiosk-v2.m3.mono .cart-item .item-quantity * { font-size: var(--fs-lg) !important ; /*!important;*/ }
body.kiosk-v2.m3.mono .cart-empty{ color: var(--mono-text-dim) ; /*!important;*/ }

/* 총액 길어져도 버튼 밀리지 않도록 grid 고정 */
body.kiosk-v2.m3.mono .cart-footer{
  display:grid ; /*!important;*/ grid-template-columns: 1fr auto ; /*!important;*/ align-items:end ; /*!important;*/
  gap: 12px ; /*!important;*/ margin-top: 0px ; /*!important;*/
}
body.kiosk-v2.m3.mono .cart-total{ min-width: 0 ; /*!important;*/ display: flex ; /*!important;*/ flex-direction: column ; /*!important;*/ 
margin-bottom: 15px;}
body.kiosk-v2.m3.mono .cart-total .label{
  color: var(--mono-text-sub) ; /*!important;*/ font-size: var(--fs-4xl) ; /*!important;*/ font-weight: 700 ; /*!important;*/ margin-right: 6px ; /*!important;*/
}
body.kiosk-v2.m3.mono .cart-total .amount-wrapper{
  display:inline-flex ; /*!important;*/ align-items:center ; /*!important;*/ gap:6px ; /*!important;*/
  padding: 2px 12px ; /*!important;*/ max-width: 100% ; /*!important;*/
  background: var(--mono-surface-2) ; /*!important;*/ border: 1px solid var(--mono-outline) ; /*!important;*/ border-radius: 999px ; /*!important;*/
  white-space: nowrap ; /*!important;*/ overflow: hidden ; /*!important;*/ text-overflow: ellipsis ; /*!important;*/
}
body.kiosk-v2.m3.mono .cart-total :is(.amount,#cartTotalPrice){
  color: var(--mono-text) ; /*!important;*/ font-weight: var(--fw-black) ; /*!important;*/ font-size: var(--fs-5xl) ; /*!important;*/  
}
body.kiosk-v2.m3.mono .cart-btn-column{ margin-bottom: 15px; display:flex ; /*!important;*/ justify-content:flex-end ; /*!important;*/ }
body.kiosk-v2.m3.mono .checkout-btn{ min-width: 236px ; /*!important;*/ margin-right: 16px; }

/* 7) Bottom Navigation */
body.kiosk-v2.m3.mono .bottom-nav{
  background: rgba(255,255,255,.96) ; /*!important;*/ backdrop-filter: blur(10px) ; /*!important;*/
  border-top: 1px solid var(--mono-outline) ; /*!important;*/ box-shadow: 0 -4px 10px rgba(17,24,39,.04) ; /*!important;*/
}
body.kiosk-v2.m3.mono .bottom-menu-btn{
  background: var(--mono-surface) ; /*!important;*/ color: var(--mono-text) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/ border-radius: var(--r-md) ; /*!important;*/
}

/* 8) Waiting Screen — 텍스트 플랫화(그림자/과도한 Bold 제거) */
body.kiosk-v2.m3.mono .waiting-text{
  background: #ffffff ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/
  border-radius: 999px ; /*!important;*/
  box-shadow: none ; /*!important;*/        /* ✅ 그림자 제거 */
  font-weight: 700 ; /*!important;*/        /* 과도한 Black → Bold 정도로 */
  letter-spacing: .1px ; /*!important;*/
  padding: 10px 18px ; /*!important;*/
  color: var(--mono-accent) !important;
}

/* 9) Language Floating */
body.kiosk-v2.m3.mono #langFloatingWrapper .floating-btn,
body.kiosk-v2.m3.mono .lang-list,
body.kiosk-v2.m3.mono .lang-btn{
  background: var(--mono-surface) ; /*!important;*/ color: var(--mono-text) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/ border-radius: var(--r-lg) ; /*!important;*/ box-shadow: none ; /*!important;*/
}

/* 10) Inputs */
body.kiosk-v2.m3.mono :is(input,select,textarea){
  background: var(--mono-surface) ; /*!important;*/ color: var(--mono-text) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/ border-radius: var(--r-md) ; /*!important;*/ padding: 14px 16px ; /*!important;*/
  font-size: var(--fs-base) ; /*!important;*/
}
body.kiosk-v2.m3.mono :is(input,select,textarea):focus{
  border-color: rgba(17,24,39,.38) ; /*!important;*/ box-shadow: 0 0 0 3px rgba(148,163,184,.22) ; /*!important;*/ outline: none ; /*!important;*/
}

/* ===== [치환] 11) Modals / Screens (가시성/여백 강화) ===== */
body.kiosk-v2.m3.mono :is(.payment-modal,.order-confirm-modal,.payment-screen){
  background: color-mix(in oklab, white 8%, black 14%) ; /*!important;*/
  z-index: 1000 ; /*!important;*/
}
body.kiosk-v2.m3.mono :is(.payment-modal-box,.modal-box,.screen-box){
  background: var(--mono-surface) ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/
  border-radius: var(--r-2xl) ; /*!important;*/
  box-shadow: none ; /*!important;*/
  padding: 36px 40px ; /*!important;*/              /* ▲ 더 넉넉한 여백 */
}


/* 12) Order Confirm — 총금액 폰트 확실히 크게 */
body.kiosk-v2.m3.mono .order-confirm-modal .modal-title{
  color: var(--mono-text) ; /*!important;*/
  font-weight: var(--fw-black) ; /*!important;*/
  font-size: var(--fs-6xl) ; /*!important;*/       /* ▲ 노령자 배려 큰 타이포 */
  line-height: 1.15 ; /*!important;*/
  margin: 0 0 24px ; /*!important;*/
}
body.kiosk-v2.m3.mono .order-confirm-modal .modal-total{
  margin-top: 12px ; /*!important;*/ padding: 16px 18px ; /*!important;*/
  background: var(--mono-surface-2) ; /*!important;*/ border: 1px solid var(--mono-outline) ; /*!important;*/ border-radius: var(--r-lg) ; /*!important;*/
}
body.kiosk-v2.m3.mono .order-confirm-modal .modal-total .amount{
  display:inline-block ; /*!important;*/ margin-top: 6px ; /*!important;*/
  font-weight: var(--fw-black) ; /*!important;*/ 
  font-size: var(--fs-10xl) ; /*!important;*/        /* ✅ 아주 크게 (clamp 40~52px) */
  line-height: 1.05 ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
}
/* 남아있는 초록/뱃지류 → 뉴트럴 */
body.kiosk-v2.m3.mono .order-confirm-modal :is(.ok,.good,.success,.green,.confirm-text){
  color: var(--mono-text) ; /*!important;*/ background: var(--mono-surface-2) ; /*!important;*/
  border: 1px solid var(--mono-outline-2) ; /*!important;*/ border-radius: 999px ; /*!important;*/ padding: 6px 10px ; /*!important;*/ font-weight: 700 ; /*!important;*/
}

/* ===== [치환] 13) Payment Modals — 타이틀/버튼/옵션 사이즈 업 & 배치 정리 ===== */
body.kiosk-v2.m3.mono .payment-modal .two-btns{
  display:grid ; /*!important;*/
  grid-template-columns: 1fr 1fr ; /*!important;*/
  gap: 24px ; /*!important;*/
}
body.kiosk-v2.m3.mono .payment-modal .two-btns > button{
  min-height: 140px ; /*!important;*/              /* ▲ 터치 타깃 큼 */
  padding: 22px 24px ; /*!important;*/
  background: var(--mono-surface) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/
  border-radius: var(--r-xl) ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  font-weight: var(--fw-black) ; /*!important;*/
  font-size: var(--fs-3xl) ; /*!important;*/       /* ▲ 텍스트 크게 */
  line-height: 1.25 ; /*!important;*/
  text-align:center ; /*!important;*/
}

/* ===== [치환] 2단계 선택(간편/카드/상품권) — 대형 카드 ===== */
body.kiosk-v2.m3.mono .payment-modal .three-btns{
  display:grid ; /*!important;*/
  grid-template-columns: repeat(3, minmax(0,1fr)) ; /*!important;*/
  gap: 24px ; /*!important;*/                       /* ▲ 간격 확대 */
  margin-top: 12px ; /*!important;*/
}
body.kiosk-v2.m3.mono .detailed-option{
  display:grid ; /*!important;*/
  place-items:center ; /*!important;*/
  min-height: 180px ; /*!important;*/               /* ▲ 카드 자체 크게 */
  padding: 20px 16px ; /*!important;*/
  background: var(--mono-surface) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/
  border-radius: var(--r-xl) ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  text-align:center ; /*!important;*/
  row-gap: 14px ; /*!important;*/
  transition: background .18s, transform .12s ; /*!important;*/
}
body.kiosk-v2.m3.mono .detailed-option:hover{
  background: var(--mono-surface-2) ; /*!important;*/
}
body.kiosk-v2.m3.mono .detailed-option.selected{
  outline: 4px solid rgba(17,24,39,.22) ; /*!important;*/
  outline-offset: 2px ; /*!important;*/
  transform: translateY(-1px) ; /*!important;*/
}
body.kiosk-v2.m3.mono .detailed-option i{
  font-size: 3.4em ; /*!important;*/                /* ▲ 아이콘 초대형 */
  color: var(--mono-text) ; /*!important;*/
}
body.kiosk-v2.m3.mono .detailed-option span{
  font-size: var(--fs-2xl) ; /*!important;*/        /* ▲ 라벨 크게 */
  font-weight: var(--fw-black) ; /*!important;*/
}

/* ===== [치환] 모달 하단 액션 버튼(뒤로/확인) — 초대형 ===== */
body.kiosk-v2.m3.mono .payment-actions{
  display:flex ; /*!important;*/
  justify-content:flex-end ; /*!important;*/
  gap: 18px ; /*!important;*/
  margin-top: 26px ; /*!important;*/
}
body.kiosk-v2.m3.mono .payment-actions .btn{
  min-height: 78px ; /*!important;*/                /* ▲ 터치 타깃 크게 */
  padding: 0 28px ; /*!important;*/
  font-size: var(--fs-2xl) ; /*!important;*/        /* ▲ 텍스트 크게 */
  border-radius: var(--r-xl) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/
  background: var(--mono-surface) ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  font-weight: var(--fw-black) ; /*!important;*/
}
body.kiosk-v2.m3.mono .payment-actions .btn.confirm{
  background: var(--mono-accent) ; /*!important;*/
  color: var(--mono-on-accent) ; /*!important;*/
  border-color: rgba(17,24,39,.28) ; /*!important;*/
}

/* ===== [치환] 결제 진행 오버레이(안내문/취소) — 초대형 텍스트 ===== */
body.kiosk-v2.m3.mono .payment-screen .card-insert p{
  font-size: var(--fs-3xl) ; /*!important;*/        /* ▲ 안내문 큼 */
  line-height: 1.3 ; /*!important;*/
  margin-top: 12px ; /*!important;*/
  text-align:center ; /*!important;*/
}
body.kiosk-v2.m3.mono .payment-screen .btn.cancel-overlay{
  min-height: 72px ; /*!important;*/
  padding: 0 26px ; /*!important;*/
  font-size: var(--fs-2xl) ; /*!important;*/
  border-radius: var(--r-xl) ; /*!important;*/
  border: 1px solid var(--mono-outline) ; /*!important;*/
  background: var(--mono-surface) ; /*!important;*/
  color: var(--mono-text) ; /*!important;*/
  font-weight: var(--fw-black) ; /*!important;*/
}


/* 14) Overlay Timer & Cancel */
body.kiosk-v2.m3.mono .payment-screen .btn.cancel-overlay{
  border: 1px solid var(--mono-outline) ; /*!important;*/ background: var(--mono-surface) ; /*!important;*/ color: var(--mono-text) ; /*!important;*/
  border-radius: var(--r-lg) ; /*!important;*/ box-shadow: none ; /*!important;*/ font-weight: var(--fw-black) ; /*!important;*/
}

body.kiosk-v2.m3.mono .card-timer-svg .timer-bg{ fill:none ; /*!important;*/ stroke: rgba(17,24,39,.12) ; /*!important;*/ stroke-width: 16 ; /*!important;*/ }
body.kiosk-v2.m3.mono .card-timer-svg .timer-circle{ fill:none ; /*!important;*/ stroke: rgba(17,24,39,.65) ; /*!important;*/ stroke-width: 16 ; /*!important;*/ stroke-linecap: round ; /*!important;*/ }

/* ===== [치환] 타이머 숫자도 크게 ===== */
body.kiosk-v2.m3.mono .card-timer-svg #timerText{
  fill: var(--mono-text) ; /*!important;*/
  font-weight: var(--fw-black) ; /*!important;*/
  font-size: 56px ; /*!important;*/                 /* ▲ 42 → 56 */
  
}

/* 15) Guards — 잔여 컬러 제거 */
body.kiosk-v2.m3.mono :is(.text-success,.text-green,.text-positive,.green){ color: var(--mono-text) ; /*!important;*/ }
body.kiosk-v2.m3.mono :is(.text-danger,.text-red){ color: var(--mono-text) ; /*!important;*/ }

/* 16) Dark Guard */
html.dark-theme body.kiosk-v2.m3.mono,
body.kiosk-v2.m3.mono.dark-theme{
  background: var(--mono-bg) ; /*!important;*/ color: var(--mono-text) ; /*!important;*/
}

