@import"https://fonts.googleapis.com/css2?family=Italianno&family=Inter:wght@400;500;600&family=Montserrat:wght@500;600&family=Noto+Serif+KR:wght@400;500;600;700&display=swap";:root{color:#252321;background:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--paper: #ffffff;--paper-soft: #fbfaf8;--ink: #252321;--muted: #76716b;--line: #e7e1d8;--champagne: #d6c2a1;--champagne-soft: #f5efe5;--shadow: 0 24px 60px rgb(51 51 51 / 7%)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{min-width:320px;margin:0;background:var(--paper)}button{border:0;color:inherit;font:inherit;cursor:pointer}button:disabled{cursor:default}.design-select,.placeholder-page{display:grid;min-height:100vh;place-items:center;padding:32px 24px;background:linear-gradient(180deg,#fff,#fbfaf8)}.design-select__content,.placeholder-page__content{width:min(100%,390px);text-align:center}.design-select h1,.placeholder-page h1{margin:14px 0 34px;color:var(--ink);font-family:"Noto Serif KR",serif;font-size:30px;font-weight:600;letter-spacing:0;line-height:1.42}.design-select__actions{display:grid;gap:12px}.design-select__button,.placeholder-page__link{display:grid;min-height:54px;place-items:center;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:15px;font-weight:600;text-decoration:none;box-shadow:0 18px 36px #3333330d}.design-select__button.is-ready{color:var(--muted);background:var(--paper-soft);box-shadow:none}.invitation{min-height:100vh;padding-bottom:104px;overflow-x:hidden;background:linear-gradient(180deg,#fff,#fbfaf8 48%,#fff)}.hero-section{position:relative;display:grid;min-height:100svh;place-items:end center;padding:52px 24px 72px;color:#fff;isolation:isolate;background-image:url(/images/wedding-hero.png);background-position:center;background-size:cover}.hero-section__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,#0000002e,#0003 42%,#00000094),linear-gradient(90deg,rgb(0 0 0 / 16%),transparent 36%,rgb(0 0 0 / 12%))}.hero-section__content{width:min(100%,360px);text-align:center;text-shadow:0 10px 32px rgb(0 0 0 / 35%);animation:hero-rise 1.8s ease both}.eyebrow,.section-label{margin:0;color:var(--champagne);font-size:12px;font-weight:600;letter-spacing:.16em}.hero-section h1{display:grid;gap:4px;margin:18px 0 22px;font-family:"Noto Serif KR",serif;font-size:42px;font-weight:600;letter-spacing:0;line-height:1.22}.hero-section h1 span{color:var(--champagne-soft);font-family:Inter,sans-serif;font-size:18px;font-weight:400}.hero-section__date,.hero-section__venue,.hero-section__message{margin:0}.hero-section__date{font-size:15px;font-weight:600}.hero-section__venue{margin-top:10px;color:#f6efe4;font-family:"Noto Serif KR",serif;font-size:18px;font-weight:500}.hero-section__message{margin-top:18px;font-size:14px;line-height:1.8}.content-section{width:min(100%,430px);min-height:92svh;margin:0 auto;padding:96px 24px 80px;scroll-margin-top:18px}.section-fade{opacity:calc(.18 + (var(--section-visibility) * .82));transform:translateY(calc((1 - var(--section-visibility)) * 24px));transition:opacity .9s ease,transform .9s ease}.content-section h2{margin:14px 0 34px;color:var(--ink);font-family:"Noto Serif KR",serif;font-size:30px;font-weight:600;letter-spacing:0;line-height:1.42}.intro-section{text-align:center}.intro-section__message{display:grid;gap:18px;color:#514d48;font-family:"Noto Serif KR",serif;font-size:16px;line-height:2.05}.intro-section__message p{margin:0}.ceremony-info{display:grid;gap:0;margin-top:48px;text-align:left;background:var(--paper);box-shadow:var(--shadow)}.ceremony-info>div{display:grid;grid-template-columns:72px 1fr;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line)}.ceremony-info>div:last-child{border-bottom:0}.ceremony-info span{color:var(--muted);font-size:13px}.ceremony-info strong{color:var(--ink);font-size:15px;font-weight:500;line-height:1.65}.location-section h2{margin-bottom:28px}.map-card{position:relative;min-height:280px;overflow:hidden;background:linear-gradient(135deg,#f3f6f1,#fff 46%,#eef3f6);box-shadow:var(--shadow)}.map-card__grid{position:absolute;top:-24px;right:-24px;bottom:-24px;left:-24px;background:linear-gradient(90deg,transparent 0 44%,rgb(145 157 147 / 22%) 44% 45%,transparent 45%),linear-gradient(0deg,transparent 0 42%,rgb(145 157 147 / 18%) 42% 43%,transparent 43%),repeating-linear-gradient(28deg,transparent 0 42px,rgb(214 194 161 / 26%) 43px 45px);opacity:.82}.map-card__marker{position:absolute;top:42%;left:50%;width:26px;height:26px;border:7px solid #ffffff;border-radius:50% 50% 50% 0;background:#365b46;box-shadow:0 10px 22px #365b4647;transform:translate(-50%,-50%) rotate(-45deg)}.map-card__label{position:absolute;right:18px;bottom:18px;left:18px;display:grid;gap:4px;padding:16px 18px;background:#ffffffe0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.map-card__label strong{font-family:"Noto Serif KR",serif;font-size:18px;font-weight:600}.map-card__label span{color:var(--muted);font-size:13px}.map-app-buttons{display:flex;justify-content:space-between;gap:10px;margin:26px 0 32px;width:100%}.map-app-buttons__item{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;height:48px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#46413c;font-size:14px;font-weight:600;box-shadow:0 2px 8px #0000000b;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease;gap:6px}.map-app-buttons__icon{width:20px;height:20px;object-fit:contain;flex-shrink:0}.map-app-buttons__item:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000014;background-color:var(--paper-soft)}.map-app-buttons__item:active{transform:translateY(0);background-color:var(--line)}.address-copy{position:relative;display:grid;grid-template-columns:1fr 44px;align-items:center;gap:14px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.address-copy p{margin:0;color:#4f4a44;font-size:14px;line-height:1.7;white-space:pre-line}.location-details__item{margin:0;padding:14px 4px 0;color:#0c4a6e;font-size:14px;font-weight:700;line-height:1.7;white-space:pre-line}.address-copy__button{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--champagne-soft)}.address-copy__button svg{width:20px;height:20px;fill:none;stroke:#5b5040;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.address-copy__toast{position:absolute;right:0;bottom:-42px;padding:8px 12px;background:#252321;color:#fff;font-size:12px;opacity:0;transform:translateY(-6px);transition:opacity .24s ease,transform .24s ease;pointer-events:none}.address-copy__toast.is-visible{opacity:1;transform:translateY(0)}.account-section h2{margin-bottom:28px}.account-list{display:grid;gap:14px}.account-card{display:grid;grid-template-columns:1fr 64px;align-items:center;gap:16px;padding:20px 18px;border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow)}.account-card span,.account-card p{color:var(--muted);font-size:13px}.account-card span{display:block;margin-bottom:7px}.account-card strong{display:block;color:var(--ink);font-size:16px;font-weight:600}.account-card p{margin:8px 0 0;line-height:1.6}.account-card__button{min-height:42px;border:1px solid var(--line);background:var(--champagne-soft);color:#5b5040;font-size:13px;font-weight:600}.bottom-navigation{position:fixed;right:20px;bottom:max(18px,env(safe-area-inset-bottom));left:20px;z-index:20;display:grid;grid-template-columns:repeat(3,1fr);width:min(390px,calc(100% - 40px));margin:0 auto;overflow:hidden;border:1px solid rgb(231 225 216 / 82%);background:#ffffffe0;box-shadow:0 24px 60px #25232121;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.bottom-navigation__button{position:relative;min-height:58px;background:transparent;color:#38342f;font-size:14px;font-weight:600;transition:background-color .18s ease,color .18s ease}.bottom-navigation__button+.bottom-navigation__button{border-left:1px solid var(--line)}.bottom-navigation__button.is-active{background:var(--champagne-soft);color:#5b5040}.bottom-navigation__button.is-active:before{position:absolute;top:0;right:18px;left:18px;height:3px;background:var(--champagne);content:""}.bottom-navigation__button:focus-visible,.address-copy__button:focus-visible,.map-app-buttons__item:focus-visible,.account-card__button:focus-visible{outline:2px solid var(--champagne);outline-offset:3px}@keyframes hero-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media(min-width:520px){.hero-section,.content-section{width:430px;margin-right:auto;margin-left:auto}.hero-section{min-height:860px}}.ver1 .snow-effect,.ver1 .snow-flake{display:none!important}.ver1.invitation{background:#fff;color:#1e293b;min-height:100vh;position:relative}.ver1 .section-header{text-align:center;margin-bottom:24px}.ver1 .snow-badge{display:block;width:100%;text-align:center;padding:0;border-radius:0;background:none;border:none;box-shadow:none;color:#0284c7;font-family:Italianno,cursive;font-size:38px;font-weight:400;line-height:1.1;letter-spacing:.04em;margin-bottom:8px;-webkit-backdrop-filter:none;backdrop-filter:none}.ver1 .content-section h2{color:#0f172a;font-family:"Noto Serif KR",serif;font-size:26px;font-weight:600;margin:6px 0 0;letter-spacing:-.01em}.ver1 .section-label{color:#64748b;font-size:13px;font-weight:500;letter-spacing:.12em}.ver1 .content-section{min-height:auto;padding:40px 24px 32px}.ver1 .hero-section{min-height:auto;padding:24px 20px 16px;background:transparent;display:flex;flex-direction:column;align-items:center}.ver1 .hero-section__overlay{display:none}.ver1 .hero-section__quote-area{width:min(100%,390px);text-align:center;margin-bottom:20px;padding:8px 12px;position:relative;z-index:2}.ver1 .hero-section__snowfall-area{position:relative;width:min(100%,390px)}.ver1 .handwriting-underline{display:block;width:0;height:13px;margin:-4px auto 0;border-bottom:2px solid #0284c7;border-radius:0 0 54% 46%;opacity:.82;transform:rotate(-1.5deg);animation:handwriting-underline 1.4s cubic-bezier(.25,1,.5,1) .2s forwards}@keyframes handwriting-underline{to{width:min(100%,275px)}}.ver1 .handwriting-text{font-family:Italianno,cursive;font-size:clamp(32px,10vw,42px);line-height:1.35;color:#0284c7;margin:0;animation:handwriting-reveal .6s ease-out both}@keyframes handwriting-reveal{0%{opacity:.6;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.ver1 .handwriting-text,.ver1 .handwriting-underline{animation:none}.ver1 .handwriting-underline{width:min(100%,275px)}}.ver1 .hero-section__photo-frame{width:min(100%,390px);margin-top:0;margin-bottom:20px;border-radius:8px;overflow:hidden;position:relative;box-shadow:none;border:none;z-index:1}.ver1 .hero-section__photo{width:100%;height:62svh;min-height:420px;background:url(/images/wedding-hero.png) center / cover no-repeat}.ver1 .hero-section__photo-frost{display:none}.ver1 .hero-section__content{width:min(100%,390px);text-align:center;padding:20px 16px;margin-top:0;background:transparent;border:none;border-radius:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;position:relative;z-index:2;color:#1e293b;text-shadow:none;animation:hero-rise 1.2s ease both}.ver1 .hero-section__script-title{display:block;font-family:Italianno,cursive;font-size:42px;line-height:1;color:#0284c7;margin-bottom:2px}.ver1 .hero-section__snow-tag{display:inline-block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#0284c7;font-weight:600;margin-bottom:8px}.ver1 .hero-section h1{font-family:"Noto Serif KR",serif;font-size:34px;font-weight:600;color:#0f172a;margin:12px 0;display:flex;align-items:center;justify-content:center;gap:12px}.ver1 .hero-section__amp{color:#38bdf8;font-family:Italianno,cursive;font-size:32px;font-weight:400;line-height:1}.ver1 .hero-section__divider{display:flex;align-items:center;justify-content:center;gap:10px;margin:16px 0;color:#94a3b8}.ver1 .hero-section__divider .dot{width:4px;height:4px;border-radius:50%;background-color:#cbd5e1}.ver1 .hero-section__date{font-size:14px;font-weight:600;color:#334155;letter-spacing:.05em}.ver1 .hero-section__venue{font-size:15px;font-weight:500;color:#475569;margin-top:6px;font-family:"Noto Serif KR",serif}.ver1 .hero-section__message{margin-top:18px;font-size:14px;line-height:1.8;color:#64748b}.ver1 .invitation-actions-wrapper{width:min(100%,390px);margin:16px auto 32px;padding:0 4px;position:relative}.ver1 .invitation-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:0;background:transparent;border:none;border-radius:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.ver1 .action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:12px 8px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;color:#334155;font-size:12px;font-weight:600;transition:all .2s ease;box-shadow:none}.ver1 .action-btn__icon{width:20px;height:20px;color:#0284c7}.ver1 .action-btn:hover,.ver1 .action-btn:active{background:#f0f9ff;color:#0369a1;border-color:#bae6fd}.ver1 .invitation-actions__toast{position:absolute;bottom:-32px;left:50%;transform:translate(-50%);background:#0f172a;color:#fff;font-size:12px;padding:6px 14px;border-radius:20px;box-shadow:0 4px 12px #00000026;white-space:nowrap;animation:ver1-toast-fade 2s ease both}.ver1 .ceremony-info__person{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;width:100%;min-width:0}.ver1 .person-name{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:120px;min-width:0}.ver1 .person-name strong{align-self:center}.ver1 .person-parent{color:#94a3b8;font-size:11px;font-weight:400;line-height:1.2;white-space:nowrap}.ver1 .contact-icons{display:flex;flex-direction:column;align-items:stretch;width:max-content;gap:4px;min-width:0}.ver1 .contact-item{display:flex;align-items:center;justify-content:flex-start;width:100%;gap:8px}.ver1 .contact-label{font-size:12px;color:#64748b;font-weight:500}.ver1 .contact-icon-btn{width:25px;height:25px;border-radius:50%;background:#f0f9ff;border:1px solid #bae6fd;color:#0284c7;display:inline-flex;align-items:center;justify-content:center;transition:all .18s ease;text-decoration:none}.ver1 .contact-icon-btn:hover,.ver1 .contact-icon-btn:active{background:#0284c7;color:#fff;border-color:#0284c7}@keyframes ver1-toast-fade{0%{opacity:0;transform:translate(-50%,6px)}15%{opacity:1;transform:translate(-50%)}85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-6px)}}.ver1 .intro-section{padding-top:24px}.ver1 .intro-section__card{background:transparent;border:none;border-radius:0;padding:16px 0;box-shadow:none;margin-bottom:24px;text-align:center}.ver1 .intro-section__message{color:#334155;font-family:"Noto Serif KR",serif;font-size:15px;line-height:2.1}.ver1 .intro-section__message p+p{margin-top:16px}.ver1 .intro-section__calendar-card{margin:8px 0 32px;padding:0}.ver1 .wedding-calendar{width:100%;max-width:290px;margin:0 auto}.ver1 .wedding-calendar__title{margin:0 0 16px;color:#0f172a;font-family:"Noto Serif KR",serif;font-size:23px;font-weight:500;text-align:center}.ver1 .wedding-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);column-gap:4px;row-gap:8px;text-align:center}.ver1 .calendar-cell{display:grid;aspect-ratio:1;place-items:center;color:#334155;font-size:13px;font-weight:500}.ver1 .calendar-cell--header{padding-bottom:8px;border-bottom:1px solid #dbe5ee;color:#64748b;font-size:12px;font-weight:600}.ver1 .calendar-cell.sun{color:#d9534f}.ver1 .calendar-cell.sat{color:#337ab7}.ver1 .calendar-cell.is-target .day-number{display:grid;width:29px;height:29px;place-items:center;border-radius:50%;background:#0ea5e9;box-shadow:0 4px 10px #0ea5e959;color:#fff;font-weight:600}.ver1 .wedding-calendar__countdown{margin-top:22px;padding:12px 0;text-align:center}.ver1 .wedding-calendar__countdown p,.ver1 .wedding-calendar__location{margin:0;color:#64748b;font-size:13px;font-weight:600}.ver1 .wedding-calendar__time{display:grid;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 12px minmax(0,1fr) 12px minmax(0,1fr);align-items:start;margin-top:12px}.ver1 .wedding-calendar__time span{display:grid;min-width:0;gap:4px}.ver1 .wedding-calendar__time strong{color:#bca579;font-size:clamp(20px,7vw,28px);font-weight:600;line-height:1}.ver1 .wedding-calendar__time small{color:#64748b;font-size:10px;font-weight:500}.ver1 .wedding-calendar__time b{position:relative;top:5px;color:#bca579;font-size:20px;font-weight:600}.ver1 .wedding-calendar__location{margin-top:16px;font-weight:500;white-space:pre-line}.ver1 .ceremony-info{margin-top:24px;padding-left:10px;padding-right:10px;background:transparent;border:none;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;border-radius:0;box-shadow:none;overflow:hidden}.ver1 .ceremony-info__row{display:grid;grid-template-columns:60px minmax(0,1fr);gap:18px;padding:14px 0;min-height:58px;border-bottom:1px solid #f1f5f9;align-items:center}.ver1 .ceremony-info__row:has(.ceremony-info__person){padding-top:10px;padding-bottom:10px}.ver1 .ceremony-info__row:last-child{border-bottom:none}.ver1 .ceremony-info__row span{color:#64748b;font-size:13px;font-weight:500}.ver1 .ceremony-info__row strong{color:#0f172a;font-size:14px;font-weight:500}.ver1 .map-card{border-radius:12px;border:1px solid #e2e8f0;box-shadow:none;overflow:hidden}.ver1 .map-card__label{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;border-top:1px solid #f1f5f9}.ver1 .map-card__label strong{color:#0f172a}.ver1 .map-app-buttons__item{border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#334155;box-shadow:none}.ver1 .map-app-buttons__item:hover{background:#f0f9ff;border-color:#bae6fd;color:#0369a1}.ver1 .address-copy{background:transparent;border:none;border-radius:0;padding:18px 4px}.ver1 .address-copy__button{border:0;border-radius:0;background:transparent}.ver1 .address-copy__button svg{stroke:#0284c7}.ver1 .location-section__title{margin-bottom:1px}.ver1 .location-section__place{margin-bottom:28px;text-align:center}.ver1 .location-section__place h2{margin:0}.ver1 .location-section__place .address-copy{display:grid;grid-template-columns:minmax(54px,1fr) auto minmax(54px,1fr);column-gap:0;padding:0 4px}.ver1 .location-section__place .address-copy p{grid-column:2;min-width:0;text-align:center}.ver1 .location-section__place .address-copy__button{grid-column:3;justify-self:start;margin-left:10px}.ver1 .location-section .location-details{text-align:left}.ver1 .location-section .location-details__group{display:grid;gap:6px;margin:0}.ver1 .location-section .location-details__group+.location-details__group{margin-top:32px}.ver1 .location-section .location-details__routes{display:grid;gap:4px}.ver1 .location-section .location-details__group .location-details__item{margin:0;padding:0;color:#1a1a1a;font-weight:400}.ver1 .location-section .location-details__group .location-details__title{font-size:16px;font-weight:700}.ver1 .tab-account{margin-top:0}.ver1 .list-tab{display:flex;width:calc(100% - 32px);justify-content:center;margin:54px auto 16px;padding:0;list-style:none}.ver1 .list-tab li{position:relative;display:flex;flex:0 0 50%;align-items:center;justify-content:center}.ver1 .list-tab li+li{margin-left:0;padding-left:0}.ver1 .list-tab li+li:before{position:absolute;top:50%;left:0;color:#cbd5e1;content:"|";line-height:1;transform:translateY(-50%)}.ver1 .btn-tab{position:relative;display:inline-flex;width:100%;align-items:center;justify-content:center;min-height:24px;padding:4px 10px;border-radius:2px;border:0;background:transparent;-webkit-tap-highlight-color:transparent;color:#94a3b8;font-size:15px;font-weight:500}.ver1 .btn-tab:active{background:transparent}.ver1 .list-tab li.active .btn-tab{color:#0f172a;font-weight:700}.ver1 .list-tab li.active .btn-tab:after{position:absolute;left:50%;bottom:-5px;width:34px;height:1px;background:#0f172a;content:"";transform:translate(-50%)}.ver1 .btn-tab:focus-visible,.ver1 .btn-copy:focus-visible,.ver1 .link-phone:focus-visible{outline:2px solid #7dd3fc;outline-offset:3px}.ver1 .tab-box[hidden]{display:none}.ver1 .group-account{padding:18px 4px}.ver1 .item-box,.ver1 .item-account,.ver1 .left-item{display:flex;align-items:center}.ver1 .item-box{min-height:25px}.ver1 .left-item{gap:8px}.ver1 .txt-tag{display:inline-flex;align-items:center;color:#0f172a;font-size:13px;font-weight:600}.ver1 .txt-name{color:#0f172a;font-size:16px;font-weight:600}.ver1 .link-phone{margin-left:2px}.ver1 .item-account{position:relative;justify-content:space-between;gap:16px;margin-top:10px}.ver1 .txt-account{min-width:0;color:#64748b;font-size:13px;white-space:nowrap}.ver1 .btn-item{display:inline-grid;width:40px;height:40px;padding:0;place-items:center;border-radius:8px;background:#fff;color:#334155;font-size:13px;font-weight:600;transition:all .18s ease}.ver1 .btn-copy svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.ver1 .btn-copy,.ver1 .btn-copy:hover,.ver1 .btn-copy:active{width:44px;height:44px;border:0;border-radius:0;background:transparent;color:#0284c7}.ver1 .btn-item:hover{border-color:#bae6fd;background:#f0f9ff;color:#0284c7}.ver1 .guest-message-section{background:transparent;border:none;border-radius:0;padding:32px 0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.ver1 .guest-message-form{display:grid;gap:16px;margin:0 16px}.ver1 .form-group{display:grid;gap:6px}.ver1 .form-group label{color:#475569;font-size:13px;font-weight:600}.ver1 .form-group input,.ver1 .form-group textarea{width:100%;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:12px 14px;font-size:14px;color:#0f172a;transition:all .15s ease}.ver1 .form-group input:focus,.ver1 .form-group textarea:focus{outline:none;border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf82e}.ver1 .guest-message-form__submit{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:10px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;font-size:14px;font-weight:600;box-shadow:none;transition:all .18s ease;margin-top:8px}.ver1 .guest-message-form__submit:hover,.ver1 .guest-message-form__submit:active{background:linear-gradient(135deg,#0369a1,#075985)}.ver1 .guest-message-form__notice{margin-top:14px;color:#0284c7;font-size:13px;text-align:center;font-weight:500}.ver1 .guestbook-section{padding:12px 0 32px}.ver1 .guestbook-carousel{padding:0 16px}.ver1 .guestbook-card{display:flex;min-height:152px;flex-direction:column;justify-content:space-between;border:1px solid #e7edf2;border-radius:16px;background:#fbfcfd;padding:20px 20px 16px;transition:box-shadow .24s ease}.ver1 .guestbook-card__message{color:#334155;font-size:15px;font-weight:400;line-height:1.75;overflow-wrap:anywhere;white-space:pre-wrap}.ver1 .guestbook-card__name{margin-top:16px;color:#718096;font-size:12px;font-weight:500;text-align:right}.ver1 .guestbook-single-card{margin:0 16px}.ver1 .guestbook-carousel .swiper-slide{opacity:.72;transition:opacity .24s ease}.ver1 .guestbook-carousel .swiper-slide-active{opacity:1}.ver1 .guestbook-carousel .swiper-slide-active .guestbook-card{box-shadow:0 6px 18px #0f172a0d}.ver1 .bottom-navigation{background:#fffffff2;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 8px 24px #0f172a14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:4px}.ver1 .bottom-navigation__button{border:none;border-radius:12px;color:#64748b;font-size:13px;font-weight:600;transition:all .2s ease}.ver1 .bottom-navigation__button+.bottom-navigation__button{border-left:none}.ver1 .bottom-navigation__button.is-active{background:#f0f9ff;color:#0284c7;font-weight:700}.ver1 .bottom-navigation__button.is-active:before{display:none}.ver1 .album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ver1 .album-grid__item{aspect-ratio:1;overflow:hidden;padding:0;border:1px solid #e7e3de;border-radius:6px}.ver1 .album-grid__item img{width:100%;height:100%;object-fit:cover}.ver1 .album-pagination{display:flex;justify-content:center;gap:18px;margin-top:20px}.ver1 .hero-section__message,.ver1 .hero-section__venue,.ver1 .intro-section__message,.ver1 .wedding-calendar__countdown p,.ver1 .ceremony-info,.ver1 .location-section__place,.ver1 .location-section .location-details,.ver1 .section-label,.ver1 .inner-tab.tab-account,.ver1 .invitation-actions,.ver1 .invitation-actions__toast{font-family:Pretendard Variable,Pretendard,sans-serif}.photo-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:grid;place-items:center;width:100vw;height:100dvh;overflow:hidden;background:#000000e5}.photo-lightbox__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:transparent;cursor:default}.photo-lightbox__content{position:relative;z-index:1;display:grid;place-items:center;width:min(100%,560px);height:100%;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));pointer-events:none}.photo-lightbox__image-wrap{display:grid;place-items:center;width:100%;max-height:100%;touch-action:pan-y;pointer-events:auto}.photo-lightbox__image{display:block;max-width:min(92vw,528px);max-height:calc(100dvh - 96px);object-fit:contain;border-radius:4px;box-shadow:0 10px 30px #0000007f}.photo-lightbox__image.is-next{animation:photo-lightbox-enter-next .22s ease-out both}.photo-lightbox__image.is-previous{animation:photo-lightbox-enter-previous .22s ease-out both}.photo-lightbox__close,.photo-lightbox__nav{position:absolute;z-index:2;display:grid;place-items:center;border:0;color:#fff;cursor:pointer;pointer-events:auto}.photo-lightbox__close{top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));width:44px;height:44px;background:transparent;font-size:38px;font-weight:200;line-height:1}.photo-lightbox__nav{top:50%;width:44px;height:44px;border-radius:50%;background:#ffffff24;font-size:38px;line-height:1;transform:translateY(-50%)}.photo-lightbox__nav:hover,.photo-lightbox__nav:focus-visible{background:#ffffff47}.photo-lightbox__nav--previous{left:12px}.photo-lightbox__nav--next{right:12px}.photo-lightbox__counter{position:absolute;top:max(18px,env(safe-area-inset-top));left:max(20px,env(safe-area-inset-left));margin:0;color:#fff;font-size:14px;font-weight:600;pointer-events:none}body.photo-lightbox-open .rsvp-floating-edit-btn,body.photo-lightbox-open .bottom-navigation{display:none!important}@keyframes photo-lightbox-enter-next{0%{opacity:0;transform:translate(32px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes photo-lightbox-enter-previous{0%{opacity:0;transform:translate(-32px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}@media(prefers-reduced-motion:reduce){.photo-lightbox__image.is-next,.photo-lightbox__image.is-previous{animation:none}}.rsvp-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:flex-end;z-index:2000;animation:rsvp-fadeIn .3s ease-out}@media(min-width:576px){.rsvp-modal-overlay{align-items:center}}.rsvp-modal-content{background-color:#fff;width:100%;max-width:460px;border-top-left-radius:24px;border-top-right-radius:24px;padding:24px;max-height:90vh;overflow-y:auto;box-shadow:0 -8px 24px #00000026;position:relative;animation:rsvp-slideUp .3s cubic-bezier(.16,1,.3,1);box-sizing:border-box}@media(min-width:576px){.rsvp-modal-content{border-radius:20px;max-height:85vh;box-shadow:0 12px 32px #0003}}@keyframes rsvp-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes rsvp-slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.rsvp-close-btn{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;cursor:pointer;color:#999;padding:4px;line-height:1}.rsvp-close-btn:hover{color:#333}.rsvp-title{font-size:1.25rem;font-weight:700;color:#2c2c2c;margin-top:12px;margin-bottom:12px;text-align:center}.rsvp-desc{font-size:.9rem;color:#666;line-height:1.6;margin-bottom:24px;text-align:center;word-break:keep-all}.rsvp-form{display:flex;flex-direction:column;gap:16px}.rsvp-form-group{display:flex;flex-direction:column;align-items:flex-start;width:100%}.rsvp-label{font-size:.85rem;font-weight:600;color:#444;margin-bottom:6px}.rsvp-label span{color:#d32f2f;margin-left:2px}.rsvp-input,.rsvp-select,.rsvp-textarea{width:100%;padding:12px;border:1px solid #dddddd;border-radius:8px;font-size:.95rem;background-color:#fafafa;transition:border-color .2s,background-color .2s;box-sizing:border-box}.rsvp-input:focus,.rsvp-select:focus,.rsvp-textarea:focus{outline:none;border-color:#c4a484;background-color:#fff}.rsvp-radio-group{display:flex;gap:8px;width:100%}.rsvp-radio-btn{flex:1;position:relative}.rsvp-radio-btn input[type=radio]{position:absolute;opacity:0;width:0;height:0}.rsvp-radio-label{display:block;padding:11px 0;text-align:center;border:1px solid #dddddd;border-radius:8px;font-size:.9rem;cursor:pointer;background-color:#fafafa;transition:all .2s;-webkit-user-select:none;user-select:none}.rsvp-radio-btn input[type=radio]:checked+.rsvp-radio-label{border-color:#c4a484;background-color:#fcf9f5;color:#8e7355;font-weight:600}.rsvp-checkbox-group{display:flex;align-items:flex-start;margin:8px 0;text-align:left}.rsvp-checkbox-group input[type=checkbox]{margin-top:3px;margin-right:8px;accent-color:#c4a484;width:16px;height:16px;cursor:pointer}.rsvp-checkbox-label{font-size:.85rem;color:#555;line-height:1.4;cursor:pointer;-webkit-user-select:none;user-select:none}.rsvp-checkbox-label span{color:#d32f2f;margin-left:2px}.rsvp-action-btn,.rsvp-submit-btn{width:100%;padding:14px;background-color:#c4a484;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;box-sizing:border-box}.rsvp-action-btn:hover,.rsvp-submit-btn:hover{background-color:#b09071}.rsvp-submit-btn:disabled{background-color:#ccc;cursor:not-allowed}.rsvp-status-container{display:flex;flex-direction:column;align-items:center;padding:30px 0;text-align:center}.rsvp-status-icon{font-size:48px;margin-bottom:16px}.rsvp-status-icon.success{color:#4caf50}.rsvp-status-icon.error{color:#f44336}.rsvp-status-title{font-size:1.25rem;font-weight:700;color:#333;margin-bottom:12px}.rsvp-status-desc{font-size:.95rem;color:#666;line-height:1.6;margin-bottom:24px;word-break:keep-all}.rsvp-meal-notice{font-size:.75rem;color:#666;line-height:1.5;margin-bottom:8px;background-color:#fafafa;border-left:3px solid #c4a484;padding:6px 10px;width:100%;box-sizing:border-box;border-radius:4px;text-align:left}.rsvp-input.error,.rsvp-textarea.error{border-color:#d32f2f!important;background-color:#fff8f8}.rsvp-input.error:focus,.rsvp-textarea.error:focus{border-color:#d32f2f!important;box-shadow:0 0 0 2px #d32f2f1a}.rsvp-field-error{font-size:.8rem;color:#d32f2f;margin-top:4px;text-align:left;display:block;width:100%;animation:rsvp-fadeIn .2s ease-out}.rsvp-floating-edit-btn{position:fixed;bottom:85px;right:20px;background-color:#c4a484;color:#fff;border:none;border-radius:50px;padding:12px 24px;font-size:.85rem;font-weight:700;box-shadow:0 4px 16px #0003;cursor:pointer;z-index:999;transition:background-color .2s,transform .2s;box-sizing:border-box;animation:rsvp-fadeIn .4s ease-out}.rsvp-floating-edit-btn:hover{background-color:#b09071;transform:translateY(-2px)}.rsvp-attendance-warning{font-size:.8rem;color:#d32f2f;margin-top:8px;text-align:left;line-height:1.4;word-break:keep-all}.rsvp-field-guide{font-size:.78rem;color:#777;margin-top:6px;line-height:1.4;text-align:left;display:block;width:100%;word-break:keep-all}
