/* Convite editorial, simples e delicado — estilos isolados do painel admin. */
:root{--inv-bg:#f8f3ee;--inv-paper:#fffdf9;--inv-text:#66504b;--inv-muted:#907b76;--inv-rose:#b77787;--inv-rose-deep:#98616e;--inv-hairline:#e6cec8;--inv-pink:#f8eae8;--inv-font:"Cormorant Garamond",Georgia,serif}
body.invite-body,body.gifts-body{background:var(--inv-bg);color:var(--inv-text);font-family:"DM Sans",Arial,sans-serif}
body.invite-body{min-width:320px}
.invite-outer{max-width:850px;margin:0 auto;padding:46px 28px 22px}
.invite-paper{background:var(--inv-paper);border:1px solid #eadbd3;box-shadow:0 18px 80px rgba(97,66,61,.065);padding:17px}
.invite-frame{border:1px solid #f0e3de;text-align:center;padding:38px clamp(20px,8.5%,85px) 48px}
.invite-header{display:flex;align-items:center;justify-content:center;gap:11px;font-size:9px;letter-spacing:.22em;color:#a67c7e;font-weight:700;white-space:nowrap}
.invite-mini-line{height:1px;width:28px;background:#d9b6b4;flex-shrink:0}
.invite-flower-photo{width:232px;height:221px;margin:27px auto 21px;border-radius:120px 120px 4px 4px;overflow:hidden;position:relative;background:#efdcda}
.invite-flower-photo:before{content:"";position:absolute;inset:0;z-index:1;border:5px solid rgba(255,255,255,.38);border-radius:inherit;pointer-events:none}
.invite-flower-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%}
.invite-kicker,.invite-section-kicker{color:#aa8584;font-size:10px;letter-spacing:.19em;font-weight:700;margin:0;text-transform:uppercase}
.invite-intro h1{font:500 clamp(50px,8vw,73px)/.99 var(--inv-font);letter-spacing:-.025em;margin:16px auto 0;max-width:560px;color:#634944}
.invite-intro h1 em{display:block;font-weight:500;color:var(--inv-rose-deep);letter-spacing:-.03em}
.invite-ornament{display:flex;align-items:center;justify-content:center;gap:16px;font:25px var(--inv-font);color:#bd8290;margin:18px auto}
.invite-ornament span{height:1px;width:53px;background:var(--inv-hairline)}
.invite-message{font:italic 23px/1.36 var(--inv-font);max-width:465px;margin:0 auto;color:#80655f}
.invite-details{margin:36px auto 0;border-top:1px solid var(--inv-hairline);border-bottom:1px solid var(--inv-hairline);padding:22px 0 24px}
.invite-datetime{display:grid;grid-template-columns:1fr 1fr;max-width:440px;margin:auto}
.invite-datum{display:flex;flex-direction:column;gap:0;align-items:center}
.invite-datum+ .invite-datum{border-left:1px solid var(--inv-hairline)}
.invite-datum span{font:700 10px "DM Sans",sans-serif;letter-spacing:.21em;color:#ad8484}
.invite-datum strong{font:500 63px/.95 var(--inv-font);color:#654943;margin:5px 0}
.invite-datum small{font:500 16px var(--inv-font);color:#836962}
.invite-datum.invite-time strong{font-size:53px;letter-spacing:-.025em;padding-top:7px}
.invite-place{padding:38px 0 0}
.invite-place h2{font:500 35px/1.07 var(--inv-font);margin:13px auto 19px;color:#654b47}
.invite-map-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#f5e9e6;border:1px solid #e6cbc7;border-radius:999px;color:#8d5f68;padding:10px 24px;font-size:12px;font-weight:700;transition:.18s ease}
.invite-map-link:hover{background:#eddad7}
.invite-map-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}
.invite-map-link span{font-size:15px}
.invite-separator{display:flex;align-items:center;justify-content:center;gap:18px;color:#c58d95;font-size:19px;margin:37px auto 24px}
.invite-separator span{height:1px;width:66px;background:var(--inv-hairline)}
.invite-gift-callout{background:#fdf8f5;border:1px solid #f0deda;padding:29px 21px 31px}
.invite-gift-callout h2{font:500 43px/1 var(--inv-font);margin:12px 0 11px;color:#664944}
.invite-gift-callout p:not(.invite-section-kicker){font:17px/1.7 var(--inv-font);max-width:420px;margin:0 auto 20px;color:#846f69}
.invite-gifts-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:45px;background:#aa707e;color:#fff;border-radius:999px;padding:12px 26px;font:700 12px "DM Sans",sans-serif;box-shadow:0 5px 15px rgba(131,76,85,.12);transition:.2s ease}
.invite-gifts-button:hover{background:#915666;transform:translateY(-1px)}
.invite-gifts-button span{font-size:17px;font-weight:400}
.invite-ending{margin-top:38px}
.invite-ending p{font:italic 22px/1.3 var(--inv-font);margin:0 0 11px;color:#8f696c}
.invite-ending strong{font:500 25px var(--inv-font);color:#76545a}
.invite-ending strong span{color:#bc7885}
.invite-bottom-note{text-align:center;padding:20px 0 6px;color:#ab9590;font:600 10px "DM Sans",sans-serif;letter-spacing:.09em}
/* Lista — página independente do convite */
.catalog-header{height:76px;background:#fffdf9;border-bottom:1px solid #efdfda;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 clamp(18px,6vw,70px);gap:10px}
.catalog-back{font-size:12px;color:#9a6b75;font-weight:700;display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.catalog-back span{font-size:19px}
.catalog-brand{text-align:center;font:500 27px var(--inv-font);color:#956676;line-height:.8;white-space:nowrap}
.catalog-brand small{display:block;font:700 8px "DM Sans",sans-serif;letter-spacing:.2em;margin-top:8px;color:#aa8584}
.catalog-main{max-width:1110px;padding:0 24px 55px;margin:0 auto}
.catalog-intro{text-align:center;max-width:690px;margin:0 auto;padding:65px 0 35px}
.catalog-intro h1{font:500 clamp(43px,7vw,65px)/.94 var(--inv-font);margin:16px 0 0;color:#674d48}
.catalog-intro h1 em{font-weight:500;color:#a96a7b}
.catalog-intro .invite-ornament{margin:16px auto}
.catalog-intro>p:last-child{font:20px/1.43 var(--inv-font);margin:0 auto;max-width:520px;color:#86716b}
.catalog-content{padding-top:18px}
.gifts-body .gift-controls{margin-bottom:17px}
.gifts-body .gift-count{color:#9a807a;font-size:12px}
.gifts-body .filter-chip{font-size:11px;background:#fffdf9;color:#8c7772;border-color:#e6d7d2}
.gifts-body .filter-chip.active,.gifts-body .filter-chip:hover{background:#ebd4d7;color:#7e4f60;border-color:#e2c7cd}
.gifts-body .gift-card{box-shadow:none;border-radius:10px;border-color:#ecdfda}
.gifts-body .gift-card:hover{box-shadow:0 8px 26px rgba(92,57,54,.09)}
.gifts-body .gift-image{background:#f7ede9}
.gifts-body .button-primary{background:#aa707e}
.gifts-body .button-outline{background:#fffdf9;border-color:#e6d1ce}
.gifts-body .empty-state{background:#fffdf9;border:1px solid #e9d6d4;border-radius:9px}
.gifts-body .empty-state h2{font:500 29px var(--inv-font);margin:8px 0}
.catalog-footer{margin:60px auto 0;text-align:center;padding-top:27px;border-top:1px solid var(--inv-hairline);font:italic 20px var(--inv-font);color:#8c6c6b}
.catalog-footer>span{font-size:24px;color:#bd8290}
.catalog-footer p{margin:2px 0 14px}
.catalog-footer strong{font-size:26px;font-weight:500}
.catalog-footer a{font:600 11px "DM Sans",sans-serif;color:#a36776;text-decoration:underline;text-underline-offset:5px}
.gifts-body .modal-card{border-radius:10px}
@media(max-width:640px){
 .invite-outer{padding:0;margin:0 auto}
 .invite-paper{box-shadow:none;border:0;padding:10px;background:#fffdf9}
 .invite-frame{padding:29px 13px 36px}
 .invite-header{font-size:8px;letter-spacing:.15em;gap:9px}
 .invite-mini-line{width:17px}
 .invite-flower-photo{width:202px;height:194px;margin:25px auto 20px}
 .invite-kicker,.invite-section-kicker{font-size:9px;letter-spacing:.17em}
 .invite-intro h1{font-size:50px;line-height:.95;margin-top:15px}
 .invite-ornament{margin:16px auto}
 .invite-message{font-size:21px;max-width:310px}
 .invite-details{margin-top:32px;padding:21px 0}
 .invite-datum strong{font-size:55px}
 .invite-datum.invite-time strong{font-size:44px;padding-top:7px}
 .invite-datum small{font-size:15px}
 .invite-place{padding-top:34px}
 .invite-place h2{font-size:33px}
 .invite-separator{margin:30px auto 20px}
 .invite-gift-callout{padding:28px 14px}
 .invite-gift-callout h2{font-size:39px}
 .invite-gift-callout p:not(.invite-section-kicker){font-size:17px}
 .invite-ending{margin-top:34px}
 .invite-ending p{font-size:20px}
 .invite-ending strong{font-size:24px}
 .invite-bottom-note{padding:12px 4px 18px;font-size:9px}
 .catalog-header{height:68px;padding:0 13px;grid-template-columns:1fr auto}
 .catalog-back{font-size:11px}
 .catalog-brand{font-size:23px;text-align:right}
 .catalog-header-balance{display:none}
 .catalog-main{padding:0 16px 38px}
 .catalog-intro{padding:49px 0 26px}
 .catalog-intro h1{font-size:45px}
 .catalog-intro>p:last-child{font-size:19px}
 .gifts-body .gift-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .gifts-body .gift-card-content{padding:12px}
 .gifts-body .gift-card h3{font-size:17px}
 .gifts-body .button-small{font-size:10px}
 .catalog-footer{margin-top:40px}
}
@media(max-width:390px){.invite-intro h1{font-size:46px}.invite-header{font-size:7px}.invite-datum small{font-size:13px}.catalog-brand{font-size:21px}.gifts-body .gift-grid{grid-template-columns:1fr}.gifts-body .gift-image{height:230px}}
@media(prefers-reduced-motion:reduce){.invite-map-link,.invite-gifts-button{transition:none}}
