.pwa-install-fab,
.pwa-install-sheet {
    display: none;
}

@media (max-width: 760px) {
    .pwa-install-fab:not([hidden]) {
        position: fixed;
        right: max(14px, env(safe-area-inset-right));
        bottom: max(16px, env(safe-area-inset-bottom));
        z-index: 105;
        display: inline-flex;
        min-height: 48px;
        align-items: center;
        justify-content: center;
        gap: 9px;
        padding: 0 17px;
        border: 1px solid rgba(255, 255, 255, 0.18);
        border-radius: 999px;
        background: #1469e8;
        box-shadow: 0 16px 36px rgba(20, 105, 232, 0.34), 0 3px 10px rgba(15, 23, 42, 0.22);
        color: #fff;
        font: 700 0.86rem/1 Inter, Manrope, system-ui, sans-serif;
        letter-spacing: -0.01em;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }

    .pwa-install-fab svg {
        width: 19px;
        height: 19px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .pwa-install-fab:focus-visible,
    .pwa-install-sheet button:focus-visible {
        outline: 3px solid rgba(96, 165, 250, 0.48);
        outline-offset: 3px;
    }

    .pwa-standalone .pwa-install-fab,
    .pwa-standalone [data-pwa-install] {
        display: none !important;
    }

    body.pwa-install-open {
        overflow: hidden;
    }

    .pwa-install-sheet {
        position: fixed;
        inset: 0;
        z-index: 120;
        display: flex;
        align-items: flex-end;
        justify-content: center;
        padding: 16px max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
        background: rgba(3, 9, 20, 0.72);
        backdrop-filter: blur(8px);
    }

    .pwa-install-sheet__panel {
        position: relative;
        width: min(100%, 430px);
        padding: 24px 20px 20px;
        border: 1px solid #d9e2ef;
        border-radius: 22px;
        background: #fff;
        box-shadow: 0 28px 80px rgba(2, 8, 23, 0.34);
        color: #0f172a;
        font-family: Inter, Manrope, system-ui, sans-serif;
    }

    .pwa-install-sheet__mark {
        display: inline-flex;
        width: 42px;
        height: 42px;
        align-items: center;
        justify-content: center;
        margin-bottom: 16px;
        border-radius: 13px;
        background: #0d1a2e;
        color: #64e6db;
        font-size: 1.05rem;
        font-weight: 800;
    }

    .pwa-install-sheet__eyebrow {
        display: block;
        color: #1768e5;
        font-size: 0.68rem;
        font-weight: 800;
        letter-spacing: 0.12em;
    }

    .pwa-install-sheet h2 {
        margin: 7px 34px 8px 0;
        color: #0b1220;
        font-size: 1.35rem;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .pwa-install-sheet p {
        margin: 0 0 18px;
        color: #64748b;
        font-size: 0.9rem;
        line-height: 1.5;
    }

    .pwa-install-sheet__steps {
        display: grid;
        gap: 10px;
        margin: 0 0 20px;
        padding: 0;
        list-style: none;
        counter-reset: install-step;
    }

    .pwa-install-sheet__steps li {
        position: relative;
        min-height: 36px;
        padding: 8px 10px 8px 44px;
        border: 1px solid #e2e8f0;
        border-radius: 12px;
        background: #f8fafc;
        color: #334155;
        font-size: 0.84rem;
        line-height: 1.4;
        counter-increment: install-step;
    }

    .pwa-install-sheet__steps li::before {
        position: absolute;
        top: 50%;
        left: 10px;
        display: inline-flex;
        width: 25px;
        height: 25px;
        align-items: center;
        justify-content: center;
        transform: translateY(-50%);
        border-radius: 8px;
        background: #eaf2ff;
        color: #1768e5;
        content: counter(install-step);
        font-size: 0.72rem;
        font-weight: 800;
    }

    .pwa-install-sheet__confirm {
        width: 100%;
        min-height: 48px;
        border: 0;
        border-radius: 12px;
        background: #1768e5;
        color: #fff;
        font: 750 0.9rem/1 Inter, Manrope, system-ui, sans-serif;
        cursor: pointer;
    }

    .pwa-install-sheet__close {
        position: absolute;
        top: 12px;
        right: 12px;
        display: inline-flex;
        width: 38px;
        height: 38px;
        align-items: center;
        justify-content: center;
        border: 1px solid #e2e8f0;
        border-radius: 11px;
        background: #f8fafc;
        color: #475569;
        font: 400 1.45rem/1 system-ui, sans-serif;
        cursor: pointer;
    }
}
