.mp-bug-link {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 9990;
    border: 1px solid rgba(255,255,255,0.14);
    background: rgba(8,12,12,0.78);
    color: rgba(245,245,245,0.72);
    border-radius: 999px;
    padding: 8px 11px;
    font: 700 10px/1.1 -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", sans-serif;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    backdrop-filter: blur(14px);
    cursor: pointer;
    box-shadow: 0 12px 34px rgba(0,0,0,0.28);
}
.mp-bug-link:hover,
.mp-bug-link:focus-visible {
    color: #fff;
    border-color: rgba(149,214,232,0.46);
    opacity: 1;
    outline: none;
}
.mp-bug-link {
    opacity: 0.6;
    transition: opacity 0.18s ease, visibility 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}
/* Keep the floating bug affordance out of premium/screenshot moments: hide it
   whenever any modal backdrop is open (plan, install, regen, referral, mobile
   more, highlights, and the generated Canon identity/share artifact). Uses
   :has(), already relied on elsewhere; degrades to the current behaviour where
   unsupported. */
body:has([class*="-backdrop"].open) .mp-bug-link {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.mp-bug-backdrop {
    position: fixed;
    inset: 0;
    z-index: 9991;
    display: none;
    align-items: flex-end;
    justify-content: center;
    padding: 22px;
    background: rgba(0,0,0,0.58);
}
.mp-bug-backdrop.open { display: flex; }
.mp-bug-modal {
    width: min(440px, 100%);
    border: 1px solid rgba(255,255,255,0.13);
    border-radius: 18px;
    background: #0b0d0d;
    color: #f4f4f1;
    box-shadow: 0 28px 90px rgba(0,0,0,0.5);
    padding: 22px;
    font-family: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", sans-serif;
}
.mp-bug-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
.mp-bug-kicker {
    color: #95d6e8;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}
.mp-bug-title {
    margin: 7px 0 0;
    font-size: 22px;
    line-height: 1.05;
    letter-spacing: 0;
}
.mp-bug-close {
    width: 30px;
    height: 30px;
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 999px;
    background: transparent;
    color: rgba(255,255,255,0.76);
    cursor: pointer;
}
.mp-bug-copy {
    margin: 12px 0 16px;
    color: rgba(245,245,245,0.66);
    font-size: 13px;
    line-height: 1.45;
}
.mp-bug-field {
    display: grid;
    gap: 7px;
    margin-top: 12px;
}
.mp-bug-field span {
    color: rgba(245,245,245,0.58);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}
.mp-bug-field textarea,
.mp-bug-field input {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 12px;
    background: rgba(255,255,255,0.045);
    color: #fff;
    padding: 12px;
    font: 500 14px/1.35 -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", sans-serif;
}
.mp-bug-field textarea {
    min-height: 104px;
    resize: vertical;
}
.mp-bug-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
}
.mp-bug-submit {
    border: 1px solid rgba(149,214,232,0.48);
    border-radius: 999px;
    background: #0f4f57;
    color: #fff;
    padding: 11px 15px;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    cursor: pointer;
}
.mp-bug-status {
    min-height: 16px;
    color: rgba(245,245,245,0.62);
    font-size: 12px;
    line-height: 1.35;
}
@media (max-width: 640px) {
    .mp-bug-link {
        right: 12px;
        bottom: 76px;
        padding: 7px 9px;
        font-size: 9px;
    }
    .mp-bug-backdrop {
        padding: 14px;
    }
    .mp-bug-modal {
        padding: 20px;
        border-radius: 16px;
    }
}
/* BROWSER-FIX-BATCH-1: the floating bug pill overlapped a page's fixed bottom dock
   on mobile. Lift it clear of the dock, only where one is present, and match each
   dock's own breakpoint so the pill is never lifted with no dock beneath it. The
   logged-in shell dock shows <=768px; the landing dock shows <=640px. Standalone
   pages (no dock) keep the low bottom-right position. */
@media (max-width: 768px) {
    body:has(.shell-mobile-dock) .mp-bug-link {
        bottom: calc(104px + env(safe-area-inset-bottom, 0px));
    }
}
@media (max-width: 640px) {
    body:has(.landing-mobile-dock) .mp-bug-link {
        bottom: calc(104px + env(safe-area-inset-bottom, 0px));
    }
}
