@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@400;500;600;700&family=Pinyon+Script&display=swap";:root{--wedding-ivory: oklch(94.5% .023 84.6);--wedding-paper: oklch(87.5% .024 78);--wedding-sand: oklch(76% .04 67);--wedding-muted-gold: oklch(72% .1 80);--wedding-deep-gold: oklch(60% .09 74);--wedding-copper-wax: oklch(52% .071 58.7);--wedding-deep-brown: oklch(48% .045 66.2);--wedding-ivory-hex: #F4ECDC;--wedding-paper-hex: #E1D6C8;--wedding-sand-hex: #C4B09C;--wedding-muted-gold-hex: #CBB069;--wedding-deep-gold-hex: #9E7E4E;--wedding-copper-wax-hex: #8A6444;--wedding-deep-brown-hex: #6C5440}:root{--paper: var(--wedding-paper-hex, #E1D6C8);--paper-deep: var(--wedding-sand-hex, #C4B09C);--ivory: var(--wedding-ivory-hex, #F4ECDC);--ink: #34271d;--muted: #6C5440;--gold: var(--wedding-muted-gold-hex, #CBB069);--gold-deep: var(--wedding-deep-gold-hex, #9E7E4E);--copper: var(--wedding-copper-wax-hex, #8A6444);--deep-brown: var(--wedding-deep-brown-hex, #6C5440);--white: var(--wedding-ivory-hex, #F4ECDC);--paper-texture: url(/assets/decor/paper-share-bg.jpg);--shadow: 0 26px 90px rgba(45, 31, 18, .24);--font-display: "Cormorant Garamond", Georgia, serif;--font-script: "Pinyon Script", "Brush Script MT", cursive;--font-ui: "Inter", system-ui, sans-serif}*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{min-width:320px;min-height:100vh;margin:0;color:var(--ink);font-family:var(--font-ui);background:linear-gradient(#e1d6c8a8,#e1d6c8a8),var(--paper-texture) center / 720px 271px repeat,var(--paper)}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.access-shell{width:100vw;min-height:100svh;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 50% 38%,rgba(255,250,239,.46),transparent 42%),linear-gradient(#e1d6c89e,#e1d6c89e),var(--paper-texture) center / 720px 271px repeat,var(--paper)}.access-card{width:min(420px,calc(100vw - 36px));display:grid;justify-items:center;gap:14px;padding:clamp(24px,7vw,38px);border:1px solid rgba(158,126,78,.28);border-radius:8px;color:var(--deep-brown);text-align:center;background:linear-gradient(135deg,#fffaf0e0,#f4ecdce6),var(--paper-texture) center / 720px 271px repeat;box-shadow:var(--shadow)}.access-card h1{margin:0;color:var(--gold-deep);font-family:var(--font-display);font-size:clamp(2rem,7vw,2.85rem);font-weight:500;line-height:1}.access-card p{margin:0;max-width:30ch;color:var(--muted);font-family:var(--font-display);font-size:1.08rem;line-height:1.45}.admin-login-card{justify-items:stretch;text-align:left}.admin-login-card .seal-mark,.admin-login-card .panel-kicker,.admin-login-card h1{justify-self:center;text-align:center}.guest-shell{width:100vw;min-height:100svh;overflow:hidden;background:linear-gradient(#e1d6c873,#e1d6c873),var(--paper-texture) center / 720px 271px repeat,var(--paper)}.guest-invite-stage{position:relative;width:100vw;height:100svh;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 42%,rgba(255,250,239,.52),transparent 42%),radial-gradient(circle at 22% 18%,rgba(255,255,255,.28),transparent 30%),linear-gradient(#e1d6c87a,#e1d6c87a),var(--paper-texture) center / 720px 271px repeat,var(--paper);touch-action:pan-y}.invitation-panel{position:relative;width:100vw;height:100svh;display:grid;place-items:center;overflow:hidden;padding:0;animation:none}.invitation-art{--invite-scale: 1;display:block;width:auto;height:auto;max-width:min(100vw,72vh);max-height:100svh;object-fit:contain;border:0;border-radius:0;background:transparent;box-shadow:0 22px 62px #36261829;transform:scale(var(--invite-scale));-webkit-user-select:none;user-select:none}.panel-cover .invitation-art{box-shadow:none;animation:none}.panel-quote .invitation-art,.panel-details .invitation-art{animation:none}.invite-rsvp-button{position:fixed;right:max(12px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));left:auto;bottom:auto;z-index:12;width:58px;height:58px;min-height:58px;padding:0;border-radius:999px;color:var(--ivory);background:radial-gradient(circle at 35% 30%,#DABE85,var(--gold) 48%,var(--gold-deep) 100%);box-shadow:inset 0 2px 8px #ffffff57,inset 0 -7px 14px #3d210c3d,0 11px 28px #4b2d1238;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:.68rem;line-height:1;text-transform:uppercase;animation:rsvpOrbIn .72s cubic-bezier(.22,1,.36,1) both}.swipe-hint{position:fixed;top:50%;z-index:11;width:30px;height:44px;display:grid;place-items:center;border:1px solid rgba(158,126,78,.12);border-radius:999px;color:#6c544052;background:#f4ecdc24;opacity:0;pointer-events:none;transform:translateY(-50%) scale(.94);transition:opacity .42s ease,transform .42s ease}.swipe-hint.is-visible{opacity:.32;transform:translateY(-50%) scale(1)}.swipe-hint-left{left:max(8px,env(safe-area-inset-left))}.swipe-hint-right{right:max(8px,env(safe-area-inset-right))}.swipe-hint svg{width:16px;height:16px;stroke-width:1.35}.cover-card,.details-card{position:relative;z-index:1;width:min(520px,calc(100vw - 32px));aspect-ratio:640 / 960;overflow:hidden;border:1px solid rgba(158,126,78,.35);border-radius:4px;color:var(--ink);background:url(/assets/decor/paper-bg-tile.jpg),linear-gradient(135deg,var(--ivory),var(--paper));background-blend-mode:multiply;background-repeat:repeat;background-size:512px 512px;box-shadow:0 24px 70px #301f113d,inset 0 0 80px #6c544014;touch-action:pan-y;-webkit-user-select:none;user-select:none}.cover-deco-left,.details-deco-left{position:absolute;left:0;top:0;height:100%;width:auto;max-width:42%;object-fit:cover;object-position:left center;pointer-events:none;opacity:.92}.cover-deco-bottom,.details-deco-bottom{position:absolute;right:0;bottom:0;width:auto;max-width:62%;height:auto;max-height:42%;object-fit:contain;object-position:right bottom;pointer-events:none;opacity:.92}.cover-seal,.details-seal{position:absolute;left:50%;bottom:16%;width:clamp(110px,30%,160px);transform:translate(-50%);pointer-events:none;filter:drop-shadow(0 10px 22px rgba(75,45,18,.25))}.cover-content,.details-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(34px,8%,60px) clamp(24px,10%,52px) clamp(24px,8%,44px);text-align:center}.cover-subtitle{margin:0 0 6px;color:var(--gold-deep);font-family:var(--font-display);font-size:clamp(.92rem,2.8vw,1.18rem);font-weight:500;letter-spacing:.28em;text-transform:uppercase}.cover-title{margin:0;color:var(--deep-brown);font-family:var(--font-script);font-size:clamp(3.2rem,11vw,5.2rem);font-weight:400;line-height:.9}.cover-divider{width:clamp(80px,28%,140px);height:1px;margin:clamp(16px,5%,28px) 0;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.8}.cover-to{margin:0 0 8px;color:var(--gold-deep);font-family:var(--font-display);font-size:clamp(.88rem,2.6vw,1.1rem);font-style:italic;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.cover-guest{margin:0;color:var(--deep-brown);font-family:var(--font-display);font-size:clamp(1.5rem,5vw,2.1rem);font-weight:600;line-height:1.15}.seal-hotspot{position:absolute;left:50%;bottom:16%;width:clamp(110px,30%,160px);height:clamp(110px,30%,160px);padding:0;border:0;border-radius:999px;background:transparent;transform:translate(-50%);cursor:pointer}.seal-hotspot:focus-visible{outline:2px solid rgba(158,126,78,.8);outline-offset:4px}.details-card{width:min(680px,calc(100vw - 32px));aspect-ratio:auto;min-height:min(880px,calc(100svh - 40px));max-height:calc(100svh - 40px);overflow-y:auto;padding:clamp(28px,6%,48px)}.details-content{position:relative;align-items:center;justify-content:flex-start;padding:clamp(40px,8%,70px) clamp(22px,8%,44px)}.details-seal{position:relative;left:auto;bottom:auto;width:clamp(86px,22%,130px);transform:none;margin-bottom:clamp(18px,4%,30px)}.details-kicker{margin:0 0 10px;color:var(--gold-deep);font-family:var(--font-script);font-size:clamp(1.6rem,5vw,2.4rem);font-weight:400}.details-heading{margin:0 0 clamp(18px,4%,28px);color:var(--deep-brown);font-family:var(--font-display);font-size:clamp(1.15rem,3.2vw,1.45rem);font-weight:500;line-height:1.35;max-width:48ch}.details-event-lines{width:100%;margin:0 0 clamp(20px,5%,32px);padding:clamp(16px,4%,26px) 0;border-top:1px solid rgba(158,126,78,.35);border-bottom:1px solid rgba(158,126,78,.35);color:var(--muted);font-family:var(--font-display);font-size:clamp(1.05rem,3vw,1.35rem);line-height:1.5;text-align:center}.details-event-lines p{margin:0 0 8px}.details-event-lines p:last-child{margin-bottom:0}.details-event-lines strong{color:var(--deep-brown);font-weight:600}.details-blocks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,3%,22px);width:100%;margin-bottom:clamp(18px,4%,28px)}.details-block{padding:clamp(14px,3%,20px);border:1px solid rgba(158,126,78,.25);border-radius:6px;background:#f4ecdc8c;text-align:center}.details-block h3{margin:0 0 8px;color:var(--gold-deep);font-family:var(--font-display);font-size:clamp(.82rem,2.2vw,.96rem);font-weight:600;letter-spacing:.12em;text-transform:uppercase}.details-block p{margin:0;color:var(--muted);font-family:var(--font-display);font-size:clamp(.9rem,2.4vw,1.05rem);line-height:1.35}.details-note{margin:0 0 clamp(18px,4%,26px);color:var(--muted);font-family:var(--font-display);font-size:clamp(.96rem,2.6vw,1.1rem);font-style:italic;line-height:1.4;text-align:center;max-width:42ch}.bank-note{max-width:54ch;font-size:clamp(.82rem,2.2vw,.96rem);font-style:normal;letter-spacing:.08em;line-height:1.55;text-transform:uppercase}.details-rsvp{width:min(320px,100%)}.letter-overlay{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:0;background:#2b1f1494;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.letter-image-stage{position:relative;width:100vw;height:100svh;display:grid;place-items:center;overflow:hidden}.letter-full-image{width:auto;max-width:100vw;height:auto;max-height:100svh;display:block;object-fit:contain;border:0;background:transparent;box-shadow:none;animation:letterRise .36s cubic-bezier(.18,.8,.22,1) both}.close-letter{position:fixed;top:16px;right:16px;z-index:23}.rsvp-overlay{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:clamp(12px,3vw,28px);background:linear-gradient(#34271d57,#34271d57),radial-gradient(circle at 18% 22%,rgba(92,69,48,.08) 0 .7px,transparent 1.2px),radial-gradient(circle at 78% 66%,rgba(255,250,238,.35) 0 .8px,transparent 1.4px),var(--paper);background-size:auto,37px 37px,53px 53px,auto;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.letter-rsvp{position:relative;width:min(540px,100%);max-height:calc(100svh - 32px);overflow:auto;padding:clamp(18px,3vw,28px);border:1px solid rgba(158,126,78,.34);border-radius:18px;color:var(--ink);background:linear-gradient(135deg,#fffaf0e6,#f4ecdcf0),radial-gradient(circle at 18% 22%,rgba(92,69,48,.055) 0 .7px,transparent 1.2px),radial-gradient(circle at 78% 66%,rgba(255,250,238,.45) 0 .8px,transparent 1.4px),var(--ivory);background-size:auto,37px 37px,53px 53px,auto;box-shadow:0 28px 95px #25190f52,inset 0 1px #ffffff8a;animation:modalPaperIn .32s cubic-bezier(.22,1,.36,1) both}.letter-rsvp h2{margin:0 0 14px;color:var(--gold-deep);font-family:var(--font-display);font-size:clamp(2rem,5vw,2.65rem);font-weight:500}.close-rsvp{position:absolute;top:12px;right:12px;z-index:1}.rsvp-form{display:grid;gap:13px}label,.template-field{display:grid;gap:7px;color:var(--deep-brown);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}input,textarea{width:100%;border:1px solid rgba(158,126,78,.35);border-radius:8px;color:var(--ink);background:#f4ecdcbd;outline:none;padding:12px 13px;font-size:.95rem;letter-spacing:0;text-transform:none}textarea{resize:vertical}input:focus,textarea:focus{border-color:var(--gold-deep);box-shadow:0 0 0 3px #cbb0692e}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px;border:1px solid rgba(158,126,78,.25);border-radius:8px;background:#c4b09c59}.segmented button{min-height:42px;border:0;border-radius:6px;color:var(--muted);background:transparent;font-size:.84rem;font-weight:700;text-transform:capitalize;cursor:pointer}.segmented button.selected{color:var(--white);background:var(--gold-deep);box-shadow:0 9px 22px #9e7e4e33}.primary-button,.ghost-button,.file-button,.text-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:8px;font-size:.86rem;font-weight:800;letter-spacing:.02em;text-decoration:none;cursor:pointer}.primary-button{width:100%;border:1px solid var(--gold-deep);color:var(--white);background:linear-gradient(135deg,var(--gold),var(--gold-deep));box-shadow:0 14px 32px #9e7e4e40}.primary-button:hover{background:linear-gradient(135deg,#d6bc76,#a98a54)}.primary-button:disabled{opacity:.48;cursor:not-allowed}.invite-rsvp-button{width:58px;border-radius:999px}.already-rsvped-pill{position:fixed;right:max(12px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));z-index:12;max-width:min(260px,calc(100vw - 24px));display:grid;gap:2px;padding:12px 15px;border:1px solid rgba(158,126,78,.3);border-radius:999px;color:var(--deep-brown);background:#f4ecdcdb;box-shadow:0 12px 34px #4b2d1233;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:.74rem;line-height:1.1;animation:rsvpOrbIn .72s cubic-bezier(.22,1,.36,1) both}.already-rsvped-pill strong,.already-rsvped-pill span{display:block}.already-rsvped-pill strong{color:var(--gold-deep);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.ghost-button,.file-button{border:1px solid rgba(158,126,78,.3);color:var(--ink);background:#f4ecdcc7;padding:0 14px}.ghost-button:hover,.file-button:hover{background:#9e7e4e1f}.text-link{color:var(--gold-deep)}.form-status{min-height:20px;margin:0;color:var(--muted);font-size:.84rem;font-weight:600}.form-status.success{color:var(--gold-deep)}.form-status.error{color:#8d4f4b}.icon-button,.icon-link{width:44px;height:44px;display:inline-grid;place-items:center;border:1px solid rgba(158,126,78,.3);border-radius:999px;color:var(--ink);background:#f4ecdcd6;box-shadow:0 10px 32px #2d1f1224;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;transition:transform .16s ease,background .16s ease,color .16s ease}.icon-button:hover,.icon-link:hover{color:var(--white);background:var(--gold-deep);transform:translateY(-1px)}.icon-link:disabled,.icon-link.disabled-link{opacity:.45;cursor:not-allowed;pointer-events:none;box-shadow:none;transform:none}.icon-button svg,.icon-link svg,.primary-button svg,.ghost-button svg,.file-button svg,.metric svg,.empty-state svg{width:18px;height:18px;stroke-width:1.8}@keyframes letterRise{0%{transform:translateY(32px) scale(.97)}to{transform:translateY(0) scale(1)}}@keyframes paperReveal{0%{opacity:0;transform:translateY(14px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rsvpOrbIn{0%{opacity:0;transform:translateY(-14px) scale(.84)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes coverSettle{0%{opacity:0;transform:translateY(10px) scale(calc(var(--invite-scale) * .985));filter:blur(2px)}to{opacity:1;transform:translateY(0) scale(var(--invite-scale));filter:blur(0)}}@keyframes letterLiftOut{0%{opacity:0;transform:translateY(96px) scale(calc(var(--invite-scale) * .9)) rotateX(7deg);filter:blur(2px)}54%{opacity:1;transform:translateY(-14px) scale(calc(var(--invite-scale) * 1.015)) rotateX(0);filter:blur(0)}to{opacity:1;transform:translateY(0) scale(var(--invite-scale));filter:blur(0)}}@keyframes letterSlideHome{0%{opacity:0;transform:translateY(120px) scale(calc(var(--invite-scale) * .92)) rotate(.6deg);filter:blur(2px)}66%{opacity:1;transform:translateY(-10px) scale(calc(var(--invite-scale) * 1.01)) rotate(0);filter:blur(0)}to{opacity:1;transform:translateY(0) scale(var(--invite-scale));filter:blur(0)}}@keyframes modalPaperIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.admin-shell{min-height:100vh;width:min(1180px,100%);margin:0 auto;padding:clamp(18px,3vw,40px)}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.admin-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.brand-lockup{display:flex;align-items:center;gap:14px}.seal-mark{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;border-radius:999px;color:var(--ivory);background:radial-gradient(circle at 35% 30%,#DABE85,var(--gold) 48%,var(--copper) 100%);box-shadow:inset 0 2px 8px #ffffff59,inset 0 -6px 14px #3d210c42,0 9px 22px #4b2d1240;font-family:var(--font-display);font-size:1.05rem;letter-spacing:.06em}.panel-kicker{margin:0;color:var(--gold-deep);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.brand-lockup h1{margin:2px 0 0;font-family:var(--font-script);font-size:clamp(2.35rem,5vw,3.2rem);font-weight:400;line-height:.9;color:var(--gold-deep)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.metric{min-height:104px;padding:18px;display:grid;gap:6px;align-content:start;border-radius:8px;border:1px solid rgba(158,126,78,.2);background:#f4ecdcc2;box-shadow:0 20px 70px #2d1f121f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.metric svg{color:var(--gold-deep)}.metric span{color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.metric strong{color:var(--deep-brown);font-size:2rem}.admin-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:18px;align-items:start}.admin-panel{border-radius:8px;padding:clamp(18px,2.2vw,26px);border:1px solid rgba(158,126,78,.2);background:#f4ecdcc2;box-shadow:0 20px 70px #2d1f121f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-heading h2{margin:0;color:var(--gold-deep);font-family:var(--font-display);font-size:clamp(1.7rem,4vw,2.2rem);font-weight:500}.admin-inline-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.file-button{position:relative;min-width:150px;white-space:nowrap}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.template-field{margin-bottom:14px}.input-with-icon{position:relative;display:block}.input-with-icon svg{position:absolute;left:14px;top:50%;width:18px;height:18px;color:var(--gold-deep);opacity:.72;pointer-events:none;transform:translateY(-50%)}.input-with-icon input{width:100%;padding-left:42px}.manual-link-builder{display:grid;gap:12px;margin:0 0 20px;padding:14px;border:1px solid rgba(158,126,78,.2);border-radius:8px;background:#f4ecdc80}.template-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:220px;overflow:auto;padding-right:2px}.template-option{min-height:58px;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;border:1px solid rgba(158,126,78,.2);border-radius:8px;color:var(--deep-brown);background:#fffaf08a;padding:7px;text-align:left;cursor:pointer}.template-option.selected{border-color:#9e7e4e94;background:#cbb06938;box-shadow:inset 0 0 0 1px #9e7e4e2e}.template-option img,.selected-template-card img{width:42px;height:54px;border-radius:4px;object-fit:cover;object-position:center;box-shadow:0 8px 18px #2d1f1229}.template-option span,.selected-template-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.selected-template-card,.created-link-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:10px;border:1px solid rgba(158,126,78,.18);border-radius:8px;background:#fffaf085}.selected-template-card span,.created-link-card span,.created-link-card small{display:block;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.created-link-card{grid-template-columns:minmax(0,1fr) auto;background:#cbb0692e}.created-link-card strong{display:block;overflow:hidden;color:var(--deep-brown);text-overflow:ellipsis;white-space:nowrap}.created-link-card small{margin-top:2px;color:var(--gold-deep);text-transform:none}.manual-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.manual-actions{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:10px;align-items:center}.send-list{display:grid;gap:8px;margin:18px 0}.send-row{min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 10px 10px 14px;border:1px solid rgba(158,126,78,.18);border-radius:8px;background:#f4ecdc9e}.send-row strong,.send-row span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.send-row span{margin-top:3px;color:var(--muted);font-size:.84rem}.send-row .invite-match-line{color:#6c5440c7;white-space:normal}.send-row>div>span:not(.invite-match-line){display:none}.mapping-warning{display:inline-block;margin-left:8px;padding:3px 7px;border:1px solid rgba(158,126,78,.32);border-radius:999px;color:var(--gold-deep);background:#cbb0692e;font-family:var(--font-ui);font-size:.66rem;font-weight:800;line-height:1;text-transform:uppercase}.send-status{justify-self:end;min-width:74px;padding:6px 9px;border-radius:999px;border:1px solid rgba(158,126,78,.26);color:var(--deep-brown);background:#f4ecdcd1;font-size:.72rem;font-weight:800;line-height:1;text-align:center;text-transform:capitalize}.send-status.yes{color:#5f4727;background:#cbb06947}.send-status.no{color:#6c5440;background:#c4b09c4d}.send-status.maybe,.send-status.pending{color:var(--gold-deep)}.send-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.rsvp-table{overflow:hidden;border:1px solid rgba(158,126,78,.18);border-radius:8px}.table-row{display:grid;grid-template-columns:minmax(140px,1.4fr) .7fr .45fr minmax(120px,1fr) minmax(150px,1fr);gap:12px;padding:12px 14px;border-bottom:1px solid rgba(158,126,78,.14);color:var(--muted);font-size:.9rem}.table-row:last-child{border-bottom:0}.table-head{color:var(--deep-brown);background:#c4b09c59;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.empty-state{min-height:220px;display:grid;place-items:center;align-content:center;gap:12px;color:var(--muted)}.compact-empty{min-height:128px;padding:18px;border:1px dashed rgba(158,126,78,.28);border-radius:8px;text-align:center;background:#f4ecdc6b}.compact-empty p{margin:0}@media(max-width:920px){.guest-shell{background:linear-gradient(#e1d6c86b,#e1d6c86b),var(--paper-texture) center / 720px 271px repeat,var(--paper)}.guest-invite-stage{place-items:center;background:linear-gradient(#e1d6c86b,#e1d6c86b),var(--paper-texture) center / 720px 271px repeat,var(--paper)}.invitation-panel{padding:0}.invitation-art{--invite-scale: 1.08;width:100vw;height:auto;max-width:100vw;max-height:none;object-fit:contain;box-shadow:none;transform-origin:center center}.panel-details .invitation-art{max-height:none}.cover-card{width:100vw;height:100svh;max-width:none;aspect-ratio:auto;border:0;border-radius:0}.details-card{width:100vw;height:100svh;max-width:none;max-height:100svh;min-height:auto;border:0;border-radius:0}.details-blocks,.admin-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.invitation-panel,.invite-rsvp-button,.letter-rsvp{animation-duration:1ms;animation-delay:0ms}}@media(max-width:760px){.admin-header,.panel-heading{align-items:flex-start;flex-direction:column}.admin-actions{justify-content:flex-start}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.table-row{grid-template-columns:1fr;gap:4px}.table-head{display:none}.manual-fields,.manual-actions,.template-options{grid-template-columns:1fr}.manual-actions .primary-button{width:100%}}@media(max-width:520px){.brand-lockup{align-items:flex-start}.rsvp-overlay{padding:10px}.letter-rsvp{max-height:calc(100svh - 20px);padding:16px;border-radius:14px}.letter-rsvp h2{margin-bottom:8px;font-size:clamp(1.8rem,10vw,2.35rem)}.close-rsvp{width:40px;height:40px}.rsvp-form{gap:10px}label,.template-field{gap:5px;font-size:.72rem}input,textarea{padding:10px 12px;border-radius:7px;font-size:.92rem}.segmented button,.primary-button{min-height:40px}.admin-panel{padding:18px}.manual-link-builder{padding:12px}.template-option{min-height:54px}.selected-template-card,.created-link-card{gap:10px}.created-link-card{grid-template-columns:1fr auto}.send-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.send-status{grid-column:1;grid-row:2;justify-self:start}.send-actions{grid-column:2;grid-row:1 / span 2}.cover-title{font-size:clamp(2.8rem,14vw,4.2rem)}.cover-guest{font-size:clamp(1.3rem,6vw,1.8rem)}.details-heading{font-size:clamp(1rem,4.2vw,1.25rem)}}
