
.mem { padding-bottom: calc(48px + env(safe-area-inset-bottom, 0px)); padding-left: max(16px, env(safe-area-inset-left, 0px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); }
.mem .ord-box + .ord-box { margin-top: 16px; }
.mem .doc-note { margin: 0 0 12px; }
.mem .doc-lead { margin-bottom: 12px; }
.mem .ord-acts { margin-top: 16px; }
.mem-bar { padding: 12px 16px; border: 1px solid var(--line1); border-radius: var(--r-md); background: var(--bg2); }
.mem-bar.is-in { background: var(--bg1); }
.mem-line { margin: 0; font-size: 14px; line-height: 20px; color: var(--t2); word-break: keep-all; }
.mem-line .link { margin-left: 4px; font-weight: 700; }
.mem-btns { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; margin-top: 10px; }
.mem-btn { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 16px; border: 1px solid transparent; border-radius: var(--r-md); font-size: 15px; line-height: 22px; font-weight: 700; text-decoration: none; }
.mem-btn:focus-visible { outline: 2px solid var(--t1); outline-offset: 2px; }
.mem-kakao { background: #FEE500; border-color: #FEE500; color: #000000; }
.mem-naver { background: #03C75A; border-color: #03C75A; color: #FFFFFF; }
.mem-google { background: #FFFFFF; border-color: #747775; color: #1F1F1F; }
.doc .mem-btns a.mem-btn.mem-kakao { color: #000000; }
.doc .mem-btns a.mem-btn.mem-naver { color: #FFFFFF; }
.doc .mem-btns a.mem-btn.mem-google { color: #1F1F1F; }
@media (max-width: 599px) {
  .mem-btns { grid-template-columns: 1fr; }
  .mem-btns .mem-btn { min-height: 48px; }
}
.mem-addr { margin-top: 10px; }
.mem-addr > summary { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; line-height: 20px; font-weight: 700; color: var(--brand); cursor: pointer; }
.mem-addr-list { margin: 4px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line1); }
.mem-addr-list li { display: flex; align-items: center; gap: 8px; border-bottom: 1px solid var(--line1); }
.mem-addr-list li > a { flex: 1 1 auto; display: block; min-height: 44px; padding: 12px 0; font-size: 14px; line-height: 20px; color: var(--t1); word-break: keep-all; overflow-wrap: anywhere; }
.mem-addr-list li.on > a { font-weight: 700; color: var(--brand); }
.mem-del { flex: 0 0 auto; min-height: 44px; padding: 0 8px; border: 0; background: none; font-size: 13px; color: var(--t3); text-decoration: underline; cursor: pointer; }
.mem-keep { margin-top: 16px; }
.mem-list { margin: 0; padding: 0; list-style: none; }
.mem-list li { padding: 12px 0; border-top: 1px solid var(--line1); }
.mem-list li:first-child { border-top: 0; padding-top: 0; }
.mem-t { margin: 0; font-size: 14px; line-height: 20px; font-weight: 700; color: var(--t1); word-break: keep-all; overflow-wrap: anywhere; }
.mem-t a { color: inherit; }
.mem-s { margin: 4px 0 0; font-size: 13px; line-height: 18px; color: var(--t3); overflow-wrap: anywhere; }
.mem-tag { display: inline-block; margin-left: 4px; padding: 0 6px; border-radius: var(--r-sm); background: var(--brand-soft); color: var(--brand); font-size: 12px; line-height: 18px; vertical-align: 1px; }
.mem-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.mem-row .btn { min-height: 44px; }
.mem-done { margin: 0 0 16px; padding: 12px 16px; border-radius: var(--r-md); background: var(--bg2); font-size: 14px; line-height: 20px; color: var(--t2); }
.mem form .btn { min-height: 44px; }
