.f-member .col { position: absolute; left: 24px; top: 143px; width: 382px; display: flex; flex-direction: column; gap: 12px; align-items: center; }
.f-member .card { position: relative; width: 382px; flex-shrink: 0; background: #f4f5f7; border-radius: 20px; overflow: hidden; }
.f-member .info { height: 384px; }
.f-member .memo { height: 208px; }
.f-member .tag { position: absolute; left: 42px; top: 0; width: 298px; height: 24px; background: #0073cf; border-radius: 0 0 12px 12px; }
.f-member .tag-t { position: absolute; left: 42px; top: 0; width: 298px; height: 24px; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 13px; color: #fff; white-space: nowrap; }
.f-member .subs { position: absolute; left: 12px; top: 228px; width: 358px; display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.f-member .kv { background: #fff; display: flex; gap: 12px; align-items: center; padding: 10px 16px; border-radius: 20px; overflow: hidden; width: 358px; }
.f-member .kv .k { width: 64px; flex-shrink: 0; font-weight: 700; font-size: 15px; color: #030303; text-align: center; }
.f-member .kv .v { width: 238px; flex-shrink: 0; font-size: 15px; color: #030303; text-align: center; white-space: pre; }
.f-member .kv .v.red { color: #ff334c; }
.f-member .sep { position: relative; width: 0; height: 20px; flex-shrink: 0; }
.f-member .sep img { position: absolute; left: -1px; top: -1px; width: 2px; height: 22px; }
.f-member .btn { background: #fff; border: 1px solid #b5bcc6; border-radius: 20px; display: flex; align-items: center; justify-content: center; padding: 8px 24px; flex-shrink: 0; }
.f-member .btn p { font-size: 13px; color: #030303; text-align: center; white-space: nowrap; }
.f-member .ptbtn { width: 358px; height: 40px; }
.f-member .rcol { position: absolute; right: 12px; top: 36px; width: 176px; display: flex; flex-direction: column; gap: 8px; align-items: flex-start; }
.f-member .stk { position: relative; width: 176px; height: 40px; }
.f-member .pill { position: relative; height: 40px; background: #fff; border-radius: 24px; overflow: hidden; }
.f-member .stk .pill { position: absolute; left: 0; top: 0; }
.f-member .w174 { width: 173.977px; }
.f-member .w176 { width: 176px; }
.f-member .w172 { width: 172px; }
.f-member .pill p, .f-member .visit p { position: absolute; left: 16px; top: 0; height: 40px; display: flex; align-items: center; font-weight: 700; font-size: 13px; color: #030303; white-space: nowrap; }
.f-member .pill p.ctr { left: 0; width: 102px; justify-content: center; }
.f-member .pic { position: absolute; left: 136px; top: 0; width: 40px; height: 40px; }
.f-member .gd { position: absolute; right: 0; top: 0; width: 40px; height: 40px; }
.f-member .gd img { position: absolute; left: 0; top: 0; width: 40px; height: 40px; }
.f-member .pill .gd p { left: 0; width: 40px; justify-content: center; color: #ff334c; }
.f-member .visit { position: relative; width: 176px; height: 40px; background: #030303; border-radius: 20px; }
.f-member .visit p { color: #fff; }
.f-member .name { position: absolute; left: 0; width: 198px; top: 109px; height: 34px; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 23px; color: #030303; white-space: nowrap; }
.f-member .memo-in { position: absolute; left: 12px; top: 36px; width: 358px; display: flex; flex-direction: column; gap: 12px; align-items: center; }
.f-member .minput { width: 358px; background: #fff; border: 1px solid #b5bcc6; border-radius: 20px; padding: 0 12px 0 20px; display: flex; align-items: center; justify-content: space-between; overflow: hidden; }
.f-member .minput p { font-size: 13px; color: #b5bcc6; white-space: nowrap; }
.f-member .minput img { width: 40px; height: 40px; flex-shrink: 0; }
.f-member .mlist { position: relative; width: 358px; }
.f-member .mitems { display: flex; flex-direction: column; gap: 4px; align-items: center; width: 347px; }
.f-member .mi { width: 347px; display: flex; flex-direction: column; gap: 2px; align-items: center; }
.f-member .md { width: 100%; font-size: 8px; color: #030303; text-align: center; }
.f-member .mb { width: 358px; max-width: 358px; min-height: 40px; background: #fff; border-radius: 20px; padding: 8px 12px; display: flex; gap: 12px; align-items: center; overflow: hidden; flex-shrink: 0; }
.f-member .mb p { max-width: 323px; font-size: 13px; color: #030303; white-space: nowrap; }
.f-member .sbar { position: absolute; left: 354px; top: 0; width: 4px; height: 14px; background: #b5bcc6; border-radius: 20px; }
.f-member .nav { position: absolute; left: 0; top: 83px; width: 430px; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; }
.f-member .nav-back { width: 48px; height: 48px; flex-shrink: 0; }
.f-member .nav-back img { width: 48px; height: 48px; transform: rotate(90deg); }
.f-member .nav-title { font-weight: 900; font-size: 33px; color: #0073cf; text-align: center; white-space: nowrap; }
.f-member .nav-br { width: 48px; height: 48px; flex-shrink: 0; }

.f-member .sb { position: absolute; right: 0; top: 0; width: 430px; height: 59px; }
.f-member .sb-in { position: absolute; left: 0; right: 0; top: 0; height: 54px; display: flex; align-items: center; justify-content: space-between; padding: 16px 32px 16px 52px; }
.f-member .sb-time { font-weight: 700; font-size: 17px; line-height: 22px; color: #030303; text-align: center; white-space: nowrap; }
.f-member .sb-wrap { width: 79.67px; height: 13px; }
.f-member .sb-cam { position: absolute; left: 153px; top: 10px; width: 123px; height: 36px; background: #030303; border-radius: 33px; overflow: hidden; }
.f-member .sb-cam img { position: absolute; }
.f-member .cv57 { left: 92.127px; top: 12.127px; width: 6.746px; height: 11.746px; }
.f-member .cv59 { left: 92.877px; top: 13.977px; width: 5.246px; height: 8.054px; }
.f-member .cv58 { left: 94.077px; top: 13.81px; width: 3.77px; height: 7.30px; transform: rotate(5.81deg) skewX(-2.78deg); }
.f-member .cv60 { left: 98.127px; top: 12.127px; width: 6.746px; height: 11.746px; transform: scaleX(-1); }
.f-member .cv61 { left: 98.877px; top: 13.977px; width: 5.246px; height: 8.054px; transform: scaleX(-1); }
.f-member .cv62 { left: 99.157px; top: 13.81px; width: 3.77px; height: 7.30px; transform: rotate(174.19deg) scaleY(-1) skewX(2.78deg); }

/* 결제 내역 / 출석 체크 (auto-layout 카드) */
.f-member .pay, .f-member .att { display: flex; flex-direction: column; gap: 12px; align-items: center; padding: 0 20px 12px; overflow: hidden; }
.f-member .pay { height: 272px; }
.f-member .att { height: 580px; }
.f-member .tagbox { position: relative; width: 298px; height: 24px; flex-shrink: 0; }
.f-member .tag2 { position: absolute; left: 0; top: 0; width: 298px; height: 24px; background: #0073cf; border-radius: 0 0 12px 12px; }
.f-member .tag-t2 { position: absolute; left: 0; top: 0; width: 298px; height: 24px; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 13px; color: #fff; white-space: nowrap; }
.f-member .btn.on { background: #0073cf; border: 0; }
.f-member .btn.on p { color: #fff; }
.f-member .b108, .f-member .b166, .f-member .pbtn { height: 36px; padding: 0; }
.f-member .b108 { width: 108px; }
.f-member .b166 { width: 166px; }
.f-member .pw { width: 342px; display: flex; flex-direction: column; gap: 8px; align-items: center; flex-shrink: 0; }
.f-member .btns3 { width: 340px; display: flex; gap: 8px; }
.f-member .btns2 { width: 342px; display: flex; gap: 8px; justify-content: center; flex-shrink: 0; }
.f-member .pe { width: 342px; display: flex; flex-direction: column; gap: 4px; align-items: center; }
.f-member .tot { position: relative; width: 342px; height: 36px; }
.f-member .tot p { position: absolute; top: 9px; height: 18px; line-height: 18px; font-size: 15px; color: #030303; white-space: nowrap; }
.f-member .tot .pd { left: 0; }
.f-member .tot .pd.red { color: #ff334c; }
.f-member .tot .pa { left: 173.5px; width: 75.28px; text-align: right; }
.f-member .pbtn { position: absolute; top: 0; }
.f-member .pbtn p { position: static; height: auto; line-height: normal; font-size: 13px; }
.f-member .w77 { left: 264.57px; width: 77.43px; }
.f-member .w74 { left: 267.35px; width: 74.65px; }
.f-member .pl { display: block; width: 342px; height: 1px; margin: -0.5px 0; transform: scaleY(-1); }
.f-member .items { width: 342px; display: flex; flex-direction: column; }
.f-member .it { width: 342px; height: 16px; display: flex; justify-content: space-between; }
.f-member .it p { font-size: 13px; line-height: 16px; color: #030303; white-space: pre; }
.f-member .chev { display: block; width: 22.02px; height: 12px; }

.f-member .calb { width: 382px; flex-shrink: 0; display: flex; flex-direction: column; gap: 12px; align-items: center; padding: 12px 23px; border-radius: 20px; background: #f4f5f7; }
.f-member .cal { width: 336px; display: flex; flex-direction: column; gap: 12px; align-items: center; }
.f-member .ch { width: 382px; flex-shrink: 0; padding: 0 64px; display: flex; align-items: center; justify-content: space-between; }
.f-member .ch img { width: 24px; height: 24px; }
.f-member .ch p { font-weight: 700; font-size: 15px; line-height: 18px; color: #030303; white-space: pre; }
.f-member .wd { display: flex; gap: 38px; justify-content: center; }
.f-member .wd p { width: 10px; font-size: 10px; line-height: 12px; color: #b5bcc6; text-align: center; white-space: nowrap; }
.f-member .wd p.sun { color: #ff334c; }
.f-member .wd p.sat { color: #0073cf; }
.f-member .grid { width: 336px; display: grid; grid-template-columns: repeat(7, 48px); row-gap: 12px; }
.f-member .cc { position: relative; width: 48px; height: 36px; display: flex; align-items: center; justify-content: center; }
.f-member .cc::before { content: ""; position: absolute; left: 6px; top: 0; width: 36px; height: 36px; border-radius: 50%; display: none; }
.f-member .cc p { position: relative; width: 22px; height: 18px; line-height: 18px; font-size: 15px; color: #030303; text-align: center; white-space: nowrap; }
.f-member .cc.cal-att::before { display: block; background: #0073cf; }
.f-member .cc.cal-today::before { display: block; background: #f37021; }
.f-member .cc.cal-att p, .f-member .cc.cal-today p { color: #fff; }
.f-member .leg { display: flex; gap: 4px; align-items: center; }
.f-member .lg { position: relative; width: 39px; height: 16px; }
.f-member .lg img { position: absolute; left: 0; top: 0; width: 16px; height: 16px; }
.f-member .lg p { position: absolute; left: 20px; top: 2px; font-size: 10px; line-height: 12px; color: #030303; white-space: nowrap; }
.f-member .lsep { width: 2px; height: 14px; margin: 0 -1px; }
.f-member .tbox { width: 358px; background: #fff; border-radius: 12px; padding: 12px 0; display: flex; flex-direction: column; gap: 8px; align-items: center; }
.f-member .tt { font-weight: 700; font-size: 13px; line-height: 16px; color: #030303; white-space: nowrap; }
.f-member .tl { display: block; width: 320px; height: 1px; margin: -0.5px 0; }
.f-member .tg { width: 358px; padding: 0 12px; display: grid; grid-template-columns: repeat(4, 77.5px); gap: 8px; align-items: start; }
.f-member .tm { height: 34px; padding: 4px; display: flex; flex-direction: column; align-items: center; }
.f-member .tm-a { height: auto; }
.f-member .tm p { font-size: 13px; line-height: 16px; color: #030303; white-space: nowrap; }
