#reportFab{
  position:fixed;right:78px;bottom:18px;z-index:80;
  border:0;border-radius:999px;padding:11px 16px;
  background:#2d4db5;color:#fff;font-weight:900;font-size:13px;
  box-shadow:0 8px 20px rgba(30,50,120,.25);cursor:pointer;
}
#reportModal{
  position:fixed;inset:0;z-index:90;display:grid;place-items:center;
  background:rgba(12,20,40,.45);
}
#reportModal[hidden]{display:none!important}
.report-card{
  width:min(460px,92vw);background:#fff;color:#24325c;border-radius:18px;
  padding:18px 18px 14px;box-shadow:0 18px 40px rgba(20,40,90,.22);
}
.report-card h3{margin:0 0 6px;font-size:20px}
.report-card p{margin:0 0 12px;color:#66779c;font-size:13px}
.report-kinds{display:flex;gap:12px;margin-bottom:10px;font-weight:800}
.report-card input[type=text],.report-card textarea{
  width:100%;box-sizing:border-box;border:1px solid #d5def3;border-radius:12px;
  padding:10px 12px;margin:0 0 8px;font:inherit;color:#24325c;
}
.report-card textarea{min-height:120px;resize:vertical}
.report-actions{display:flex;justify-content:flex-end;gap:8px}
.report-actions button{border:0;border-radius:11px;padding:9px 14px;font-weight:900;cursor:pointer}
#reportCancel{background:#eef2fb;color:#4b5d8d}
#reportSend{background:#2d4db5;color:#fff}
#reportStatus{display:block;margin-top:8px;color:#2f7a4d;font-weight:800}
@media(max-width:700px){
  #reportFab{right:66px;bottom:14px;padding:10px 13px;font-size:12px}
}

/* v20260830_0705 · keep bug/report controls above Android gesture/navigation area */
@media(max-width:900px){
  #reportFab{
    right:12px!important;
    bottom:max(72px,calc(env(safe-area-inset-bottom,0px) + 56px))!important;
    min-height:46px!important;
    padding:10px 14px!important;
    z-index:100000!important;
  }
  #reportModal{
    padding:max(14px,env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) max(76px,calc(env(safe-area-inset-bottom,0px) + 60px)) max(14px,env(safe-area-inset-left,0px))!important;
    box-sizing:border-box!important;
  }
  .report-card{
    max-height:calc(100dvh - 110px)!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
}
