/* v1.3.245 — 세차장 승인 시안. 반드시 세차장 화면 안에서만 적용한다. */
.carwash-view{--cw45-blue:#1673ee;--cw45-navy:#10263e;--cw45-ink:#102844;--cw45-muted:#6c8298;--cw45-line:#dce8f4;--cw45-bg:#f3f8fd;--cw45-green:#32bf7a;--cw45-orange:#f5a72a;--cw45-purple:#9163ec;background:var(--cw45-bg);padding:12px}
.carwash-view .carwash-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.carwash-view .carwash-head h1{margin:0;font-size:28px;color:var(--cw45-ink)}.carwash-view .carwash-head p{margin:4px 0 0;color:var(--cw45-muted);font-weight:650}.carwash-view .carwash-head-actions{display:flex;gap:8px;align-items:center}.carwash-view .carwash-head-actions>label{display:none}.carwash-view .carwash-tabs{display:flex;gap:0;background:#edf4fb;border:1px solid var(--cw45-line);border-radius:10px;padding:3px;margin-bottom:10px;overflow:auto}.carwash-view .carwash-tabs button{border:0;background:transparent;color:#536a83;font-weight:850;min-width:116px;min-height:40px;border-radius:8px}.carwash-view .carwash-tabs button.active{background:linear-gradient(135deg,#1979f4,#0b61d7);color:#fff}
.cw45-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:10px}.cw45-kpis article{min-height:98px;border:1px solid var(--cw45-line);border-radius:14px;background:#fff;padding:15px 18px;display:grid;align-content:center;box-shadow:0 3px 12px rgba(35,70,108,.04)}.cw45-kpis article small{font-size:12px;color:#58718c;font-weight:850}.cw45-kpis article b{font-size:24px;line-height:1.2;color:#0e2443;margin-top:6px}.cw45-kpis article span{font-size:12px;color:#55677a;margin-top:4px}.cw45-kpis .sales{background:linear-gradient(135deg,#eef7ff,#fff)}.cw45-kpis .count{background:linear-gradient(135deg,#eefbf5,#fff)}.cw45-kpis .avg{background:linear-gradient(135deg,#fff8e9,#fff)}.cw45-kpis .member{background:linear-gradient(135deg,#f8f1ff,#fff)}
.cw45-manager-shell{display:grid;gap:10px}.cw45-filterbar{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr auto auto;gap:8px;align-items:end;border:1px solid var(--cw45-line);background:#fff;border-radius:12px;padding:10px 12px}.cw45-filterbar label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px;font-size:11px;font-weight:850;color:#486079}.cw45-filterbar input,.cw45-filterbar select,#cw45StationSlot select{height:38px;border:1px solid #d6e2ef;border-radius:8px;background:#fff;padding:0 10px;color:#26405f;min-width:0}.cw45-filterbar button{height:38px;min-width:88px}.cw45-analysis-tabs{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));border:1px solid var(--cw45-line);border-radius:10px;overflow:hidden;background:#eef4fa}.cw45-analysis-tabs button{border:0;border-right:1px solid #dbe7f3;background:transparent;min-height:42px;color:#4f667e;font-weight:850}.cw45-analysis-tabs button:last-child{border-right:0}.cw45-analysis-tabs button.active{background:linear-gradient(135deg,#1979f4,#0b61d7);color:#fff}
.cw45-manager-grid{display:grid;gap:10px}.cw45-manager-top{grid-template-columns:minmax(0,1.8fr) minmax(310px,.82fr)}.cw45-manager-bottom{grid-template-columns:1fr 1fr 1fr}.cw45-manager-ops{grid-template-columns:.9fr 1.5fr}.cw45-card{background:#fff;border:1px solid var(--cw45-line);border-radius:14px;padding:14px 16px;box-shadow:0 3px 12px rgba(35,70,108,.04);min-width:0}.cw45-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.cw45-card h2{margin:0;font-size:16px;color:#132a46}.cw45-card header p{margin:3px 0 0;color:#8192a4;font-size:10px;font-weight:650}.cw45-legend{display:flex;gap:12px;font-size:10px;font-weight:800;color:#5d7288}.cw45-legend span:before{content:'';display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:5px}.cw45-legend .sales:before{background:#4ca5f6}.cw45-legend .count:before{background:#36be78}
#cwDashboardChart.cw45-combo-chart{height:235px;display:flex;align-items:flex-end;gap:14px;padding:18px 12px 24px;border-bottom:1px solid #dbe6f0;overflow:auto}.cw45-combo-item{min-width:88px;display:grid;justify-items:center;gap:5px}.cw45-combo-item .bars{height:160px;display:flex;align-items:flex-end;gap:6px}.cw45-combo-item i{display:block;width:25px;border-radius:5px 5px 0 0}.cw45-combo-item i.sales{background:linear-gradient(#69b9ff,#2f90ee)}.cw45-combo-item i.count{background:linear-gradient(#71d7a2,#2fbd79)}.cw45-combo-item b{font-size:10px;color:#334e68}.cw45-combo-item small{font-size:11px;color:#55677a;white-space:nowrap}
.cw45-share,#cwManagerPayment{display:grid;grid-template-columns:128px 1fr;gap:14px;align-items:center;min-height:190px}.cw45-donut{width:124px;height:124px;border-radius:50%;display:grid;place-items:center;position:relative}.cw45-donut:after{content:'';position:absolute;width:76px;height:76px;border-radius:50%;background:#fff}.cw45-donut>div{position:relative;z-index:1;text-align:center}.cw45-donut small{display:block;color:#55677a;font-size:11px}.cw45-donut b{display:block;font-size:14px;color:#102844}.cw45-share-list{display:grid;gap:8px}.cw45-share-list>div{display:grid;grid-template-columns:9px 1fr auto auto;gap:6px;align-items:center;font-size:12px;color:#44586d}.cw45-share-list i{width:9px;height:9px;border-radius:3px}.cw45-share-list b{font-size:10px;color:#1c3450}.cw45-share-list em{font-style:normal;color:#8797a8}.cw45-empty{color:#7d90a4;font-size:11px}
.cw45-time-chart{height:190px;display:flex;align-items:flex-end;gap:7px;padding:12px 5px 24px;border-bottom:1px solid #dce7f2}.cw45-time-bar{flex:1;min-width:22px;display:grid;justify-items:center;align-items:end;gap:4px}.cw45-time-bar i{display:block;width:80%;max-width:27px;background:linear-gradient(#62b6fb,#2c8fe9);border-radius:4px 4px 0 0}.cw45-time-bar b{font-size:8px;color:#35516e}.cw45-time-bar small{font-size:8px;color:#6e8298}.cw45-no-data{min-height:160px;border:1px dashed #ccdbea;border-radius:12px;display:grid;place-items:center;align-content:center;text-align:center;color:#8494a6;padding:16px}.cw45-no-data strong{font-size:15px;color:#526a82;margin-bottom:5px}.cw45-no-data span{font-size:10px;max-width:270px}.cw45-detail #cwHistory{display:grid;gap:0;border:1px solid #dfe8f1;border-radius:10px;overflow:hidden}.cw45-detail #cwHistory .cw-history-row{display:grid!important;grid-template-columns:132px minmax(260px,1fr) 110px 90px 150px;gap:8px;align-items:center;padding:9px 11px;border-bottom:1px solid #edf2f7;font-size:10px}.cw45-detail #cwHistory .cw-history-row:last-child{border-bottom:0}.cw45-transfer{margin-top:10px;border-top:1px solid #e6edf4;padding-top:8px}.cw45-transfer summary{cursor:pointer;font-size:11px;font-weight:800;color:#4d6884}.cw45-transfer .cw-transfer-row{display:grid;grid-template-columns:130px 1fr 110px 120px 100px;gap:8px;font-size:10px;padding:7px 4px;border-bottom:1px solid #edf2f7}.cw45-head-actions{display:flex;gap:6px}.cw45-manager-ops .cw-manager-policy{display:grid;gap:4px}.cw45-manager-ops .cw-policy-row{display:grid;grid-template-columns:minmax(105px,1fr) auto auto;gap:8px;padding:7px 0;border-bottom:1px solid #edf2f7;font-size:10px}.cw45-manager-ops .cw-summary-table th,.cw45-manager-ops .cw-summary-table td{font-size:12px;white-space:nowrap}
/* 세차장 모드 */
.cw45-mode-top{display:grid;gap:10px;margin-bottom:10px}.cw45-mode-title{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--cw45-line);border-radius:12px;padding:10px 14px}.cw45-mode-title>div{display:flex;align-items:center;gap:10px}.cw45-mode-title>div>span{font-size:30px}.cw45-mode-title h2{font-size:25px;margin:0;color:#10233f}.cw45-mode-title p{margin:2px 0 0;color:#71849a;font-size:11px;font-weight:700}.cw45-mode-title time{border:1px solid #dbe7f2;border-radius:8px;padding:8px 12px;color:#526b83;font-weight:800;font-size:11px;background:#fbfdff}.cw45-mode-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.cw45-mode-kpis article{min-height:76px;border:1px solid var(--cw45-line);border-radius:12px;padding:10px 13px;background:#fff;display:grid;align-content:center}.cw45-mode-kpis small{font-size:10px;color:#4f667e;font-weight:800}.cw45-mode-kpis b{font-size:20px;color:#102844;margin-top:3px}.cw45-member-lookup{background:#fff;border:1px solid var(--cw45-line);border-radius:14px;padding:12px 14px}.cw45-member-lookup header h3{margin:0;font-size:16px;color:#102844}.cw45-member-lookup header p{margin:2px 0 8px;color:#55677a;font-size:12px}.cw45-lookup-row{display:grid;grid-template-columns:1fr 110px;gap:8px}.cw45-lookup-row input{height:43px;border:1px solid #cbdbea;border-radius:9px;padding:0 13px;font-size:14px}.cw45-member-summary{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:8px;margin-top:9px}.cw45-member-summary>div{background:#f8fbff;border:1px solid #e2ebf4;border-radius:10px;padding:10px 12px}.cw45-member-summary small{display:block;font-size:11px;color:#55677a;font-weight:800}.cw45-member-summary b{display:block;font-size:20px;color:#12304e;margin-top:4px}.carwash-view [data-cw-pane="checkout"]>.cw-kiosk-shell{background:#edf4fb;border:1px solid #dbe7f2;border-radius:14px;padding:10px}.carwash-view .cw-kiosk-hero{background:transparent;border:0;padding:0 0 8px}.carwash-view .cw-kiosk-brand{display:none}.carwash-view .cw-today-strip{display:none}.carwash-view .cw-kiosk-main{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(380px,.8fr);gap:10px}.carwash-view .cw-kiosk-services,.carwash-view .cw-kiosk-member,.carwash-view .cw-kiosk-order{background:#fff;border:1px solid var(--cw45-line);border-radius:14px;padding:14px;box-shadow:0 3px 12px rgba(35,70,108,.04)}.carwash-view .cw-kiosk-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.carwash-view .cw-service-btn{min-height:116px;border-radius:12px!important}.carwash-view .cw-service-btn.basic{grid-column:1/-1}.carwash-view .cw-kiosk-side{display:grid;gap:10px}.carwash-view .cw-member-banner{border-radius:12px!important;min-height:94px!important;padding:14px!important}.carwash-view .cw-member-banner b{font-size:18px!important}.carwash-view .cw-member-banner .balance{font-size:30px!important}.carwash-view .cw-fuel-touch-buttons{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:7px!important}.carwash-view .cw-fuel-touch-buttons button{min-height:72px!important;border-radius:10px!important}.carwash-view .cw-pay-methods{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:7px!important}.carwash-view .cw-pay-methods button{min-height:66px!important;border-radius:10px!important}.carwash-view .cw-total{border-radius:12px!important;background:#eef7ff!important}.carwash-view .cw-total b{font-size:36px!important;color:#0b66dc!important}.carwash-view .cw-complete{min-height:64px!important;border-radius:12px!important;font-size:19px!important;font-weight:900!important}.carwash-view .cw-voice-toggle{min-height:42px!important}.carwash-view .cw-kiosk-bottom-tools{display:grid;grid-template-columns:1fr;gap:8px;margin-top:10px}
body.carwash-mode .carwash-view{padding:6px!important;background:#edf4fb!important}body.carwash-mode .carwash-head,body.carwash-mode .carwash-tabs{display:none!important}body.carwash-mode .cw45-mode-title{position:sticky;top:0;z-index:20}body.carwash-mode .cw45-mode-top{margin-bottom:6px}
@media(max-width:1180px){.cw45-manager-top{grid-template-columns:1fr}.cw45-manager-bottom{grid-template-columns:1fr 1fr}.cw45-manager-ops{grid-template-columns:1fr}.cw45-mode-kpis{grid-template-columns:repeat(3,1fr)}.carwash-view .cw-kiosk-main{grid-template-columns:1fr minmax(330px,.8fr)}}
@media(max-width:820px){.cw45-kpis{grid-template-columns:1fr 1fr}.cw45-filterbar{grid-template-columns:1fr 1fr}.cw45-analysis-tabs{display:flex;overflow:auto}.cw45-analysis-tabs button{min-width:120px}.cw45-manager-bottom{grid-template-columns:1fr}.cw45-member-summary{grid-template-columns:1fr 1fr}.cw45-mode-kpis{grid-template-columns:1fr 1fr}.carwash-view .cw-kiosk-main{grid-template-columns:1fr}.cw45-mode-title{align-items:flex-start}.cw45-mode-title p{display:none}}
@media(max-width:560px){.cw45-kpis{grid-template-columns:1fr 1fr}.cw45-kpis article{min-height:82px;padding:10px}.cw45-kpis article b{font-size:18px}.cw45-filterbar{grid-template-columns:1fr}.cw45-mode-kpis{grid-template-columns:1fr 1fr}.cw45-member-summary{grid-template-columns:1fr 1fr}.cw45-member-summary b{font-size:17px}.carwash-view .cw-kiosk-service-grid{grid-template-columns:1fr 1fr}.carwash-view .cw-fuel-touch-buttons{grid-template-columns:1fr!important}.cw45-detail #cwHistory .cw-history-row{grid-template-columns:1fr;gap:2px}}

/* v1.3.264 — 폰(일반 화면) 사용자 시나리오 점검에서 찾은 불편 수정. 세차장 화면 안에서만 적용한다. */
@media(max-width:720px){
  /* 회원 목록: 가로로 밀어야 보이던 충전·재발급·환불 단추가 카드마다 바로 보이게 */
  .carwash-view .cw-member-table{min-width:0!important}
  .carwash-view .cw-member-table thead{display:none}
  .carwash-view .cw-member-table,.carwash-view .cw-member-table tbody,.carwash-view .cw-member-table tr,.carwash-view .cw-member-table td{display:block;width:100%;box-sizing:border-box}
  .carwash-view .cw-member-table tr{border:1px solid var(--cw45-line);border-radius:14px;background:#fff;padding:10px 12px;margin:0 0 10px}
  .carwash-view .cw-member-table td{border:0;padding:3px 0;font-size:15px}
  .carwash-view .cw-member-table td:nth-child(1){font-size:19px;font-weight:900;color:var(--cw45-ink)}
  .carwash-view .cw-member-table td:nth-child(2)::before{content:'전화 ';color:var(--cw45-muted)}
  .carwash-view .cw-member-table td:nth-child(3)::before{content:'잔여 ';color:var(--cw45-muted)}
  .carwash-view .cw-member-table td:nth-child(4)::before{content:'카드 ';color:var(--cw45-muted)}
  .carwash-view .cw-member-table td:nth-child(5)::before{content:'가입 ';color:var(--cw45-muted)}
  .carwash-view .cw-member-table td:nth-child(2):empty{display:none}
  .carwash-view .cw-member-table td:last-child{padding-top:8px}
  .carwash-view .cw-member-table .cw-member-actions button{min-height:44px;flex:1 1 30%}
  /* 제목 옆에 붙은 저장·불러오기 단추가 설명 글을 짜부러뜨리던 것 → 제목 아래 가로 가득 */
  .carwash-view .station-head{flex-wrap:wrap;gap:8px}
  .carwash-view .station-head>button{width:100%;min-height:48px;position:static}
}
/* v1.3.264 — 화면 밖 결과 말을 아래쪽에 잠깐 띄우는 알림 */
#cw264Toast{position:fixed;left:50%;transform:translateX(-50%);bottom:84px;z-index:90;max-width:min(92vw,560px);padding:12px 18px;border-radius:14px;font-size:16px;font-weight:800;line-height:1.4;color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.3);text-align:center}
#cw264Toast.ok{background:#0b6b3a}#cw264Toast.bad{background:#b42318}#cw264Toast[hidden]{display:none}
@media(min-width:900px){#cw264Toast{bottom:28px}}

/* v1.3.265 — 폰: 요금정책 표를 칸 이름이 붙은 줄로 (가격·사용 여부·삭제가 옆으로 밀지 않아도 보임) */
@media(max-width:720px){
  .carwash-view .cw-config-table{min-width:0!important}
  .carwash-view .cw-config-table thead{display:none}
  .carwash-view .cw-config-table,.carwash-view .cw-config-table tbody,.carwash-view .cw-config-table tr,.carwash-view .cw-config-table td{display:block;width:100%;box-sizing:border-box}
  .carwash-view .cw-config-table tr{border:1px solid var(--cw45-line);border-radius:14px;background:#fff;padding:8px 12px;margin:0 0 10px}
  .carwash-view .cw-config-table td{border:0;padding:5px 0;display:flex;align-items:center;gap:10px;min-height:40px}
  .carwash-view .cw-config-table td[data-l]::before{content:attr(data-l);flex:0 0 92px;color:var(--cw45-muted);font-size:13px;font-weight:800}
  .carwash-view .cw-config-table td label,.carwash-view .cw-config-table td .cw-toggle{white-space:nowrap;flex:0 0 auto}
  .carwash-view .cw-config-table td input:not([type=checkbox]),.carwash-view .cw-config-table td select{flex:1 1 auto;width:auto;min-width:0;min-height:44px}
  .carwash-view .cw-config-table td button{min-height:44px}
}
