.p51-pwa-install {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 2147483000;
    display: flex;
    align-items: center;
    gap: 11px;
    max-width: min(390px, calc(100vw - 28px));
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 14px;
    background: #18392f;
    color: #fff;
    box-shadow: 0 14px 36px rgba(0,0,0,.22);
    font: inherit;
    text-align: left;
    cursor: pointer;
}
.p51-pwa-install[hidden] { display: none !important; }
.p51-pwa-install-icon {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.11);
    font-size: 22px;
    font-weight: 700;
}
.p51-pwa-install strong,
.p51-pwa-install small { display: block; }
.p51-pwa-install strong { font-size: 14px; line-height: 1.2; }
.p51-pwa-install small {
    margin-top: 3px;
    color: rgba(255,255,255,.76);
    font-size: 11px;
    line-height: 1.3;
}
.p51-pwa-install-close {
    margin-left: 4px;
    padding: 4px;
    font-size: 20px;
    line-height: 1;
    color: rgba(255,255,255,.72);
}
.p51-pwa-wake {
    appearance: none;
    -webkit-appearance: none;
    position: fixed;
    right: 14px;
    top: 14px;
    z-index: 2147482999;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 10px;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 999px;
    background: rgba(255,255,255,.92);
    color: #33413d;
    box-shadow: 0 4px 15px rgba(0,0,0,.08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    font: 600 11px/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.p51-pwa-wake-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #d79a43;
}
.p51-pwa-wake[data-state="active"] .p51-pwa-wake-dot { background: #2f8a61; }
.p51-pwa-wake[data-state="unsupported"] .p51-pwa-wake-dot { background: #8b918f; }

@media (max-width: 640px) {
    .p51-pwa-install {
        right: 12px;
        bottom: 12px;
        left: 12px;
        max-width: none;
    }
    .p51-pwa-wake {
    appearance: none;
    -webkit-appearance: none;
        top: 9px;
        right: 9px;
    }
}
.p51-pwa-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 2147483640;
    display: grid;
    place-items: center;
    padding: 18px;
    background: rgba(17, 26, 23, .52);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}
.p51-pwa-modal {
    position: relative;
    width: min(440px, 100%);
    padding: 26px;
    border-radius: 20px;
    background: #fff;
    color: #24322e;
    box-shadow: 0 24px 70px rgba(0,0,0,.28);
    font: 400 15px/1.55 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.p51-pwa-modal h2 { margin: 12px 32px 12px 0; font-size: 21px; line-height: 1.25; color: #18392f; }
.p51-pwa-modal p { margin: 10px 0; }
.p51-pwa-modal ol { margin: 12px 0 16px; padding-left: 22px; }
.p51-pwa-modal li { margin: 8px 0; }
.p51-pwa-modal-mark {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    background: #18392f;
    color: #fff;
    font-weight: 800;
    letter-spacing: -.5px;
}
.p51-pwa-modal-x {
    position: absolute;
    right: 14px;
    top: 12px;
    border: 0;
    background: transparent;
    color: #697570;
    font-size: 27px;
    line-height: 1;
    cursor: pointer;
}
.p51-pwa-modal-ok {
    width: 100%;
    margin-top: 10px;
    padding: 12px 16px;
    border: 0;
    border-radius: 11px;
    background: #18392f;
    color: #fff;
    font: 700 14px/1 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    cursor: pointer;
}

.p51-pwa-wake[data-state="retry"] {
    cursor: pointer;
}
.p51-pwa-wake[data-state="retry"] .p51-pwa-wake-dot {
    background: #d79a43;
}
.p51-pwa-wake[data-state="unsupported"] {
    opacity: .86;
}


#p51-pwa-diagnostic {
    position: fixed;
    left: 12px;
    bottom: 12px;
    z-index: 2147483646;
    width: min(340px, calc(100vw - 24px));
    padding: 12px;
    border-radius: 14px;
    background: rgba(19, 27, 24, .96);
    color: #fff;
    box-shadow: 0 12px 35px rgba(0,0,0,.28);
    font: 12px/1.35 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
#p51-pwa-diagnostic .p51diag-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}
#p51-pwa-diagnostic .p51diag-head strong {
    font-size: 13px;
}
#p51-pwa-diagnostic .p51diag-head button {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    background: transparent;
    color: rgba(255,255,255,.75);
    font-size: 20px;
    line-height: 1;
    padding: 0 3px;
}
#p51-pwa-diagnostic .p51diag-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 4px 0;
    border-top: 1px solid rgba(255,255,255,.08);
}
#p51-pwa-diagnostic .p51diag-row span {
    color: rgba(255,255,255,.65);
}
#p51-pwa-diagnostic .p51diag-row b {
    text-align: right;
    font-weight: 700;
    word-break: break-word;
}
#p51-pwa-diagnostic .p51diag-error b {
    color: #ffd2c7;
}
#p51-pwa-diagnostic .p51diag-test {
    width: 100%;
    margin-top: 9px;
    padding: 9px 12px;
    border: 0;
    border-radius: 9px;
    background: #fff;
    color: #18392f;
    font: 700 12px/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
