[data-mypage-link][hidden], #mypage [hidden], #member-roster-editor [hidden] {display:none!important}
.mypage-mobile {display:none}
.mobile-account-actions .mypage-mobile {align-items:center;justify-content:center;min-height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px;font-size:13px}
#mypage, #member-roster-editor {max-width:1320px;margin:auto}
.mypage-intro {color:var(--muted);line-height:1.7}
.mypage-toolbar, .mypage-card-head, .mypage-actions {display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.mypage-toolbar {margin:28px 0}
.mypage-card {background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;margin:18px 0}
.mypage-card h3 {margin:8px 0;font-size:23px;line-height:1.4}
.mypage-card p {line-height:1.7}
.mypage-status {border-radius:99px;background:#e0f0e6;color:#17623f;padding:7px 13px;font-size:13px;font-weight:800}
.mypage-card details {margin:22px 0 10px}
.mypage-card summary {cursor:pointer;font-weight:800;padding:12px 0}
.mypage-table-wrap {overflow:auto}
.mypage-table {width:100%;border-collapse:collapse;white-space:nowrap;text-align:left}
.mypage-table th,.mypage-table td {padding:13px 14px;border-bottom:1px solid var(--line)}
.mypage-table th {background:#f3f6f2;font-size:13px}
.mypage-message {padding:22px;background:#f0f5ee;border-radius:12px;line-height:1.8;white-space:pre-line}
.mypage-message:empty {display:none}
.mypage-message.error {color:#a12419;background:#fff0ec}
.roster-edit-mode #apply > :not(#member-roster-editor) {display:none!important}
#member-roster-editor h2 {font-size:clamp(28px,4vw,42px);margin:15px 0}
.mypage-edit-row {display:grid;grid-template-columns:35px 1.3fr 1fr 1fr 1fr 60px;gap:10px;align-items:end;margin:16px 0}
.mypage-edit-row label {font-size:12px;font-weight:700;min-width:0}
.mypage-edit-row input,.mypage-edit-row select {width:100%;min-width:0;min-height:46px;border:1px solid #cdd7cf;border-radius:9px;background:#fff;padding:9px;margin-top:7px}
.mypage-edit-row button {min-height:46px;border:1px solid #d3dcd5;background:#f6f7f3;border-radius:9px;cursor:pointer}
.mypage-edit-row button:disabled {opacity:.4;cursor:default}
.mypage-edit-number {align-self:end;line-height:46px;font-weight:800}
.mypage-total {padding:20px 0;font-size:19px;line-height:1.8;font-weight:800}
.mypage-total small {display:block;font-size:13px;color:#68736d;font-weight:400}
#mypage-save-status {margin:18px 0}
@media(max-width:820px){.mypage-mobile:not([hidden]) {display:block;padding:20px 12px;font-weight:800}.mypage-edit-row {grid-template-columns:30px 1fr 1fr}.mypage-edit-row label:nth-of-type(3){grid-column:2}.mypage-edit-row button{grid-column:3}.mypage-card{padding:18px}.mypage-card h3{font-size:20px}.mypage-table th,.mypage-table td{padding:12px 9px}}
