.correspondencePage{color:#2d3e35;background:#ece2ca;min-height:100svh;padding:18px 14px 110px}.correspondenceBook{background:#f6ecd3;border:1px solid #c8b18b;border-radius:22px;max-width:760px;margin:0 auto;padding:22px;position:relative;overflow:hidden;box-shadow:0 16px 45px #4d3b2530}.correspondenceBook:before{content:"";pointer-events:none;opacity:.18;background-image:radial-gradient(#6f5b3b .5px,#0000 .6px);background-size:7px 7px;position:absolute;inset:0}.correspondenceHeader{text-align:center;padding:10px 0 22px;position:relative}.correspondenceHeader .eyebrow{color:#8d6842}.correspondenceHeader h1{color:#173f32;margin:6px 0;font:700 clamp(34px,8vw,54px) Georgia,serif}.correspondenceHeader p{color:#675f50;margin:0}.correspondenceFilters{scrollbar-width:none;gap:8px;padding:0 0 10px;display:flex;position:relative;overflow-x:auto}.correspondenceFilters::-webkit-scrollbar{display:none}.correspondenceFilters a{color:#625748;background:#fffaf0;border:1px solid #bda98a;border-radius:999px;flex:none;align-items:center;min-height:36px;padding:8px 12px;font:800 12px system-ui,sans-serif;text-decoration:none;display:inline-flex}.correspondenceFilters a.active{color:#fff7e6;background:#173f32;border-color:#173f32}.correspondenceStateFilters{padding-bottom:18px}.correspondenceStateFilters a{min-height:32px;padding:6px 11px}.correspondenceList{gap:18px;display:grid;position:relative}.correspondenceEnvelope{background:#fffaf0;border:1px solid #cdbb9b;border-radius:10px;padding:18px 18px 16px;position:relative;overflow:hidden;box-shadow:0 7px #d3c3a6,0 13px 25px #4c3c2530}.correspondenceEnvelope:before,.correspondenceEnvelope:after{content:"";opacity:.18;background:repeating-linear-gradient(135deg,#a84f3b 0 8px,#f7f0df 8px 16px,#3f6a68 16px 24px,#f7f0df 24px 32px);width:22px;height:100%;position:absolute;top:0}.correspondenceEnvelope:before{left:0}.correspondenceEnvelope:after{right:0}.correspondenceInner{padding:0 15px}.correspondenceTop{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.correspondenceRestaurant{letter-spacing:.08em;color:#183f32;font:700 16px Georgia,serif}.correspondenceBadge{color:#fff5e8;letter-spacing:.06em;background:#8d3f32;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.correspondenceBadge.read{color:#3b372f;background:#b7aa8b}.correspondenceEnvelope h2{color:#2f3e35;margin:12px 0 8px;font:700 23px Georgia,serif}.correspondenceEnvelope p{color:#554f44;line-height:1.55}.correspondenceMeta{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.correspondenceMeta span{border:1px dashed #b5a17d;border-radius:999px;padding:5px 9px;font-size:12px}.correspondenceMeta .correspondenceGiftState{letter-spacing:.04em;font-weight:900}.correspondenceGiftState.available{color:#315b45;background:#eef6ed;border-style:solid;border-color:#5e846d}.correspondenceGiftState.expired{color:#87483e;background:#f8e8e4;border-style:solid;border-color:#ad7a70}.correspondenceGiftState.pending{color:#765d2c;background:#fbf0d6;border-style:solid;border-color:#b99a63}.correspondenceStamp{text-align:center;opacity:.45;border:2px solid #a48d67;border-radius:50%;place-items:center;width:66px;height:66px;font-size:10px;line-height:1.05;display:grid;position:absolute;bottom:12px;right:26px;transform:rotate(-12deg)}.correspondenceRsvp{margin-top:12px;padding-right:78px}.correspondenceRsvp button{color:#fff7e6;cursor:pointer;background:#173f32;border:0;border-radius:12px;padding:10px 14px;font-weight:800}.correspondenceRsvp small{color:#8a352a;margin-top:6px;display:block}.correspondenceRedeemBlock{background:#f8efd9;border:1px dashed #b99a63;border-radius:14px;margin-top:14px;padding:14px 78px 14px 14px;position:relative}.correspondenceRedeemHelp{font-size:13px;color:#61523d!important;margin:0 0 10px!important;line-height:1.45!important}.correspondenceRedeem{color:#fff7e6;cursor:pointer;background:#173f32;border:0;border-radius:12px;align-items:center;gap:8px;padding:10px 14px;font-weight:800;display:inline-flex}.correspondenceRedeem svg{width:17px;height:17px}.correspondenceRedeem:disabled{opacity:.6;cursor:default}.correspondenceRedeemDialog{z-index:1200;background:#0a241dcc;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.correspondenceRedeemDialogCard{text-align:center;background:#fff8e8;border:1px solid #c9a96b;border-radius:20px;width:min(92vw,430px);padding:22px;box-shadow:0 22px 70px #0007}.correspondenceRedeemDialogCard h3{color:#173f32;margin:0 0 10px;font:700 24px Georgia,serif}.correspondenceRedeemDialogCard p{color:#615b50;margin:0 0 18px}.correspondenceRedeemDialogActions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.correspondenceRedeemDialogActions button{cursor:pointer;border-radius:12px;padding:12px 14px;font-weight:800}.redeemNo{color:#4c524b;background:#fffaf0;border:1px solid #baa98b}.redeemYes{color:#fff;background:#c96642;border:0}.correspondenceDeleteWrap{justify-items:start;gap:6px;margin-top:14px;padding-right:78px;display:grid;position:relative}.correspondenceDelete{color:#7d4b3e;cursor:pointer;background:#fffaf0;border:1px solid #bda98a;border-radius:10px;align-items:center;gap:7px;padding:8px 11px;font:700 12px system-ui,sans-serif;display:inline-flex}.correspondenceDelete svg{width:15px;height:15px}.correspondenceDelete:disabled{opacity:.55;cursor:default}.correspondenceDeleteError{color:#8a352a}.correspondenceEmpty{text-align:center;background:#fff9ec;border:1px dashed #bba782;border-radius:16px;padding:44px 20px;position:relative}.correspondenceBack{color:#245442;margin-top:20px;font-weight:800;text-decoration:none;display:inline-block;position:relative}@media (max-width:520px){.correspondenceBook,.correspondenceEnvelope{padding:16px 10px}.correspondenceInner{padding:0 12px}.correspondenceStamp{width:54px;height:54px}.correspondenceRsvp,.correspondenceDeleteWrap,.correspondenceRedeemBlock{padding-right:62px}.correspondenceRedeemDialogCard{padding:18px}.correspondenceRedeemDialogCard h3{font-size:21px}.correspondenceFilters a{min-height:38px;padding:8px 12px}}.correspondenceReservationSummary{color:#173f32;background:#edf6ef;border:1px solid #b9d1bf;border-radius:12px;gap:4px;margin-bottom:10px;padding:11px 12px;display:grid}.correspondenceReservationSummary span{color:#657066;font-size:12px}.correspondenceEventStatus{color:#5f5647;background:#f1e7d2;border-radius:12px;gap:3px;margin-top:12px;padding:11px 12px;display:grid}.correspondenceEventStatus.cancelled{color:#8a4034;background:#f7e3df}.correspondenceReservationDialog{z-index:12000;background:#081c16b8;justify-content:center;align-items:flex-end;padding:18px;display:flex;position:fixed;inset:0;overflow:hidden}.correspondenceReservationCard{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#fffaf0;border:1px solid #c8b18b;border-radius:24px;width:min(100%,560px);max-height:min(90dvh,760px);padding:22px;position:relative;overflow-y:auto;box-shadow:0 24px 80px #00000052}.correspondenceReservationCard h3{color:#173f32;margin:6px 34px 6px 0;font:700 25px Georgia,serif}.correspondenceReservationDate{color:#746b5d!important;margin:0 0 16px!important}.correspondenceReservationCard label{color:#173f32;gap:6px;margin:12px 0;font-size:13px;font-weight:800;display:grid}.correspondenceReservationCard input,.correspondenceReservationCard select,.correspondenceReservationCard textarea{color:#24332d;width:100%;font:inherit;background:#fff;border:1px solid #c9bea5;border-radius:12px;padding:12px 13px}.correspondenceReservationCard textarea{resize:vertical;min-height:82px}.correspondenceGuestFields{background:#fbf4e5;border:1px solid #dfd2b7;border-radius:14px;margin:14px 0;padding:12px}.correspondenceGuestFields legend{color:#173f32;padding:0 6px;font-weight:800}.correspondencePrivacy{background:#f4eddf;border-radius:10px;padding:10px 12px;color:#6d675c!important;font-size:12px!important;line-height:1.45!important}.correspondenceReservationError{font-weight:700;color:#8a352a!important}.correspondenceReservationActions{grid-template-columns:1fr auto;gap:10px;margin-top:16px;display:grid}.correspondenceReservationActions button{color:#fff7e6;background:#173f32;border:0;border-radius:12px;min-height:46px;padding:11px 14px;font-weight:800}.correspondenceReservationActions button.danger{color:#873f33;background:#f2ded9}.correspondenceReservationActions button:disabled{opacity:.55}.correspondenceReservationClose{color:#173f32;background:#f1e8d7;border:0;border-radius:50%;width:38px;height:38px;font-size:24px;position:absolute;top:12px;right:14px}@media (max-width:520px){.correspondenceReservationDialog{align-items:flex-end;padding:0}.correspondenceReservationCard{width:100%;max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));padding:20px 16px calc(18px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.correspondenceReservationActions{grid-template-columns:1fr}.correspondenceReservationCard input,.correspondenceReservationCard select,.correspondenceReservationCard textarea{font-size:16px}}.correspondenceReservationKeep{background:#f3ecdf;border-radius:10px;margin:14px 78px 0 0;padding:9px 11px;position:relative;color:#6d675c!important;font-size:12px!important;line-height:1.4!important}@media (max-width:520px){.correspondenceReservationKeep{margin-right:62px}}.correspondenceEnvelope[id]{scroll-margin-top:84px}.correspondenceEnvelope:target{outline:3px solid #b85f4347;box-shadow:0 14px 36px #232c2624}
