/* SWAPS マイページ用スタイル（styles.css のトークンを流用） */
.mypage-wrap{padding:22px 0 56px;max-width:900px}
.mypage-head{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.mypage-avatar{width:64px;height:64px;border-radius:50%;background:var(--green-soft);
  display:grid;place-items:center;font-size:28px;position:relative;cursor:pointer;overflow:hidden;flex-shrink:0}
.mypage-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.mypage-avatar .avatar-cam{position:absolute;right:0;bottom:0;font-size:15px;line-height:1;
  background:rgba(255,255,255,.9);border-radius:50%;padding:3px;pointer-events:none}
.mypage-head h1{font-size:24px;margin:0}
.mypage-sub{color:var(--muted);font-size:14px;margin:4px 0 0}

.mypage-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mypage-name-row h1{margin:0}
.mypage-logout{margin-left:auto;border:1px solid var(--line-strong);background:#fff;color:#c0392b;
  border-radius:999px;padding:9px 16px;font-size:13px;font-weight:700;cursor:pointer;
  white-space:nowrap;min-height:40px}
.mypage-logout:hover{background:#fdeceb;border-color:#f0c8c2}

.mypage-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:20px}
.mypage-tab{border:0;background:transparent;padding:14px 16px;font-weight:700;font-size:15px;
  color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;min-height:48px}
.mypage-tab.active{color:var(--green);border-bottom-color:var(--green)}

.mypage-empty{padding:44px 16px;text-align:center;color:var(--muted);line-height:1.9;font-size:14px}
.mypage-empty a{color:var(--green);font-weight:700}

/* 出品行 */
.mylist-row{display:flex;gap:14px;align-items:center;border:1px solid var(--line);
  border-radius:var(--radius);padding:14px;margin-bottom:10px;background:#fff}
.mylist-thumb{width:64px;height:64px;border-radius:var(--radius-sm);background:var(--placeholder);
  display:grid;place-items:center;font-size:26px;overflow:hidden;flex-shrink:0;position:relative}
.mylist-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mylist-main{flex:1;min-width:0}
.mylist-title{font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mylist-price{color:var(--ink);font-weight:800;font-size:16px;margin-top:3px}
.mylist-badge{display:inline-block;font-size:11px;font-weight:700;border-radius:999px;padding:4px 10px;margin-top:6px}
.badge-published{background:var(--green-soft);color:var(--green-dark)}
.badge-draft{background:#f0f2f1;color:var(--muted)}
.badge-sold{background:#fbeadf;color:#b0561c}
.badge-review{background:#e9f0fa;color:#2f6bd0}
.mylist-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}
.mylist-actions button{font-size:13px;font-weight:700;border-radius:var(--radius-sm);padding:9px 13px;
  border:1px solid var(--line-strong);background:#fff;color:var(--ink);cursor:pointer;white-space:nowrap;min-height:38px}
.mylist-actions button:hover{border-color:var(--green)}
.mylist-actions button.danger{color:#c0392b}
.mylist-actions button.danger:hover{border-color:#f0c8c2}
.mylist-actions button.go{color:var(--green);border-color:#bfe3d7}

/* プロフィールフォーム */
.profile-form{max-width:520px;display:flex;flex-direction:column;gap:16px}
.profile-form .field label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}
.profile-form .field input,.profile-form .field select{width:100%;border:1px solid var(--line-strong);
  border-radius:var(--radius-sm);padding:12px 13px;outline:none;background:#fff;font-size:16px}
.profile-form .field input:focus,.profile-form .field select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(15,139,109,.12)}
.profile-form .lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.profile-form .lang-grid label{display:flex;align-items:center;gap:9px;font-size:14px;min-width:0;
  border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:11px 12px;cursor:pointer;min-height:46px}
.profile-form .lang-grid label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-form .lang-grid label:has(input:checked){border-color:var(--green);background:var(--green-soft);color:var(--green-dark);font-weight:700}
.profile-form .field .lang-grid input[type="checkbox"],
.profile-form .lang-grid input[type="checkbox"]{
  width:18px;height:18px;min-width:18px;border:0;padding:0;margin:0;
  border-radius:4px;box-shadow:none;accent-color:var(--green);flex-shrink:0;
}
.profile-form .auth-msg{font-size:14px;border-radius:var(--radius-sm);padding:12px 14px;display:none}
.profile-form .auth-msg.show{display:block}
.profile-form .auth-msg.err{background:#fdeceb;color:#b23b32}
.profile-form .auth-msg.ok{background:var(--green-soft);color:var(--green-dark)}

/* 名前横の本人確認バッジ */
.kyc-head-badge{display:inline-block;font-size:11px;font-weight:800;border-radius:999px;
  padding:5px 12px;cursor:pointer;white-space:nowrap;line-height:1.4}
.kyc-head-badge.kyc-verified{background:var(--green-soft);color:var(--green-dark)}
.kyc-head-badge.kyc-unverified{background:#f0f2f1;color:var(--muted)}
.kyc-head-badge.kyc-pending{background:#fdf1e2;color:#b0651a}
.kyc-head-badge.kyc-rejected{background:#fdeceb;color:#b23b32}

/* 本人確認欄 */
.kyc-box{max-width:520px;border:1px solid var(--line);border-radius:var(--radius);
  padding:22px;margin-top:24px;background:#fff}
.kyc-title{font-size:16px;margin:0 0 12px}
.kyc-status{display:inline-block;font-size:12px;font-weight:800;border-radius:999px;padding:6px 13px;margin-bottom:10px}
.kyc-status.kyc-verified{background:var(--green-soft);color:var(--green-dark)}
.kyc-status.kyc-unverified{background:#f0f2f1;color:var(--muted)}
.kyc-status.kyc-pending{background:#fdf1e2;color:#b0651a}
.kyc-status.kyc-rejected{background:#fdeceb;color:#b23b32}
.kyc-lead{font-size:14px;color:var(--ink-2);line-height:1.85;margin:0 0 14px}
.kyc-drop{display:block;border:1px dashed var(--line-strong);background:var(--bg);
  border-radius:var(--radius);padding:22px;text-align:center;position:relative;cursor:pointer}
.kyc-drop strong{display:block;font-size:15px}
.kyc-drop small{display:block;color:var(--muted);margin-top:5px;font-size:12px}
.kyc-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.kyc-note{font-size:12px;color:var(--muted);margin:10px 0 0;line-height:1.7}

/* ------------------------------------------------------------ スマートフォン */
@media(max-width:680px){
  .mypage-wrap{padding:12px 0 56px}
  .mypage-head{margin-bottom:14px;gap:12px}
  .mypage-head h1{font-size:20px}
  .mypage-avatar{width:56px;height:56px;font-size:24px}
  .mypage-name-row{width:100%}
  .mypage-logout{padding:8px 13px;font-size:12px}

  /* タブは折り返さず横スクロール（2段になってズレるのを防ぐ） */
  .mypage-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:0;
    scrollbar-width:none;margin-bottom:14px}
  .mypage-tabs::-webkit-scrollbar{display:none}
  .mypage-tab{padding:13px 13px;font-size:14px;white-space:nowrap;flex-shrink:0}

  /* 出品行：ボタン群は下段に全幅で折り返して整列 */
  .mylist-row{flex-wrap:wrap;padding:12px}
  .mylist-main{flex:1 1 calc(100% - 80px);min-width:0}
  .mylist-actions{flex-direction:row;flex-wrap:wrap;width:100%;justify-content:flex-start;gap:6px}
  .mylist-actions button{flex:0 0 auto;font-size:13px}

  .profile-form{max-width:none}
  .kyc-box{padding:16px;max-width:none}
}
