/* ===== 마이페이지 전용 스코프 — 다른 페이지에 영향 없음(bxsk-mypage 네임스페이스) ===== */
/* [2026-09-10] 좌우 거터 신설 — 마이페이지 래퍼가 벤더 콘텐츠 영역에 좌우 여백 없이 붙던 것 해소
   (wssa 페이지의 .bxsk-container 거터와 동등하게, longhand로 3-value 단축표기 함정 회피 E-049/B13-2) */
.bxsk-mypage { display: flex; flex-direction: column; gap: 20px; padding-left: 16px; padding-right: 16px; }
@media (min-width: 768px) { .bxsk-mypage { padding-left: 20px; padding-right: 20px; } }

/* [신규] 목업 레이아웃 — 좌측 사이드바(220px) + 메인 콘텐츠 */
.bxsk-my-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 24px; align-items: start; }
.bxsk-my-layout > * { min-width: 0; } /* [2026-09-10] 그리드 자식 축소 허용(E-059/B13-2) */
.bxsk-my-main { display: flex; flex-direction: column; gap: 20px; min-width: 0; }

/* 회원 요약(_member_summary 위젯 실마크업 대상, V2 확인된 실클래스만 타겟) — 그라디언트 카드화 */
/* [2026-09-10] 쇼핑몰식 대형 그라디언트 배너 → 슬림 상단 스트립. 협회 마이페이지는 월렛(쿠폰/마일리지/
   예치금)이 핵심이 아니므로 상단에 작은 텍스트로만 표시하고, 본문 카드가 주가 되게 함(사용자 요청). */
.bxsk-mypage .mypage_top_info {
    background: var(--bg-soft, #f4f6fa);
    border: 1px solid var(--border, #edf0f5);
    color: var(--text, #1a2333);
    border-radius: 10px;
    padding: 10px 16px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 8px 20px;
    position: relative; /* 등급혜택 팝업의 absolute 기준점 */
}

/* 회원등급 박스(grade_txt) — 벤더 자체 밝은 배경 박스를 무력화하고 투명+밝은 텍스트로 재선언 */
.bxsk-mypage .mypage_top_info .mypage_top_txt,
.bxsk-mypage .mypage_top_info .grade_txt {
    all: revert;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    color: var(--text-muted, #4d5a6e) !important;
}
.bxsk-mypage .mypage_top_info .grade_txt p {
    margin: 0 !important;
    color: var(--text-muted, #4d5a6e) !important;
    font-size: 12.5px;
    display: inline;
}
.bxsk-mypage .mypage_top_info .grade_txt p + p { margin-left: 3px !important; }
.bxsk-mypage .mypage_top_info .grade_txt span {
    color: var(--wssa-navy, #0a2e6e) !important;
    font-weight: 800;
}
.bxsk-mypage .mypage_top_info .btn_gray_list,
.bxsk-mypage .mypage_top_info .btn_gray_small {
    all: revert;
    display: inline-block;
    margin-top: 0;
}
.bxsk-mypage .mypage_top_info .btn_gray_small {
    padding: 2px 10px !important;
    border-radius: 999px !important;
    background: var(--surface, #fff) !important;
    border: 1px solid var(--border-strong, #c2ccda) !important;
    cursor: pointer;
    margin-left: 6px !important;
}
.bxsk-mypage .mypage_top_info .btn_gray_small em {
    color: var(--text-soft, #6b7a91) !important;
    font-style: normal;
    font-size: 11px;
}

/* 등급혜택 팝업(#lyGrade) — 벤더 기본 마크업 스킨 */
.bxsk-mypage .layer_area { z-index: 40; }
.bxsk-mypage .ly_wrap.grade_layer {
    all: revert;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 16px 40px rgba(15,23,42,.22), 0 2px 8px rgba(15,23,42,.08);
    padding: 18px 20px 16px;
    min-width: 300px;
    max-width: 340px;
    position: relative;
}
.bxsk-mypage .ly_wrap.grade_layer .ly_tit {
    font-size: 14px;
    font-weight: 900;
    color: var(--text);
    padding-bottom: 10px;
    margin-bottom: 6px;
    border-bottom: 1px solid var(--border);
}
.bxsk-mypage .ly_wrap.grade_layer .ly_tit strong { font-weight: 900; }
.bxsk-mypage .ly_wrap.grade_layer .ly_cont { padding: 0; }
.bxsk-mypage .ly_wrap.grade_layer .grade_list { display: flex; flex-direction: column; }
.bxsk-mypage .ly_wrap.grade_layer .grade_list dl {
    all: revert;
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 14px;
    padding: 9px 0;
    margin: 0;
    border-bottom: 1px dashed var(--border);
}
.bxsk-mypage .ly_wrap.grade_layer .grade_list dl:last-child { border-bottom: none; }
.bxsk-mypage .ly_wrap.grade_layer .grade_list dt {
    all: revert;
    color: var(--text-soft);
    font-weight: 700;
    font-size: 12px;
    flex-shrink: 0;
    white-space: nowrap;
}
.bxsk-mypage .ly_wrap.grade_layer .grade_list dd {
    all: revert;
    color: var(--text);
    font-size: 12px;
    text-align: right;
    line-height: 1.5;
}
.bxsk-mypage .ly_wrap.grade_layer .grade_list dd strong { color: var(--wssa-navy); font-weight: 800; }
.bxsk-mypage .ly_wrap.grade_layer .ly_close {
    all: revert;
    position: absolute;
    top: 14px;
    right: 14px;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--bg-soft);
}
.bxsk-mypage .ly_wrap.grade_layer .ly_close:hover { background: var(--border); }
.bxsk-mypage .ly_wrap.grade_layer .ly_close img { width: 11px; height: 11px; display: block; }

/* mypage_top_wallet — 상위(div/ul) 벤더 흰 배경 무력화 */
.bxsk-mypage .mypage_top_info .mypage_top_wallet,
.bxsk-mypage .mypage_top_info .mypage_top_wallet ul {
    all: revert;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.bxsk-mypage .mypage_top_info .mypage_top_wallet ul {
    display: flex !important;
    flex-wrap: wrap;
    gap: 4px 16px !important;
    list-style: none !important;
}
.bxsk-mypage .mypage_top_info .mypage_top_wallet li {
    all: revert;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: baseline;
    gap: 4px;
    font-size: 12px;
    color: var(--text-soft, #6b7a91);
}
.bxsk-mypage .mypage_top_info .mypage_top_wallet em { font-size: 12px; color: var(--text-soft, #6b7a91); font-style: normal; }
.bxsk-mypage .mypage_top_info .mypage_top_wallet strong { font-family: var(--font-mono, monospace); font-size: 12.5px; font-weight: 800; color: var(--wssa-navy, #0a2e6e); }
.bxsk-mypage .mypage_top_info .mypage_top_wallet a { color: inherit; text-decoration: none; }
.bxsk-mypage .mypage_top_info .mypage_top_wallet img { display: none; }

/* 카드 그리드 */
.bxsk-my-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.bxsk-my-card {
    background: var(--surface); border: 1px solid var(--border); border-radius: 12px; overflow: hidden;
}
.bxsk-my-card .head {
    padding: 14px 18px; background: var(--bg-soft); border-bottom: 1px solid var(--border);
    display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap;
}
.bxsk-my-card .head h3 { font-size: 14px; font-weight: 900; color: var(--text); }
.bxsk-my-card .head .sub { font-size: 11.5px; color: var(--text-soft); }
.bxsk-my-card .head .more { margin-left: auto; font-size: 11.5px; font-weight: 700; color: var(--wssa-navy); }
.bxsk-my-card .body { padding: 18px; }
.bxsk-my-card.bxsk-full { grid-column: 1 / -1; }

/* [신규] 준비중 카드 */
.bxsk-soon-card .bxsk-soon-panel {
    background: var(--bg-soft);
    border: 1px dashed var(--border);
    border-radius: 8px;
    padding: 18px 16px;
    font-size: 12px;
    color: var(--text-muted);
    line-height: 1.7;
    text-align: center;
}

/* 심판 활동 통계 박스 */
.bxsk-referee-stats { display: flex; gap: 10px; margin-bottom: 14px; }
.bxsk-stat-box { flex: 1; border-radius: 8px; padding: 16px; text-align: center; color: #fff; }
.bxsk-stat-box.blue { background: var(--wssa-navy); }
.bxsk-stat-box.green { background: #5cb85c; }
.bxsk-stat-box .l { font-size: 12px; margin: 0 0 4px; opacity: .85; }
.bxsk-stat-box .v { font-size: 20px; font-weight: 900; font-family: var(--font-mono); margin: 0; }
.bxsk-my-table { width: 100%; border-collapse: collapse; }
.bxsk-my-table th, .bxsk-my-table td { padding: 10px; border: 1px solid var(--border); text-align: center; font-size: 12.5px; }
.bxsk-my-table td.left { text-align: left; }
.bxsk-my-table thead th { background: var(--bg-soft); }

/* 선수 인증 카드 */
.bxsk-cert-desc { font-size: 12.5px; color: var(--text-muted); line-height: 1.6; margin-bottom: 14px; }
.bxsk-btn-primary {
    display: inline-block; padding: 9px 18px; border-radius: 8px;
    background: var(--wssa-navy); color: #fff; font-weight: 700; font-size: 13px;
}
.bxsk-btn-primary:hover { background: var(--wssa-navy-deep); }

/* [신규] 자격증 이력 미니목록(대시보드 카드용) */
.bxsk-cert-mini-list { display: flex; flex-direction: column; gap: 8px; }
.bxsk-cert-mini-item {
    display: flex; justify-content: space-between; align-items: center; gap: 8px;
    padding: 10px 12px; background: var(--bg-soft); border-radius: 8px;
}
.bxsk-cert-mini-item .n { font-size: 12.5px; font-weight: 700; color: var(--text); }
.bxsk-cert-mini-badge {
    flex-shrink: 0; font-size: 10.5px; font-weight: 800; padding: 3px 10px; border-radius: 999px;
    background: var(--wssa-navy); color: #fff;
}
.bxsk-cert-mini-badge.outline {
    background: transparent; border: 1px solid var(--border); color: var(--text-soft);
}
a.bxsk-cert-mini-badge:hover { background: var(--wssa-navy-deep); }

/* 주문 스테퍼 */
.bxsk-order-stepper ol { display: flex; gap: 8px; list-style: none; }
.bxsk-order-stepper li { flex: 1; text-align: center; background: var(--bg-soft); border-radius: 8px; padding: 14px 8px; }
.bxsk-order-stepper li b { display: block; font-size: 11.5px; color: var(--text-soft); margin-bottom: 6px; }
.bxsk-order-stepper li strong { font-family: var(--font-mono); font-size: 20px; color: var(--text); }
.bxsk-order-stepper li.active { background: rgba(10,46,110,.08); }
.bxsk-order-stepper li.active strong { color: var(--wssa-navy); }
.bxsk-order-case-list ul { display: flex; gap: 16px; margin-top: 12px; font-size: 12px; color: var(--text-muted); }

/* 반응형 — 사이트 표준 900px 브레이크포인트(B18 기준) 재사용 */
@media (max-width: 900px) {
    .bxsk-my-layout { grid-template-columns: 1fr; }
    .bxsk-my-grid { grid-template-columns: 1fr; }
    .bxsk-order-stepper ol { flex-wrap: wrap; }
    .bxsk-order-stepper li { flex: 1 1 30%; }
    .bxsk-mypage .mypage_top_info { flex-direction: column; align-items: flex-start; }
    .bxsk-mypage .ly_wrap.grade_layer { min-width: 260px; max-width: calc(100vw - 40px); }
}


/* ═══════════════════════════════════════════════════════════════════
   [2026-09-18 E-634] 마이페이지 재설계 — 서브페이지 머리(head) 정본화
   ① .wssa-scas-head 는 그동안 협회 서브페이지 9곳에 각자 인라인 <style>로
      중복 정의돼 있었다. 정본을 여기로 올려 신규 페이지는 재정의 없이 쓴다
      (기존 인라인 정의는 값이 동일해 그대로 둬도 충돌 없음, A3).
   ② 벤더 구형 페이지(my_page / my_page_password / hack_out / referee 계열)는
      마크업이 .mypage_zone_tit + h2/h3 라 톤이 어긋났다. 벤더 마크업은 건드리지
      않고(회원정보·탈퇴 플로우 안전) CSS로만 같은 톤으로 맞춘다.
   ═══════════════════════════════════════════════════════════════════ */
.bxsk-mypage .wssa-scas-head { margin-bottom: 18px; }
.bxsk-mypage .wssa-scas-head h1 { font-size: 20px; font-weight: 900; letter-spacing: -0.02em; }
.bxsk-mypage .wssa-scas-head p { margin-top: 4px; font-size: 13px; color: var(--text-soft, #9aa5b5); }

.bxsk-mypage .mypage_zone_tit { margin-bottom: 18px; padding-bottom: 0; border-bottom: 0; }
.bxsk-mypage .mypage_zone_tit h2,
.bxsk-mypage .mypage_zone_tit h3 { font-size: 20px; font-weight: 900; letter-spacing: -0.02em; color: var(--text, #0F141E); }
.bxsk-mypage .mypage_zone_tit h2 span,
.bxsk-mypage .mypage_zone_tit h3 span { display: block; margin-top: 4px; font-size: 13px; font-weight: 500;
    color: var(--text-soft, #9aa5b5); letter-spacing: 0; }


/* ═══════════════════════════════════════════════════════════════════════════
   MP 디자인 시스템 — 마이페이지 공통 컴포넌트 [2026-09-18 E-643]
   ---------------------------------------------------------------------------
   배경: 6개 서브페이지가 각자 인라인 <style>(1,574~4,698자)을 들고 있었고, 같은 UI를
   서로 다른 클래스로 재구현했다(리스트항목 4종·버튼 4종·배지 3종·빈상태 3종·표 2종).
   사용자 지적("다들 제각각이야") → 대시보드(E-635)에서 쓰던 mp- 접두를 전 마이페이지
   공통 컴포넌트로 승격하고 페이지별 인라인 CSS를 제거한다.
   이 파일은 모든 마이페이지 스킨이 이미 로드하므로 추가 배포 대상이 늘지 않는다.
   ※ 파일 하단의 "구클래스 별칭"은 혹시 전환에서 놓친 마크업이 있어도 깨지지 않게 하는
     안전망이다 — 전환이 끝났다고 임의 삭제하지 말 것(A3).
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 페이지 헤드 ── */
.bxsk-mypage .mp-head { margin-bottom: 20px; }
.bxsk-mypage .mp-head h1 { margin: 0; font-size: 21px; font-weight: 900; letter-spacing: -.025em;
    display: flex; align-items: center; gap: 9px; }
.bxsk-mypage .mp-head h1::before { content: ''; width: 4px; height: 19px; border-radius: 1px;
    background: var(--wssa-navy, #0A2E6E); }
.bxsk-mypage .mp-head p { margin: 5px 0 0 13px; font-size: 12.5px; color: var(--text-soft, #6B7A91); }
.bxsk-mypage .mp-head p strong { color: var(--wssa-navy, #0A2E6E); font-weight: 900; }

/* ── 카드 / 섹션 ── */
.bxsk-mypage .mp-card { background: var(--surface, #fff); border: 1px solid var(--border, #DCE3EC);
    border-radius: var(--r-lg, 8px); overflow: hidden; margin-bottom: 14px; }
.bxsk-mypage .mp-card > .bd { padding-top: 18px; padding-bottom: 18px; padding-left: 20px; padding-right: 20px; }
.bxsk-mypage .mp-sec-hd { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.bxsk-mypage .mp-sec-hd h3 { margin: 0; font-size: 14px; font-weight: 900; letter-spacing: -.02em; }
.bxsk-mypage .mp-sec-hd .act { font-size: 12px; font-weight: 800; color: var(--wssa-blue, #1E5BBF); text-decoration: none; }
.bxsk-mypage .mp-sec + .mp-sec { margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--border, #DCE3EC); }

/* ── 리스트 ── */
.bxsk-mypage .mp-list { list-style: none; margin: 0; padding: 0; }
.bxsk-mypage .mp-item { display: flex; align-items: center; gap: 12px;
    padding-top: 13px; padding-bottom: 13px; border-bottom: 1px dashed var(--border, #DCE3EC); }
.bxsk-mypage .mp-item:first-child { padding-top: 2px; }
.bxsk-mypage .mp-item:last-child { border-bottom: 0; padding-bottom: 2px; }
.bxsk-mypage .mp-item .tx { flex: 1; min-width: 0; }
.bxsk-mypage .mp-item .tx b { display: block; font-size: 13.5px; font-weight: 800; letter-spacing: -.01em;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bxsk-mypage .mp-item .tx span { display: block; font-size: 12px; color: var(--text-soft, #6B7A91); margin-top: 2px;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bxsk-mypage .mp-item .val { flex-shrink: 0; font-family: var(--font-mono, monospace); font-size: 14px;
    font-weight: 900; color: var(--wssa-navy, #0A2E6E); }

/* ── 블록형 항목 — 한 줄(.mp-item)로 안 되는, 폼·부가정보가 붙는 목록용 ── */
.bxsk-mypage .mp-blocks { display: flex; flex-direction: column; gap: 12px; }
.bxsk-mypage .mp-block { border: 1px solid var(--border, #DCE3EC); border-radius: var(--r-lg, 8px);
    padding-top: 16px; padding-bottom: 16px; padding-left: 18px; padding-right: 18px; }
.bxsk-mypage .mp-block > .hd { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.bxsk-mypage .mp-block > .hd .dt { font-size: 11px; color: var(--text-soft, #6B7A91); margin-left: auto; }
.bxsk-mypage .mp-block > .ti { margin: 0 0 4px; font-size: 15px; font-weight: 800; letter-spacing: -.02em; }
.bxsk-mypage .mp-block > .sub { margin: 0 0 10px; font-size: 12.5px; color: var(--text-muted, #4D5A6E); }
.bxsk-mypage .mp-block > .act { display: inline-block; font-size: 12px; font-weight: 800;
    color: var(--wssa-blue, #1E5BBF); text-decoration: none; }

/* 라벨-값 한 줄(입금액·참가코드 등) */
.bxsk-mypage .mp-kv { display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
    background: var(--bg-soft, #F7F9FC); border-radius: var(--r-md, 4px);
    padding-top: 10px; padding-bottom: 10px; padding-left: 12px; padding-right: 12px; margin-bottom: 10px; }
.bxsk-mypage .mp-kv .k { font-size: 11.5px; font-weight: 800; color: var(--text-soft, #6B7A91); }
.bxsk-mypage .mp-kv .v { font-family: var(--font-mono, monospace); font-size: 14px; font-weight: 900;
    color: var(--wssa-navy, #0A2E6E); }
.bxsk-mypage .mp-kv .note { font-size: 11.5px; color: var(--text-muted, #4D5A6E); margin-left: auto; }

/* 폼 요소(환불 신청 등) */
.bxsk-mypage .mp-form { margin-top: 10px; padding-top: 12px; border-top: 1px dashed var(--border, #DCE3EC); }
.bxsk-mypage .mp-form .st { font-size: 12.5px; font-weight: 800; color: var(--wssa-yellow, #FFC72C); }
.bxsk-mypage .mp-form .st.deadline { color: var(--text-soft, #6B7A91); font-weight: 600; }
.bxsk-mypage .mp-form .rsn { font-size: 12px; color: var(--text-muted, #4D5A6E); margin-top: 3px; }
.bxsk-mypage .mp-textarea { width: 100%; min-height: 62px; border: 1px solid var(--border, #DCE3EC);
    border-radius: var(--r-md, 4px); padding: 10px 12px; font-size: 12.5px; font-family: inherit;
    margin-bottom: 8px; resize: vertical; }

/* 플래시 메시지 */
.bxsk-mypage .mp-flash { padding-top: 12px; padding-bottom: 12px; padding-left: 14px; padding-right: 14px;
    border-radius: var(--r-md, 4px); font-size: 13px; font-weight: 700; margin-bottom: 16px; }
.bxsk-mypage .mp-flash.ok { background: rgba(31,138,91,.1); color: var(--wssa-green, #1F8A5B); }
.bxsk-mypage .mp-flash.error { background: rgba(215,38,61,.08); color: var(--wssa-red, #D7263D); }

/* ── 상태 배지 ── */
.bxsk-mypage .mp-badge { flex-shrink: 0; display: inline-flex; align-items: center; font-size: 10.5px; font-weight: 900;
    padding: 4px 9px; border-radius: 999px; white-space: nowrap;
    background: var(--bg-muted, #EEF2F7); color: var(--text-muted, #4D5A6E); }
.bxsk-mypage .mp-badge.wait { background: rgba(255,199,44,.2); color: #8A6300; }
.bxsk-mypage .mp-badge.ok { background: rgba(31,138,91,.12); color: var(--wssa-green, #1F8A5B); }
.bxsk-mypage .mp-badge.no { background: rgba(215,38,61,.1); color: var(--wssa-red, #D7263D); }
.bxsk-mypage .mp-badge.info { background: rgba(30,91,191,.12); color: var(--wssa-blue, #1E5BBF); }

/* ── 버튼 ── */
.bxsk-mypage .mp-btn { flex-shrink: 0; display: inline-block; font-size: 12px; font-weight: 800; text-decoration: none;
    padding: 8px 14px; border-radius: var(--r-md, 4px); border: 1px solid var(--wssa-navy, #0A2E6E);
    color: var(--wssa-navy, #0A2E6E); background: #fff; cursor: pointer; }
.bxsk-mypage .mp-btn.fill { background: var(--wssa-navy, #0A2E6E); color: #fff; }
.bxsk-mypage .mp-btn.danger { border-color: var(--wssa-red, #D7263D); color: var(--wssa-red, #D7263D); }
.bxsk-mypage .mp-btn.sm { padding: 6px 11px; font-size: 11.5px; }

/* ── 알림 박스 ── */
.bxsk-mypage .mp-note { display: flex; align-items: center; gap: 13px; flex-wrap: wrap;
    padding-top: 15px; padding-bottom: 15px; padding-left: 17px; padding-right: 17px;
    border-radius: var(--r-lg, 8px); border: 1px solid var(--border, #DCE3EC); background: var(--bg-soft, #F7F9FC); }
.bxsk-mypage .mp-note .ic { flex: 0 0 auto; width: 30px; height: 30px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 900;
    background: var(--gray-200, #DCE3EC); color: var(--text-muted, #4D5A6E); }
.bxsk-mypage .mp-note .tx { flex: 1 1 220px; min-width: 0; }
.bxsk-mypage .mp-note .tx b { display: block; font-size: 13.5px; }
.bxsk-mypage .mp-note .tx p { margin: 2px 0 0; font-size: 12px; color: var(--text-muted, #4D5A6E); }
.bxsk-mypage .mp-note.ok { border-color: rgba(31,138,91,.3); background: rgba(31,138,91,.05); }
.bxsk-mypage .mp-note.ok .ic { background: var(--wssa-green, #1F8A5B); color: #fff; }
.bxsk-mypage .mp-note.urgent { border-color: rgba(215,38,61,.3); background: rgba(215,38,61,.05); }
.bxsk-mypage .mp-note.urgent .ic { background: var(--wssa-red, #D7263D); color: #fff; }
.bxsk-mypage .mp-note.warn { border-color: rgba(255,199,44,.45); background: rgba(255,199,44,.1); }
.bxsk-mypage .mp-note.warn .ic { background: var(--wssa-yellow, #FFC72C); color: #2B2000; }

/* ── 빈 상태 ── */
.bxsk-mypage .mp-empty { padding-top: 38px; padding-bottom: 38px; text-align: center; }
.bxsk-mypage .mp-empty .ic { font-size: 30px; margin-bottom: 10px; opacity: .65; }
.bxsk-mypage .mp-empty b { display: block; font-size: 14.5px; font-weight: 900; margin-bottom: 5px; }
.bxsk-mypage .mp-empty p { margin: 0 auto 16px; font-size: 12.5px; color: var(--text-soft, #6B7A91);
    max-width: 400px; line-height: 1.7; }

/* ── 통계 타일 ── */
.bxsk-mypage .mp-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 10px; }
.bxsk-mypage .mp-tile { border: 1px solid var(--border, #DCE3EC); border-top: 3px solid var(--wssa-navy, #0A2E6E);
    border-radius: var(--r-lg, 8px); padding-top: 14px; padding-bottom: 14px; padding-left: 15px; padding-right: 15px; }
.bxsk-mypage .mp-tile.b { border-top-color: var(--wssa-blue, #1E5BBF); }
.bxsk-mypage .mp-tile.g { border-top-color: var(--wssa-green, #1F8A5B); }
.bxsk-mypage .mp-tile.y { border-top-color: var(--wssa-yellow, #FFC72C); }
.bxsk-mypage .mp-tile.p { border-top-color: var(--wssa-purple, #6D3FA6); }
.bxsk-mypage .mp-tile .l { font-size: 11px; font-weight: 800; color: var(--text-soft, #6B7A91); }
.bxsk-mypage .mp-tile .v { font-family: var(--font-mono, monospace); font-size: 22px; font-weight: 900;
    letter-spacing: -.03em; margin-top: 2px; }
.bxsk-mypage .mp-tile .v small { font-size: 11px; font-weight: 700; color: var(--text-soft, #6B7A91);
    margin-left: 2px; font-family: var(--font-sans, sans-serif); }

/* ── 데이터 표 ── */
.bxsk-mypage .mp-tablewrap { overflow-x: auto; }
.bxsk-mypage .mp-table { width: 100%; border-collapse: collapse; font-size: 12.5px; min-width: 520px; }
.bxsk-mypage .mp-table th, .bxsk-mypage .mp-table td { padding: 10px 8px;
    border-bottom: 1px solid var(--border, #DCE3EC); text-align: center; }
.bxsk-mypage .mp-table thead th { font-size: 11px; color: var(--text-soft, #6B7A91); font-weight: 800;
    background: var(--bg-soft, #F7F9FC); }
.bxsk-mypage .mp-table td.l, .bxsk-mypage .mp-table th.l { text-align: left; }
.bxsk-mypage .mp-table .t { font-family: var(--font-mono, monospace); font-weight: 700; }

/* ── 히어로(급수 등 단일 강조) ── */
.bxsk-mypage .mp-hero { background: linear-gradient(135deg, var(--wssa-navy, #0A2E6E) 0%,
    var(--wssa-navy-deep, #04153A) 70%, #02102B 100%); color: #fff; border-radius: var(--r-xl, 12px);
    padding-top: 22px; padding-bottom: 22px; padding-left: 24px; padding-right: 24px;
    display: flex; align-items: center; gap: 22px; flex-wrap: wrap; margin-bottom: 16px; }
.bxsk-mypage .mp-hero .rank { flex: 0 0 auto; width: 86px; height: 86px; border-radius: 50%;
    background: rgba(255,255,255,.12); border: 2px solid rgba(255,255,255,.45);
    display: flex; align-items: baseline; justify-content: center; gap: 2px; }
.bxsk-mypage .mp-hero .rank .n { font-family: var(--font-mono, monospace); font-size: 40px; font-weight: 900; line-height: 1; }
.bxsk-mypage .mp-hero .rank .u { font-size: 16px; font-weight: 800; }
.bxsk-mypage .mp-hero .info { flex: 1 1 230px; min-width: 0; }
.bxsk-mypage .mp-hero .eyebrow { font-size: 10.5px; font-weight: 900; letter-spacing: .12em; color: var(--wssa-yellow, #FFC72C); }
.bxsk-mypage .mp-hero h2 { margin: 4px 0 6px; font-size: 20px; font-weight: 900; letter-spacing: -.025em; color: #fff; }
.bxsk-mypage .mp-hero .meta { font-size: 12.5px; color: rgba(255,255,255,.78); line-height: 1.7; }
.bxsk-mypage .mp-hero .mp-btn { background: #fff; border-color: #fff; color: var(--wssa-navy, #0A2E6E); margin-top: 12px; }

@media (max-width: 600px) {
    .bxsk-mypage .mp-item { flex-wrap: wrap; }
    .bxsk-mypage .mp-item .tx { flex-basis: 100%; order: 2; }
    .bxsk-mypage .mp-item .mp-btn, .bxsk-mypage .mp-item .val { order: 3; margin-left: auto; }
    .bxsk-mypage .mp-hero { gap: 16px; }
    .bxsk-mypage .mp-hero .rank { width: 70px; height: 70px; }
    .bxsk-mypage .mp-hero .rank .n { font-size: 32px; }
}

/* ═══ 구클래스 별칭(안전망) — 전환에서 놓친 마크업 보호. A3에 따라 임의 삭제 금지 ═══ */
.bxsk-mypage .wssa-scas-head { margin-bottom: 20px; }
.bxsk-mypage .wssa-scas-empty { padding-top: 38px; padding-bottom: 38px; text-align: center; }
.bxsk-mypage .wssa-scas-empty p { font-size: 12.5px; color: var(--text-soft, #6B7A91); margin: 0 auto 14px; max-width: 400px; }
.bxsk-mypage .wssa-scas-info { padding-top: 30px; padding-bottom: 30px; text-align: center;
    font-size: 13px; color: var(--text-muted, #4D5A6E); }
.bxsk-mypage .wssa-scas-info a { color: var(--wssa-blue, #1E5BBF); font-weight: 700; }
.bxsk-mypage .wssa-grade-histwrap, .bxsk-mypage .wssa-myr-history-wrap { overflow-x: auto; }
.bxsk-mypage .wssa-grade-hist, .bxsk-mypage .wssa-myr-history { width: 100%; border-collapse: collapse;
    font-size: 12.5px; min-width: 520px; }
.bxsk-mypage .wssa-grade-hist th, .bxsk-mypage .wssa-grade-hist td,
.bxsk-mypage .wssa-myr-history th, .bxsk-mypage .wssa-myr-history td { padding: 10px 8px;
    border-bottom: 1px solid var(--border, #DCE3EC); text-align: center; }
.bxsk-mypage .wssa-grade-hist thead th, .bxsk-mypage .wssa-myr-history thead th { font-size: 11px;
    color: var(--text-soft, #6B7A91); font-weight: 800; background: var(--bg-soft, #F7F9FC); }
.bxsk-mypage .wssa-grade-hist .t, .bxsk-mypage .wssa-myr-history .time { font-family: var(--font-mono, monospace); font-weight: 700; }


/* ════════════════════════════════════════════════════════════════════════
   [2026-10-13 E-1106] 마이페이지 리뉴얼 — 클로드 디자인 「마이페이지 리뉴얼 시안」(사용자 승인)
   ---------------------------------------------------------------------------
   공통 틀: 빵부스러기 → 제목·한 줄 설명(+주요 버튼) → 숫자 요약 줄 → 번호 섹션 → 다음 단계가 있는 빈 화면.
   토큰: 남색 #0A2E6E · 바탕 #F3F5F9 · 글자 #1B2433 · 노랑 강조 #FFC72C · 숫자 IBM Plex Mono.
   위쪽 E-643 규칙은 지우지 않고(A3) 같은 선택자를 여기서 덮는다 — 이 구역이 정본.
   ════════════════════════════════════════════════════════════════════════ */
.bxsk-mypage.bxsk-scope { background: transparent; }
.bxsk-mypage .bxsk-my-layout { grid-template-columns: 232px minmax(0, 1fr); gap: 28px; }
.bxsk-mypage .bxsk-my-main { gap: 18px; }

/* ── 머리 ── */
.bxsk-mypage .mp-head { margin-bottom: 4px; display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; }
.bxsk-mypage .mp-head > .tx { flex: 1 1 360px; min-width: 0; }
.bxsk-mypage .mp-crumb { display: block; font-size: 13px; color: #6A7487; margin-bottom: 4px; }
.bxsk-mypage .mp-crumb a { color: #6A7487; text-decoration: none; }
.bxsk-mypage .mp-crumb a:hover { color: #0A2E6E; }
.bxsk-mypage .mp-head h1 { font-size: 28px; color: #0A2E6E; letter-spacing: -.03em; line-height: 1.3; display: block; }
.bxsk-mypage .mp-head h1::before { content: none; display: none; }
.bxsk-mypage .mp-head p { margin: 6px 0 0; font-size: 14px; color: #4A5468; line-height: 1.6; }
.bxsk-mypage .mp-head .mp-btn { min-height: 44px; display: inline-flex; align-items: center; font-size: 14px; border-radius: 10px; }

/* ── 숫자 요약 줄 ── */
.bxsk-mypage .mp-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; }
.bxsk-mypage .mp-stat { background: #fff; border: 1px solid #DCE2EC; border-radius: 14px;
    padding-top: 14px; padding-bottom: 14px; padding-left: 16px; padding-right: 16px; text-decoration: none; color: #1B2433; display: block; }
.bxsk-mypage .mp-stat > span { display: block; font-size: 13px; color: #566074; }
.bxsk-mypage .mp-stat > b { display: block; margin-top: 2px; font-size: 26px; font-weight: 900; color: #0A2E6E;
    font-family: 'IBM Plex Mono', var(--font-mono, monospace); letter-spacing: -.02em; }
.bxsk-mypage .mp-stat > b small { font-family: 'Noto Sans KR', sans-serif; font-size: 14px; font-weight: 500; margin-left: 2px; }
.bxsk-mypage .mp-stat > em { display: block; font-style: normal; font-size: 12px; color: #566074; margin-top: 2px; }
.bxsk-mypage .mp-stat.warn > b { color: #B45309; }
.bxsk-mypage .mp-stat.alert > em { color: #A8001E; }
.bxsk-mypage a.mp-stat:hover { border-color: #0A2E6E; }

/* ── 신청 내역 하위 탭 ── */
.bxsk-mypage .mp-subtabs { display: flex; gap: 6px; flex-wrap: wrap; }
.bxsk-mypage .mp-subtabs a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; box-sizing: border-box;
    padding-left: 16px; padding-right: 16px; border-radius: 22px; border: 2px solid #C7CFDC; background: #fff;
    font-size: 14px; font-weight: 700; color: #1B2433; text-decoration: none; }
.bxsk-mypage .mp-subtabs a:hover { border-color: #0A2E6E; }
.bxsk-mypage .mp-subtabs a.on { background: #0A2E6E; border-color: #0A2E6E; color: #fff; }
.bxsk-mypage .mp-subtabs em { font-style: normal; min-width: 20px; height: 20px; border-radius: 10px; box-sizing: border-box;
    padding-left: 6px; padding-right: 6px; background: #D7263D; color: #fff; font-size: 11px; font-weight: 900;
    display: inline-flex; align-items: center; justify-content: center; }
.bxsk-mypage .mp-subtabs a.on em { background: #FFC72C; color: #0A2E6E; }

/* ── 카드 톤 통일 ── */
.bxsk-mypage .bxsk-my-card { border-radius: 16px; border-color: #DCE2EC; }
.bxsk-mypage .mp-btn { border-radius: 8px; }
.bxsk-mypage .mp-btn.lg { min-height: 50px; display: inline-flex; align-items: center; justify-content: center;
    padding-left: 22px; padding-right: 22px; font-size: 15px; border-radius: 12px; }

/* ── 선수 연결 전 안내(wssaMypageUnlinkedHtml · 홈) ── */
.bxsk-mypage .mp-link { text-align: left; padding-top: 8px; padding-bottom: 8px; display: flex; flex-direction: column; gap: 12px; }
.bxsk-mypage .mp-link-eb { margin: 0; font-size: 11px; font-weight: 700; letter-spacing: .14em; color: #0A2E6E; }
.bxsk-mypage .mp-link h2 { margin: 0; font-size: 21px; font-weight: 900; line-height: 1.4; color: #0A2E6E; letter-spacing: -.02em; }
.bxsk-mypage .mp-link-tx { margin: 0; font-size: 14px; color: #4A5468; line-height: 1.7; max-width: 620px; }
.bxsk-mypage .mp-link > .mp-btn { align-self: flex-start; }
.bxsk-mypage .mp-steps { list-style: none; margin: 4px 0 0; padding: 0; display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; counter-reset: mpstep; }
.bxsk-mypage .mp-steps li { counter-increment: mpstep; background: #F3F5F9; border-radius: 12px;
    padding-top: 12px; padding-bottom: 12px; padding-left: 14px; padding-right: 14px; font-size: 13.5px; line-height: 1.5; }
.bxsk-mypage .mp-steps li::before { content: counter(mpstep); display: inline-flex; width: 24px; height: 24px; border-radius: 50%;
    align-items: center; justify-content: center; background: #0A2E6E; color: #fff; font-size: 12px; font-weight: 900; margin-bottom: 6px; }
.bxsk-mypage .mp-steps li b { display: block; }
.bxsk-mypage .mp-steps li span { display: block; font-size: 12px; color: #566074; }
.bxsk-mypage .mp-link-alt { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; background: #EEF2F8; border-radius: 12px;
    padding-top: 14px; padding-bottom: 14px; padding-left: 16px; padding-right: 16px; }
.bxsk-mypage .mp-link-alt p { flex: 1 1 260px; margin: 0; font-size: 13px; line-height: 1.6; }
.bxsk-mypage .mp-link-alt p b { display: block; font-size: 14px; }
.bxsk-mypage .mp-link-alt p span { color: #4A5468; }
.bxsk-mypage .mp-link-alt .mp-btn { min-height: 44px; display: inline-flex; align-items: center; font-size: 14px; }

/* ── 홈: 메뉴 요약 타일 + 바로가기 ── */
.bxsk-mypage .mp-sum { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.bxsk-mypage .mp-sum a.t, .bxsk-mypage .mp-sum .go { background: #fff; border: 1px solid #DCE2EC; border-radius: 14px;
    padding-top: 16px; padding-bottom: 16px; padding-left: 18px; padding-right: 18px; text-decoration: none; color: #1B2433;
    display: flex; flex-direction: column; gap: 4px; min-height: 120px; box-sizing: border-box; }
.bxsk-mypage .mp-sum a.t:hover { border-color: #0A2E6E; }
.bxsk-mypage .mp-sum .k { font-size: 12px; font-weight: 700; color: #0A2E6E; }
.bxsk-mypage .mp-sum .k i { font-style: normal; font-family: 'IBM Plex Mono', var(--font-mono, monospace); font-weight: 500; color: #6A7487; margin-right: 4px; }
.bxsk-mypage .mp-sum .v { font-size: 20px; font-weight: 900; letter-spacing: -.02em; }
.bxsk-mypage .mp-sum .s { font-size: 12.5px; color: #566074; }
.bxsk-mypage .mp-sum .s.alert { color: #A8001E; font-weight: 700; }
.bxsk-mypage .mp-sum .m { margin-top: auto; font-size: 13px; font-weight: 700; color: #0A2E6E; }
.bxsk-mypage .mp-sum .go { background: #EEF2F8; border-color: #EEF2F8; }
.bxsk-mypage .mp-sum .go b { font-size: 14px; margin-bottom: 4px; }
.bxsk-mypage .mp-sum .go a { font-size: 13.5px; font-weight: 700; color: #0A2E6E; text-decoration: none; min-height: 30px; display: flex; align-items: center; }
.bxsk-mypage .mp-sum .go a:hover { text-decoration: underline; }
.bxsk-mypage .mp-h2 { margin: 8px 0 0; font-size: 18px; font-weight: 900; display: flex; align-items: center; gap: 8px; color: #1B2433; }
.bxsk-mypage .mp-h2 i { font-style: normal; font-family: 'IBM Plex Mono', var(--font-mono, monospace); font-size: 14px; color: #0A2E6E; }
.bxsk-mypage .mp-h2 .cnt { font-size: 12px; font-weight: 900; background: #D7263D; color: #fff; border-radius: 10px;
    padding-top: 1px; padding-bottom: 1px; padding-left: 7px; padding-right: 7px; }

@media (max-width: 900px) {
    .bxsk-mypage .bxsk-my-layout { grid-template-columns: 1fr; gap: 14px; }
    .bxsk-mypage .mp-head h1 { font-size: 22px; }
    .bxsk-mypage .mp-head p { font-size: 13px; }
    .bxsk-mypage .mp-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .bxsk-mypage .mp-stat > b { font-size: 22px; }
    .bxsk-mypage .mp-subtabs { flex-wrap: nowrap; overflow-x: auto; white-space: nowrap; scrollbar-width: none; }
    .bxsk-mypage .mp-subtabs::-webkit-scrollbar { display: none; }
    .bxsk-mypage .mp-subtabs a { flex: 0 0 auto; }
    .bxsk-mypage .mp-sum { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .bxsk-mypage .mp-sum .go { grid-column: 1 / -1; min-height: 0; }
    .bxsk-mypage .mp-sum a.t { min-height: 104px; padding-left: 14px; padding-right: 14px; }
    .bxsk-mypage .mp-sum .v { font-size: 17px; }
    .bxsk-mypage .mp-steps { grid-template-columns: 1fr; }
    .bxsk-mypage .mp-btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .bxsk-mypage .mp-link > .mp-btn { align-self: stretch; }
    .bxsk-mypage .mp-link-alt .mp-btn { flex: 1 1 0; }
}

/* [2026-10-13 E-1106b] 머리 위 빈 공간 제거 — 벤더 layout.css 의 .sub_content { padding-top:45px } 가
   마이페이지에만 남아 있었다(협회 서브페이지는 bxsk.css 가 .sub_content:has(.bxsk-subpage) 로 0 처리).
   같은 방식으로 0 으로 만들고, 헤더와의 간격은 마이페이지 래퍼가 직접 갖는다(PC 24px / 휴대폰 12px). */
.sub_content:has(.bxsk-mypage) { padding-top: 0 !important; }
.bxsk-mypage { padding-top: 24px; }
@media (max-width: 900px) { .bxsk-mypage { padding-top: 12px; } }

/* [2026-10-13 E-1106c] 목록 항목의 버튼 묶음 — 자격 · 인증 협회 자격증 카드가 인라인 세로 스택(align-items:flex-end)이라
   휴대폰에서 버튼 3개가 제목 위에 들쭉날쭉 쌓였다(사용자 캡처). PC는 오른쪽 세로 정렬 유지, 휴대폰은 제목 아래 가로 줄로.
   또 .tx span{display:block} 이 안쪽 상태 배지까지 한 줄 전체로 늘려서, 배지는 글자 폭으로 되돌린다. */
.bxsk-mypage .mp-item .mp-acts { display: flex; flex-direction: column; gap: 6px; align-items: flex-end; flex-shrink: 0; }
.bxsk-mypage .mp-item .tx .mp-badge { display: inline-flex; margin-top: 0; margin-left: 4px; vertical-align: middle; }
@media (max-width: 900px) {
    .bxsk-mypage .mp-item .mp-acts { order: 3; flex-basis: 100%; flex-direction: row; flex-wrap: wrap; align-items: stretch; }
    .bxsk-mypage .mp-item .mp-acts .mp-btn { flex: 1 1 140px; margin-left: 0; font-size: 13px; }
    .bxsk-mypage .mp-item .mp-acts .mp-btn.danger { flex-basis: 100%; }
    .bxsk-mypage .mp-item .mp-acts .mp-badge { align-self: center; }
}

/* [2026-10-13 E-1106d] 휴대폰 버튼 정렬 전수 정리 — 사용자 지적("교육과정 보기·발급 신청·내역 보기 버튼들도 거슬린다, 모바일 전수 확인").
   원칙: 휴대폰에서 '혼자 서 있는 실행 버튼'은 전부 카드 폭을 꽉 채우는 46px 한 줄(가운데 정렬 · 왼쪽 정렬 · 오른쪽 작은 버튼이
   화면마다 섞여 있던 것을 하나로). 나란히 두 개면 반씩. 글자 링크(+ 새 교육 신청 · 전체보기 등)는 누르기 쉽게 높이만 40px.
   PC 배치는 건드리지 않는다(단 아래 구역 구분선 1줄은 PC 공통). */
/* 자격 · 인증 허브: 첫 구역(협회 자격증)이 .mp-sec 가 아니라 h3+.mp-list 로 시작해서, 다음 .mp-sec 와의 구분선/간격이 빠져 있었다 */
.bxsk-mypage .mp-list + .mp-sec { margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--border, #DCE3EC); }
@media (max-width: 900px) {
    .bxsk-mypage .mp-btn { min-height: 46px; box-sizing: border-box; padding-left: 14px; padding-right: 14px; font-size: 14px; text-align: center; }
    .bxsk-mypage .mp-btn.sm { font-size: 13px; }
    /* 머리 · 빈 화면 · 알림 · 히어로 · 폼의 단독 버튼 → 한 줄 꽉 */
    .bxsk-mypage .mp-head > .mp-btn,
    .bxsk-mypage .mp-empty .mp-btn,
    .bxsk-mypage .mp-note .mp-btn,
    .bxsk-mypage .mp-hero .mp-btn,
    .bxsk-mypage .mp-form .mp-btn,
    .bxsk-mypage .mp-block > .mp-btn { display: flex; width: 100%; flex: 1 1 100%; margin-left: 0; margin-right: 0; }
    .bxsk-mypage .mp-empty { padding-top: 24px; padding-bottom: 20px; }
    .bxsk-mypage .mp-empty p { margin-bottom: 14px; }
    /* 알림 박스: 아이콘+글은 한 줄, 버튼은 그 아래 */
    .bxsk-mypage .mp-note { gap: 10px 12px; }
    .bxsk-mypage .mp-note .tx { flex: 1 1 calc(100% - 44px); }
    /* 목록 항목에 바로 붙은 버튼(오른쪽 작은 버튼) → 제목 아래 한 줄 */
    .bxsk-mypage .mp-item > .mp-btn { order: 3; flex: 1 1 100%; display: flex; margin-left: 0; }
    .bxsk-mypage .mp-item > .mp-btn + .mp-btn { flex-basis: calc(50% - 6px); }
    /* 섹션 머리의 글자 링크 — 높이만 확보 */
    .bxsk-mypage .mp-sec-hd { flex-wrap: wrap; }
    .bxsk-mypage .mp-sec-hd .act,
    .bxsk-mypage .bxsk-my-card .head .more { display: inline-flex; align-items: center; min-height: 40px; }
    /* 홈: 처리할 일 버튼 · 접어 둔 옛 카드 버튼 */
    .bxsk-mypage .mp-todo li .mp-btn { order: 3; flex: 1 1 100%; display: flex; justify-content: center; align-items: center; margin-left: 0; }
    .bxsk-mypage .bxsk-btn-primary { display: flex; width: 100%; min-height: 46px; box-sizing: border-box; justify-content: center; align-items: center; }
    /* 심판 활동 히어로 안 글자 링크 */
    .bxsk-mypage .rfm-sh a { display: inline-flex; align-items: center; min-height: 40px; }
}
/* 버튼 줄(.mp-btnrow) — 컨트롤러가 인라인 flex 로 만들던 나란한 버튼 묶음을 공용 클래스로(기록 신청·연결 · 본인 확인) */
.bxsk-mypage .mp-btnrow { display: flex; gap: 8px; flex-wrap: wrap; }
.bxsk-mypage .mp-btnrow > form { margin: 0; }
@media (max-width: 900px) {
    .bxsk-mypage .mp-btnrow { width: 100%; }
    /* E-1106e: 180px — 두 버튼 글자가 길면(이름 일치 기록 본인 확인 →) 반반 대신 위아래 한 줄씩 */
    .bxsk-mypage .mp-btnrow > .mp-btn,
    .bxsk-mypage .mp-btnrow > form { flex: 1 1 180px; }
    .bxsk-mypage .wssa-cir-cert .mp-btn { display: flex; width: 100%; } /* E-1106e 실물 자격증 신청 카드 */
    .bxsk-mypage .mp-btnrow > form > button { width: 100%; min-height: 46px; }
    /* 자격증 갱신 신청 목록(.mp-item-main / .mp-item-side) */
    .bxsk-mypage .mp-item-main { flex: 1 1 100%; min-width: 0; }
    .bxsk-mypage .mp-item-main > b { display: block; }
    .bxsk-mypage .mp-item-side { flex: 1 1 100%; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
    .bxsk-mypage .mp-item-side .mp-btn { flex: 1 1 140px; }
    /* 옛 공용 버튼(.bxsk-btn · .bxsk-btn-outline)이 남은 화면 — 실물 자격증 신청 · 본인 확인 */
    .bxsk-mypage .bxsk-btn, .bxsk-mypage .bxsk-btn-outline { display: flex; width: 100%; min-height: 46px; box-sizing: border-box; justify-content: center; align-items: center; }
    .bxsk-mypage p.mp-note a { display: inline-flex; align-items: center; min-height: 36px; }
}
