/* One bounded 4:5 card, shared by the editor, public link and image export. */
.card-post{position:relative;container-type:inline-size;width:100%;max-width:432px;aspect-ratio:4/5;height:auto!important;min-height:0!important;max-height:none;overflow:hidden;margin-inline:auto}
.card-post .card-body{position:absolute;inset:0;display:flex;flex-direction:column;gap:7px;height:100%;padding:16px!important;min-width:0;min-height:0}
.card-post .identity-block{flex:0 0 auto;gap:12px;margin:0!important;min-height:64px;max-width:100%;text-align:start}
.card-post .avatar{width:64px!important;height:64px!important;min-height:0;flex:0 0 64px;border-width:0;overflow:hidden;margin:0!important;max-height:none;aspect-ratio:1!important;display:grid;place-items:center}
.card-post .main-photo-button{display:block;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;overflow:hidden;cursor:zoom-in}
.card-post .avatar .image-frame{aspect-ratio:auto!important;width:100%;height:100%!important;max-height:none!important}
.card-post .identity-copy{min-width:0;margin:0!important;flex:1}
.card-post .identity-kicker{margin:0 0 3px!important;max-height:19px;overflow:hidden}
.card-post .category-pill{font-size:clamp(9px,2.5cqw,11px);line-height:1.5;padding:2px 5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block!important}
.card-post .category-pill svg{display:none}
.card-post .card-body h2{font-size:calc(clamp(18px,5.7cqw,25px) * var(--card-scale));line-height:1.3;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;letter-spacing:normal}
.card-post .business-name{font-size:calc(clamp(12px,3.5cqw,15px) * var(--card-scale));line-height:1.4;margin:2px 0 3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-post .location{font-size:clamp(10px,2.9cqw,12px);line-height:1.4;gap:4px;min-width:0;margin:0}
.card-post .location span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.card-post .location svg{margin:0;flex-shrink:0}
.card-post .contact-actions{display:grid;grid-template-columns:1fr 1fr;flex:0 0 auto;gap:8px;margin:0!important;padding:0!important;border:0!important}
.card-post .contact-actions a{display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:50px;padding:5px 4px;font-size:clamp(11px,3.2cqw,14px);line-height:1.3;min-width:0}
.card-post .contact-label{display:flex;align-items:center;justify-content:center;gap:4px;max-width:100%;min-width:0}
.card-post .contact-label>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.card-post .contact-label>svg{flex-shrink:0}
.card-post .contact-number{display:block;white-space:nowrap;font:700 clamp(11px,3.45cqw,14px)/1.4 system-ui,sans-serif;letter-spacing:0;flex-shrink:0}
.card-post .card-brief{flex:0 0 auto;font-size:clamp(11px,3cqw,13px);line-height:1.45;color:var(--card-muted);max-height:2.9em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.card-post .card-brief:empty{display:none}
.card-post .area-section{flex:0 0 auto;border:0!important;border-radius:0;padding:0!important;margin:0!important;display:flex;gap:7px;align-items:flex-start;min-height:0;min-width:0}
.card-post .area-section>div{min-width:0;flex:1}
.card-post .area-section>svg{flex-shrink:0;margin-top:3px}
.card-post .area-section h3{font-size:clamp(9px,2.5cqw,11px);line-height:1.3;margin:0 0 2px;letter-spacing:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.card-post .area-section p{font-size:clamp(11px,3cqw,13px);line-height:1.4;margin:0;max-height:2.8em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.card-post .additional-images{display:flex;flex-direction:column;flex:1 1 0;min-height:0;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;overflow:hidden}
.card-post .card-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px;align-items:stretch;flex:1;min-height:0;height:100%}
.card-post .card-gallery figure{grid-column:auto!important;display:flex;flex-direction:column;min-width:0;min-height:0;margin:0;overflow:hidden}
.card-post .card-gallery button{display:block;flex:1;min-height:0!important;width:100%;height:100%;overflow:hidden;border-radius:7px;background:var(--card-tint);padding:0;cursor:zoom-in}
.card-post .card-gallery button>.image-frame{height:100%;width:100%;aspect-ratio:auto!important}
.card-post .card-gallery figcaption{font-size:clamp(9px,2.5cqw,11px);line-height:1.4;margin:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}
.card-post .card-summary{display:flex;flex-direction:column;justify-content:center;flex:1;padding:15px;background:var(--card-tint);border-radius:8px;min-height:0;overflow:hidden}
.card-post .card-summary p{font-size:clamp(13px,3.6cqw,16px);line-height:1.6;margin:0;color:var(--card-accent-ink);display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}
.card-post .card-summary small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:9px;font-size:11px;line-height:1.4;color:var(--card-muted)}
.card-post .card-bottom-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0;flex:0 0 auto;margin:0!important;padding:0;border-top:1px solid var(--card-line)}
.card-post .card-bottom-actions button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:44px;padding:5px 3px;font-size:clamp(10px,2.85cqw,12px);line-height:1.35;font-family:var(--card-font);color:var(--card-fg)}
.card-post .card-bottom-actions button svg{flex-shrink:0;width:14px}
.card-post .card-bottom-actions button span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.card-post .powered-by{min-height:0!important;flex:0 0 auto;margin:0!important;padding:0;font-size:10px;line-height:1.4;justify-content:center}
.card-post.template-centered .identity-block,.card-post.template-editorial .identity-block{flex-direction:column;text-align:center;gap:5px}
.card-post.template-centered .identity-copy,.card-post.template-editorial .identity-copy{width:100%}
.card-post.template-centered .avatar,.card-post.template-editorial .avatar{width:44px!important;height:44px!important;flex-basis:44px}
.card-post.template-centered .identity-kicker,.card-post.template-editorial .identity-kicker{justify-content:center}
.card-post.template-centered h2,.card-post.template-editorial h2,.card-post.template-centered .business-name,.card-post.template-editorial .business-name{-webkit-line-clamp:1}
.card-post.template-photo-hero .identity-block{display:grid;grid-template-columns:104px minmax(0,1fr);gap:12px}
.card-post.template-photo-hero .avatar{width:104px!important;height:104px!important;border-radius:8px}
.card-post.template-portfolio .card-gallery{grid-template-columns:1.2fr 1fr 1fr!important}
.card-post.template-bold{border-inline-start-width:5px}
.card-post.template-bold .avatar{border:2px solid var(--card-accent)}
.card-details-backdrop{z-index:145}
.card-details-dialog{width:100%;max-width:520px;max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;background:#fff;color:#142632;border:1px solid #dde5dd;border-radius:16px;padding:24px;font:15px/1.7 system-ui,sans-serif;box-shadow:0 20px 80px #14263233;text-align:start}
.card-details-dialog .modal-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 18px}
.card-details-dialog h2{font-size:22px;margin:0}.card-details-dialog h3{font-size:21px;margin:0}.card-details-dialog p{margin:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}.card-details-dialog h4{font-size:14px;margin:0 0 6px}.card-details-dialog section{margin-top:22px;padding-top:18px;border-top:1px solid #e4eae2}.card-details-dialog ul{padding-inline-start:22px;margin:0;overflow-wrap:anywhere}.details-contact{display:grid;gap:8px;margin-top:18px}.details-contact a{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:48px;padding:10px 12px;background:#f2f7ef;border-radius:7px;font-size:14px;color:#245e4d}.details-contact strong{margin-inline-start:auto;white-space:nowrap}
@container(max-width:360px){.card-post .card-brief{display:none}.card-post .card-body{padding:12px!important;gap:5px}.card-post .avatar{width:54px!important;height:54px!important;flex-basis:54px}.card-post .identity-block{gap:9px}.card-post.template-centered .identity-block,.card-post.template-editorial .identity-block{flex-direction:row;text-align:start}.card-post.template-centered .avatar,.card-post.template-editorial .avatar{width:54px!important;height:54px!important;flex-basis:54px}.card-post.template-centered h2,.card-post.template-editorial h2,.card-post.template-centered .business-name,.card-post.template-editorial .business-name{-webkit-line-clamp:2}.card-post.template-centered .location,.card-post.template-editorial .location{justify-content:flex-start}.card-post.template-photo-hero .identity-block{grid-template-columns:72px minmax(0,1fr);gap:9px}.card-post.template-photo-hero .avatar{width:72px!important;height:84px!important}.card-post .area-section p{-webkit-line-clamp:1;max-height:1.4em}.card-post .contact-actions{gap:6px}}
@container(max-width:310px){.card-post .area-section{display:none}.card-post .card-body{padding:10px!important}.card-post .card-bottom-actions button{gap:3px}.card-post .card-bottom-actions button svg{width:12px}.card-post .identity-kicker{max-height:17px}.card-post .card-summary{padding:10px}.card-post .card-summary p{-webkit-line-clamp:5}}
