body:has(.v56-live-opening){overflow:hidden}.v56-live-opening{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;text-align:center;background:linear-gradient(150deg,#f9f5ed,#e5eadf 65%,#e9d6e2);padding:28px}.v56-cover-inner{width:min(95vw,590px);padding:40px 22px;border:1px solid #c1bbad;background:rgba(255,255,255,.5);border-radius:24px}.v56-cover-inner span{font-size:12px;letter-spacing:4px}.v56-cover-inner h2{font:clamp(32px,7vw,60px)/1.1 Georgia,serif;margin:28px auto;color:#354c43}.v56-cover-inner p{color:#657b6f}.v56-cover-inner button{margin-top:34px;padding:17px 36px;border:0;border-radius:30px;color:white;background:#4b695b;font-size:16px;cursor:pointer}.preview-toolbar[hidden]{display:none!important}body:has(.v56-live-opening) .mobile-footer{visibility:hidden}body.template-body .sample-note{font-size:11px}.v56-live-opening+*{display:block}
body.v56-live .sample-note,body.v56-live .preview-note,body.v56-live .design-ref{display:none!important}

.v56-live-opening.kf-001{background:linear-gradient(145deg,#ecf3e9,#d8e4d2 60%,#faf7ef)}
.v56-live-opening.kf-002{background:linear-gradient(145deg,#fff0ed,#eecdcf 70%,#fff8ef)}
.v56-live-opening.kf-003{background:linear-gradient(145deg,#f7f3e9,#c5d2da 65%,#f9f7f2)}
.v56-live-opening.kf-004{background:linear-gradient(145deg,#fff4e9,#e5b9a0 72%,#fff1e3)}
.v56-live-opening.kf-005{background:linear-gradient(145deg,#f5efff,#d8cfea 60%,#fff7ee)}
/* V5.6.8: matching template opening for dynamic customer invitations. */
body.v56-live .v56-live-opening.knt-v568-opening{display:block;place-items:initial;text-align:initial;padding:0;overflow-x:hidden;overflow-y:auto;background:#f4efea}
body.v56-live .knt-v568-opening .entry-app{min-height:100svh}
body.v56-live .knt-v568-opening .entry-stage{min-height:calc(100svh - 100px)}
body.v56-live .knt-v568-opening .entry-open{border:0;font:700 13px 'Segoe UI',Arial,sans-serif;cursor:pointer;width:100%}
body.v56-live .knt-v568-opening .entry-open:focus-visible{outline:3px solid #f6bf6f;outline-offset:4px}
body.v56-live .knt-v568-no-photo .entry-background{background:linear-gradient(145deg,#ecc8ca,#c7848e 48%,#4d303f)}
body.v56-live .knt-v568-no-photo .entry-scrim{background:linear-gradient(180deg,#301b3050,#241222bd)}
body.v56-live .knt-v568-no-photo .entry-content{color:#fff8ed}
body.v56-live .knt-v568-no-photo .entry-stage .entry-content h1{color:#fff8ed;text-shadow:0 3px 14px #24122277}
body.v56-live .map-art{display:block!important;min-width:0}
body.v56-live .knt-v568-real-map{overflow:hidden;border:1px solid var(--edge,#e6d7d2);border-radius:18px;min-width:0;background:#f5efea;min-height:260px}
body.v56-live .knt-v568-real-map iframe{border:0;display:block;width:100%;height:290px}
body.v56-live .knt-v568-real-map small{display:block;padding:9px 12px;font-size:10px;color:var(--secondary,#756862);line-height:1.45}
@media(max-width:650px){body.v56-live .knt-v568-opening .entry-stage{min-height:calc(100svh - 80px)}body.v56-live .knt-v568-real-map iframe{height:250px}}
/* V5.6.9: show real venue information and customer phone numbers without demo placeholders. */
body.v56-live .knt-v569-location .knt-v569-address{font:13px/1.5 Georgia,serif;color:var(--secondary);overflow-wrap:anywhere;margin:9px 0 8px}
body.v56-live .knt-v569-location .knt-v569-address-note{font:12px/1.5 Georgia,serif;color:var(--secondary);margin:9px 0 8px}
body.v56-live .knt-v569-location .knt-v569-welcome{font:italic 12px/1.6 Georgia,serif;color:var(--secondary);margin:10px 0 14px}
body.v56-live .knt-v569-contact-card{min-width:0;grid-auto-rows:auto;row-gap:4px}
body.v56-live .knt-v569-contact-card>span[aria-hidden]{grid-row:1 / span 3}
body.v56-live .knt-v569-contact-card>strong{grid-column:2;overflow-wrap:anywhere}
body.v56-live .knt-v569-contact-card .knt-v569-phone{grid-column:2;display:block;width:fit-content;max-width:100%;overflow-wrap:anywhere;color:var(--deep);font:600 13px/1.4 'Segoe UI',Arial,sans-serif;text-decoration:underline;text-underline-offset:3px}
body.v56-live .knt-v569-contact-card .knt-v569-phone:focus-visible{outline:2px solid var(--deep);outline-offset:3px}
body.v56-live .knt-v569-contact-card .knt-v569-phone-label,body.v56-live .knt-v569-contact-card .knt-v569-phone-missing{grid-column:2;font:11px/1.4 Georgia,serif;color:var(--secondary);white-space:normal}
body.v56-live .knt-v569-contact-note{text-align:center;font:italic 12px/1.5 Georgia,serif;color:var(--secondary);margin:14px 0 0}
@media(max-width:500px){body.v56-live .knt-v569-contact-card{padding:12px 8px;grid-template-columns:20px minmax(0,1fr)}body.v56-live .knt-v569-contact-card>span[aria-hidden]{font-size:19px}}
/* V5.6.12: paid invitations hide the brand, but menu button must remain right aligned.
   The popover is right anchored; without this rule its trigger drifts left. */
body.v56-live .mini-top > .menu-btn{margin-left:auto!important;flex:0 0 39px}
body.v56-live .menu-popover{left:auto!important;right:18px!important;max-width:min(360px,calc(100% - 36px));max-height:min(70vh,520px);overflow-y:auto;overscroll-behavior:contain}
