/* Plugin elements use theme tokens, but remain usable with another theme. */
.pm-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.pm-form-wrap{display:grid;grid-template-columns:.74fr 1.26fr;gap:46px;align-items:start;margin:34px 0 90px}
.pm-form-copy{padding:30px 5px}.pm-form-copy h2{font-size:2rem;letter-spacing:-.05em}.pm-form-copy>p{color:var(--muted,#64748b)}
.pm-how{display:grid;gap:22px;margin-top:36px}.pm-how>div{display:grid;grid-template-columns:48px 1fr;column-gap:15px}.pm-how>div>span{grid-row:span 2;border-radius:15px;background:#fff0f5;color:#bb3975;font-size:15px;font-weight:900;display:grid;place-items:center;height:44px}.pm-how strong{font-size:16px}.pm-how small{color:#8290a6}
.pm-submission{display:grid;gap:20px;background:#fff;border:1px solid #efecf1;border-radius:30px;padding:clamp(22px,4vw,46px);box-shadow:0 28px 60px rgba(38,28,66,.07)}
.pm-submission label{display:grid;gap:9px;font-size:14px;font-weight:750;color:#263148}.pm-submission label span:not(.pm-check span){color:#b83d70}.pm-submission small{color:#7d879a;font-weight:500;font-size:12px}.pm-submission input:not([type=checkbox]),.pm-submission textarea,.pm-submission select{width:100%;border:1px solid #e4e7ee;border-radius:13px;padding:13px 15px;background:#fbfcff;color:#243146;font:inherit;font-size:15px;outline:none}.pm-submission input:focus,.pm-submission textarea:focus,.pm-submission select:focus{border-color:#c65b95;box-shadow:0 0 0 3px #fce6f0}.pm-submission textarea{resize:vertical}.pm-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.pm-submission .pm-check{display:flex;align-items:flex-start;gap:12px;line-height:1.5;color:#64748b;font-weight:500}.pm-check input{margin:4px 0 0;width:17px;height:17px;flex:none;accent-color:#c64486}.pm-check a{color:#a73573}.pm-submission .pm-button{width:100%;justify-content:space-between}.pm-success{background:#eafbf4;color:#0b7951;padding:18px;border:1px solid #b9e4d2;border-radius:17px}
@media(max-width:840px){.pm-form-wrap{grid-template-columns:1fr;gap:10px}.pm-form-copy{padding:12px 0}.pm-how{grid-template-columns:repeat(3,1fr);gap:15px}.pm-how>div{display:block}.pm-how>div>span{margin-bottom:8px}.pm-how small{display:block}}
@media(max-width:580px){.pm-field-grid,.pm-how{grid-template-columns:1fr}.pm-how>div{display:grid}.pm-submission{padding:21px;border-radius:22px}}


/* 2.1.2 defensive layout: never render a profile photo at original image size. */
.pm-card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.5vw,18px);align-items:start;min-width:0}
.pm-card-grid .pm-profile-card{min-width:0;width:100%;max-width:248px;overflow:hidden;justify-self:start}
.pm-profile-card .pm-profile-image{display:block;position:relative;width:100%;height:auto;aspect-ratio:4/5;overflow:hidden;background:#f7eaf5}
.pm-profile-card .pm-profile-image>img{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover!important;object-position:center 32%!important;margin:0!important}
.pm-card-grid .pm-profile-card .pm-profile-info{min-width:0}
.pm-ad-detail-photo{width:100%;max-width:420px;height:auto;aspect-ratio:4/5;overflow:hidden}
.pm-ad-detail-photo>img{width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;display:block!important}
@media(max-width:1130px){.pm-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.pm-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.pm-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-ad-detail-photo{max-width:min(100%,360px);max-height:450px}}


/* 2.1.3 — enforced bounds in plugin-rendered profile cards. */
.pm-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,165px),214px));justify-content:start;justify-items:start;align-items:start;gap:16px;max-width:100%;min-width:0}
.pm-card-grid>.pm-profile-card{box-sizing:border-box;width:100%;max-width:214px!important;min-width:0;overflow:hidden;justify-self:start}
.pm-card-grid>.pm-profile-card>.pm-profile-image{display:block!important;width:100%!important;max-width:214px!important;aspect-ratio:4/5!important;max-height:268px!important;position:relative!important;overflow:hidden!important}
.pm-card-grid>.pm-profile-card>.pm-profile-image>img{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover!important;object-position:center 32%!important}
@media(max-width:600px){.pm-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}}
