.pwtryon-button {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 16px;
    border:0;
    border-radius:10px;
    background:#111827;
    color:#fff;
    cursor:pointer;
    font:inherit;
}
.pwtryon-button__icon { font-size:16px; color:#8b5cf6; }
.pwtryon-modal[hidden] { display:none !important; }
.pwtryon-modal {
    position:fixed;
    inset:0;
    z-index:9999;
}
.pwtryon-modal__backdrop {
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.6);
}
.pwtryon-modal__dialog {
    position:relative;
    width:min(96vw, 1680px);
    max-width:1680px;
    max-height:92vh;
    margin:3vh auto;
    background:#fff;
    border-radius:16px;
    padding:40px 46px;
    z-index:2;
    overflow-y:auto;
}
.pwtryon-modal__close {
    position:absolute;
    right:12px;
    top:12px;
    border:0;
    background:transparent;
    font-size:28px;
    cursor:pointer;
}
.pwtryon-form { display:flex; flex-direction:column; gap:16px; }
.pwtryon-submit {
    background:#7c3aed;
    color:#fff;
    border:0;
    border-radius:10px;
    padding:12px 16px;
    cursor:pointer;
}
.pwtryon-consent { display:flex; gap:10px; align-items:flex-start; font-size:13px; }
.pwtryon-compare {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);
    gap:30px;
    align-items:center;
    margin-top:22px;
}
.pwtryon-compare__item {
    min-width:0;
}
.pwtryon-compare__label {
    margin-bottom:16px;
    font-size:20px;
    font-weight:600;
    color:#374151;
}
.pwtryon-compare__frame {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:600px;
    padding:22px;
    border:1px solid #e5e7eb;
    border-radius:24px;
    background:#f9fafb;
}
.pwtryon-compare__image {
    display:block;
    width:100%;
    max-height:900px;
    object-fit:contain;
    border-radius:20px;
}
.pwtryon-compare__symbol {
    font-size:72px;
    line-height:1;
    color:#111827;
}
.pwtryon-error { color:#b91c1c; margin-top:12px; }
.pwtryon-loading { margin-top:12px; }
.pwtryon-disclaimer { margin-top:16px; font-size:12px; color:#6b7280; }
.pwtryon-body-lock { overflow:hidden; }

@media (max-width: 900px) {
    .pwtryon-modal__dialog {
        width:min(96vw, 760px);
        padding:24px;
    }

    .pwtryon-compare {
        grid-template-columns:1fr;
        gap:18px;
    }

    .pwtryon-compare__symbol {
        justify-self:center;
        font-size:42px;
    }

    .pwtryon-compare__frame {
        min-height:340px;
        padding:14px;
    }

    .pwtryon-compare__label {
        font-size:16px;
    }
}
