/* 更新通知 / bug 反馈 */
.notif-mask { position: fixed; inset: 0; z-index: 400; background: rgba(0,0,0,.62); display: flex; align-items: center; justify-content: center; padding: 18px; }
.notif-box { width: min(560px, 100%); max-height: 82dvh; overflow-y: auto; border-radius: 16px;
  background: #14110f; border: 1px solid rgba(255,255,255,.12); box-shadow: 0 24px 70px rgba(0,0,0,.6); padding: 18px 20px; color: var(--ink, #eee); }
.notif-head { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.notif-head b { font-size: 16px; }
.notif-ver { font-size: 11.5px; padding: 2px 8px; border-radius: 999px; background: rgba(201,133,90,.18); color: #e7c8a8; }
.notif-list { margin: 0; padding-left: 18px; line-height: 1.85; font-size: 13.2px; color: var(--ink-2, #c9bfb4); }
.notif-list li { margin-bottom: 4px; }
.notif-foot { display: flex; gap: 10px; margin-top: 16px; }
.notif-btn { flex: 1; min-height: 40px; border-radius: 10px; cursor: pointer; font-size: 13.5px;
  background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.14); color: var(--ink, #eee); }
.notif-btn.primary { background: var(--brand, #c9855a); border-color: transparent; color: #1a1208; font-weight: 700; }
.notif-row { margin-bottom: 10px; }
.notif-row select, .notif-row textarea { width: 100%; box-sizing: border-box; padding: 10px 12px; border-radius: 10px;
  background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.14); color: var(--ink, #eee); font-size: 13.5px; font-family: inherit; }
.notif-tip { margin-top: 8px; font-size: 12.5px; color: #ffbdb0; min-height: 18px; }
@media (max-width: 620px) { .notif-box { padding: 14px 14px; border-radius: 14px; } .notif-list { font-size: 12.6px; } }

/* 手机端:更新通知/反馈弹窗不能超出屏幕(逐页复核发现右侧被裁) */
.notif-mask { padding: 10px; }
.notif-box { box-sizing: border-box; width: 100%; max-width: min(560px, calc(100vw - 20px)); }
@media (max-width: 620px) {
  .notif-head b { font-size: 15px; }
  .notif-list { padding-left: 16px; word-break: break-word; }
  .notif-foot { flex-direction: column; }
  .notif-btn { width: 100%; }
}

/* 手机端再次收口:用左右固定边距代替宽度百分比,避免被父级宽度影响 */
@media (max-width: 620px) {
  .notif-mask { padding: 0 !important; }
  .notif-box {
    position: fixed !important;
    left: 8px !important;
    right: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: auto !important;
    max-width: none !important;
    max-height: 84dvh !important;
    box-sizing: border-box !important;
  }
}

/* 手机端最终收口:用 100vw 计算宽度,并禁止横向滚动(防任何祖先 transform 影响) */
@media (max-width: 620px) {
  html, body { overflow-x: hidden !important; max-width: 100vw !important; }
  .notif-mask { width: 100vw !important; left: 0 !important; right: auto !important; }
  .notif-box {
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    margin: 0 8px !important;
    left: 0 !important;
    right: auto !important;
    transform: none !important;
    top: 50% !important;
    translate: 0 -50%;
    box-sizing: border-box !important;
  }
}
