.card{position:absolute;top:0;left:0;width:500px;height:700px;overflow:hidden;transform-origin:top left;color:var(--ink);font-family:Fredoka,"Trebuchet MS",sans-serif;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.card .frame{position:absolute;inset:16px;border:3px var(--bs) var(--accent);border-radius:var(--r);padding:26px 24px;display:flex;flex-direction:column;align-items:center;justify-content:space-between}
.card .emo{font-size:36px;letter-spacing:8px;min-height:44px}
.card .lead{font-size:22px;font-weight:700}
.card .ttl{color:var(--accent);line-height:1.1;text-shadow:var(--glow);overflow-wrap:anywhere;margin:6px 0}
.card .sub{font-size:19px;font-weight:500}
.card .box{width:100%;background:var(--panel);border:2px solid var(--accent2);border-radius:calc(var(--r)*.6);padding:14px 20px}
.card .d{font-size:26px;font-weight:700}
.card .t{font-size:20px;font-weight:500}
.card .p{font-size:17px;font-weight:500;margin-top:4px}
.card .msg{font-size:16px;white-space:pre-line}
.card .rsvp{font-size:14px;opacity:.85}
.card [hidden]{display:none!important}

/* photo + emoji stickers (free-floating, drag them in the host editor) */
.card .layer{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}
.card .stk{position:absolute;line-height:1;white-space:nowrap;user-select:none;-webkit-user-select:none;border-radius:8px;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}
.card .pho{position:absolute;box-sizing:border-box;overflow:hidden;box-shadow:0 6px 16px rgba(0,0,0,.3)}
.card .pho .pimg{position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-position:center;background-repeat:no-repeat}
.card .pho.circle{border-radius:50%}
.card .pho.rounded{border-radius:24px}
.card .pho.square{border-radius:0}
.card .pho.arch{border-radius:999px 999px 14px 14px}
.card .pho.polaroid{background:#fff;border-radius:4px;padding:8px 8px 0}
.card .pho.polaroid .pimg{position:static}
.card.edit .stk,.card.edit .pho{pointer-events:auto;cursor:grab;touch-action:none}
.card.edit .stk:active,.card.edit .pho:active{cursor:grabbing}
.card .sel{outline:2px dashed #6b4eff;outline-offset:4px}
