.a11ybridge-fab {
  position: fixed; right: 16px; bottom: 16px;
  width: 48px; height: 48px; border-radius: 50%;
  background: #111; color:#fff; display:flex; align-items:center; justify-content:center;
  box-shadow: 0 8px 24px rgba(0,0,0,.25); cursor: pointer; z-index: 99999;
}
.a11ybridge-fab-dot { width:10px; height:10px; border-radius:50%; background:#3ddc97; }

.a11ybridge-menu {
  position: fixed; right: 16px; bottom: 72px; background:#fff; color:#111;
  border-radius: 12px; box-shadow: 0 12px 36px rgba(0,0,0,.2);
  padding: 8px; min-width: 220px; transform: translateY(10px); opacity:0; pointer-events:none; z-index: 99999;
}
.a11ybridge-menu.open { transform: translateY(0); opacity:1; pointer-events:auto; transition: all .15s ease; }
.a11ybridge-menu-item { width:100%; text-align:left; padding:10px 12px; background:#fff; border:none; cursor:pointer; border-radius:8px; }
.a11ybridge-menu-item:hover { background:#f3f4f6; }

.a11ybridge-modal { position: fixed; inset:0; background: rgba(0,0,0,.45); display:flex; align-items:center; justify-content:center; opacity:0; pointer-events:none; z-index: 99999; }
.a11ybridge-modal.open { opacity:1; pointer-events:auto; }
.a11ybridge-modal-box { width:min(720px, 92vw); background:#fff; border-radius:16px; overflow:hidden; }
.a11ybridge-modal-head { padding:14px 16px; font-weight:700; border-bottom:1px solid #eee; }
.a11ybridge-modal-body { padding:16px; }
.a11ybridge-modal-foot { padding:12px 16px; border-top:1px solid #eee; display:flex; justify-content:flex-end; gap:8px; }
.ab-btn { border:1px solid #ddd; background:#fff; padding:8px 12px; border-radius:10px; cursor:pointer; }
.ab-btn:hover { background:#f8f9fb; }
.ab-levels { display:flex; gap:8px; }
.ab-preview { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.ab-old, .ab-new { padding:10px; background:#fafafa; border:1px solid #eee; border-radius:10px; white-space:pre-wrap; }
.ab-alt-list { display:flex; flex-direction:column; gap:8px; }
.ab-alt-row { display:grid; grid-template-columns:auto 64px 1fr; gap:10px; align-items:center; }
.ab-alt-thumb { width:64px; height:48px; object-fit:cover; border-radius:6px; border:1px solid #eee; }
