/* 会員ページの「🛍 ショップ」と「🎂 お祝い」 */
.ms-head h3{margin:0 0 4px;font-size:20px}
.ms-head{margin-bottom:16px}
.ms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.ms-item{display:flex;flex-direction:column;gap:4px;text-align:left;padding:0 0 14px;border-radius:18px;overflow:hidden;border:1px solid var(--line2);background:rgba(255,255,255,.03);color:inherit;font:inherit;cursor:pointer}
.ms-item:hover{border-color:rgba(224,67,95,.6)}
.ms-item b,.ms-item .ms-p,.ms-item .ms-n{padding:0 14px}
.ms-item b{margin-top:10px;font-size:15px}
.ms-p{font-family:var(--serif);font-size:24px}.ms-p small{font-family:var(--sans);font-size:11px;color:var(--muted);margin-left:4px}
.ms-n{font-size:12px;color:var(--muted)}
.ms-cv{position:relative;display:block;aspect-ratio:4/3;background:#15121d center/cover no-repeat}
.ms-own{position:absolute;top:10px;left:10px;font-style:normal;font-size:11px;font-weight:700;background:#4fd18b;color:#08240f;padding:3px 10px;border-radius:99px}
.ms-empty{color:var(--muted);text-align:center;padding:30px 0}
.ms-sub{margin:28px 0 10px;font-size:16px}
.ms-mine{display:grid;gap:8px}
.ms-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;border:1px solid var(--line2);background:rgba(255,255,255,.03);color:inherit;font:inherit;text-align:left;cursor:pointer}
.ms-row small{display:block;font-size:12px;color:var(--muted)}
.ms-th{width:56px;height:42px;border-radius:8px;background:#15121d center/cover;flex:none}

.ms-menu{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.ms-mc{display:flex;flex-direction:column;gap:8px;text-align:left;padding:18px;border-radius:18px;border:1px solid rgba(230,185,74,.45);background:linear-gradient(160deg,rgba(230,185,74,.1),rgba(224,67,95,.06));color:inherit;font:inherit;cursor:pointer}
.ms-mc b{font-size:16px}.ms-mc>span:not(.btn){font-size:13px;color:var(--silver);line-height:1.7}
.ms-mf em{font-style:normal;font-family:var(--serif);font-size:26px;color:var(--text);margin-right:8px}
.ms-mf small{font-size:12px;color:var(--muted)}
.ms-mc .btn{align-self:flex-start;pointer-events:none}
.ms-orders{display:grid;gap:10px}
.ms-ord{padding:14px 16px;border-radius:14px;border:1px solid var(--line2);background:rgba(255,255,255,.03)}
.ms-oh{display:flex;justify-content:space-between;gap:8px;align-items:center}
.ms-oh i{font-style:normal;font-size:11px;font-weight:700;color:#0b0a0f;padding:3px 10px;border-radius:99px;white-space:nowrap}
.ms-ord .note{margin:6px 0 0}
.ms-reply{margin-top:10px;padding:12px;border-radius:12px;background:rgba(79,209,139,.08);border:1px solid rgba(79,209,139,.35)}
.ms-reply p{margin:0 0 8px;line-height:1.8;color:var(--text)}
.ms-reply audio{width:100%;margin-bottom:6px}
.ms-reply img{width:100%;border-radius:10px;display:block;margin-bottom:6px}
.ms-dl{padding:8px 14px;font-size:13px}

/* 下からのシート */
.ms-sheet{position:fixed;inset:0;z-index:90;display:none}
.ms-sheet.open{display:block}
.ms-bg{position:absolute;inset:0;background:rgba(0,0,0,.6)}
.ms-box{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:min(560px,100%);max-height:90vh;overflow:auto;background:#121019;border:1px solid var(--line2);border-radius:22px 22px 0 0;padding:22px 20px calc(22px + env(safe-area-inset-bottom))}
.ms-box h3{margin:0 40px 6px 0;font-size:19px}
.ms-x{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line2);background:transparent;color:inherit;cursor:pointer}
.ms-cvl{aspect-ratio:16/9;border-radius:14px;background:#15121d center/cover;margin:4px 0 14px}
.ms-desc{color:var(--silver);font-size:14px;line-height:1.8;margin:0 0 12px}
.ms-rows{display:grid;gap:6px;margin:12px 0}
.ms-rows>div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.ms-rows span{color:var(--muted)}
.ms-box .field{margin-bottom:12px}
.ms-box .field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.ms-box .field .req{font-size:10px;margin-left:6px;padding:1px 6px;border-radius:6px;background:#e0435f;color:#fff}
.ms-box input:not([type=checkbox]),.ms-box select,.ms-box textarea{width:100%;padding:12px;border-radius:12px;border:1px solid var(--line2);background:rgba(255,255,255,.04);color:inherit;font:inherit;font-size:16px}
.ms-box .chk-row{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.7;color:var(--silver);margin:12px 0}
.ms-box .chk-row input{margin-top:5px;flex:none}
.ms-box .chk-row a{text-decoration:underline}
.ms-go{width:100%;justify-content:center;margin-top:6px}
.ms-files{display:grid;gap:12px;margin-top:12px}
.ms-file{padding:10px;border-radius:12px;border:1px solid var(--line2)}
.ms-file.img img{width:100%;border-radius:8px;display:block}
.ms-file audio{width:100%;margin:6px 0}
.ms-fr{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:13px}
@media (max-width:600px){.ms-grid{grid-template-columns:1fr 1fr;gap:10px}.ms-p{font-size:20px}.ms-item b{font-size:13px}}
