.opsToast{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);z-index:1800;max-width:calc(100vw - 32px);padding:11px 14px;border-radius:12px;background:#2f2b32;color:#fff;font-size:12px;font-weight:750;white-space:normal;overflow-wrap:anywhere;box-shadow:0 8px 28px #0002;text-align:center}
.opsRating{position:absolute;right:12px;top:10px;padding:3px 7px;border-radius:8px;background:#fff;color:#7c5a9c;font-size:9px;font-weight:800}.myProfile .stats{position:relative}
@media(min-width:700px){.opsToast{bottom:92px}}
/* 문제 신고 — 마이 탭. 눈에 띄되 로그아웃 옆에서 조용하게 */
.problemReportOpen{display:block;width:100%;margin:10px 0 0;border:1px solid #e9e4ee;border-radius:13px;padding:12px;background:#fff;color:#6f6a75;font-size:12px;font-weight:700;font-family:inherit;cursor:pointer}
.problemReportOpen:active{background:#faf8fb}
.problemReport{margin:10px 0 0;border:1px solid #e3d8ee;border-radius:13px;padding:13px;background:#fcfaff;display:grid;gap:8px}
.problemReport>b{font-size:13px;color:#2b2830}
.problemReport textarea{width:100%;border:1px solid #ded5e6;border-radius:10px;padding:10px;font-size:13px;font-family:inherit;resize:none;background:#fff;color:#353038}
.problemReport textarea:focus{outline:none;border-color:#b578dc;box-shadow:0 0 0 3px #a66bd915}
.problemReport>small{color:#8d8694;font-size:10.5px;line-height:1.5}
.problemReportRow{display:flex;gap:8px}
.problemReportRow button{flex:1;border-radius:11px;padding:10px;font-size:12px;font-weight:800;font-family:inherit;cursor:pointer}
.problemReportCancel{border:1px solid #e3ddea;background:#fff;color:#7a7480}
.problemReportSend{border:0;background:#8552bd;color:#fff}
.problemReportSend:disabled{background:#d7d2da}
.problemReportDone{margin:0;color:#5f8f6b;font-size:11px}

/* 업데이트 공지 — 화면을 덮지 않고 상단에 한 줄. 눌러야 본문이 펼쳐진다 */
.noticeBar{position:relative;display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap;margin:0;padding:9px 12px 9px 14px;background:linear-gradient(90deg,#f7f1fd,#fdf2f7);border-bottom:1px solid #ece2f5}
.noticeBarMain{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border:0;background:none;padding:0;text-align:left;font-family:inherit;cursor:pointer}
.noticeBarTag{flex:none;border-radius:6px;padding:2px 6px;background:#8552bd;color:#fff;font-size:9.5px;font-weight:800;letter-spacing:.02em}
.noticeBarTitle{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3f3548;font-size:12px;font-weight:700}
.noticeBarChevron{flex:none;width:7px;height:7px;border-right:1.5px solid #9b8fae;border-bottom:1.5px solid #9b8fae;transform:rotate(45deg) translate(-2px,-2px);transition:transform .15s}
.noticeBar[data-open="true"] .noticeBarChevron{transform:rotate(-135deg) translate(-2px,-2px)}
.noticeBarClose{flex:none;border:0;background:none;padding:0 2px;color:#9b8fae;font-size:17px;line-height:1;font-family:inherit;cursor:pointer}
.noticeBarBody{flex-basis:100%;margin:6px 0 0;color:#5f5a66;font-size:11.5px;line-height:1.6;white-space:pre-line}
