html[data-mode=parents] .body-text{font-size:17px;line-height:2.2}html[data-mode=parents] .section-title__main{font-size:37px}html[data-mode=parents] .section-title__sub,html[data-mode=parents] .greeting__body{font-size:16px}html[data-mode=parents] .greeting__name{font-size:20px}html[data-mode=parents] .greeting__parents{font-size:15px}html[data-mode=parents] .family__name{font-size:18px}html[data-mode=parents] .family__role{font-size:15px}html[data-mode=parents] .calendar__ko{font-size:19px}html[data-mode=parents] .calendar__en{font-size:16px}html[data-mode=parents] .about__name{font-size:24px}html[data-mode=parents] .about__intro{font-size:16px}html[data-mode=parents] .location__name{font-size:24px}html[data-mode=parents] .location__addr{font-size:16px}html[data-mode=parents] .accordion__title{font-size:17px}html[data-mode=parents] .accordion__inner,html[data-mode=parents] .account-row__bank{font-size:16px}html[data-mode=parents] .account-row__num{font-size:19px}html[data-mode=parents] .account-row__label{font-size:14px}html[data-mode=parents] .account-row__copy{padding:10px 20px;font-size:15px}html[data-mode=parents] .guestbook__name{font-size:18px}html[data-mode=parents] .guestbook__msg{font-size:16px}html[data-mode=parents] .rsvp-field__label{font-size:15px}html[data-mode=parents] .rsvp-input{font-size:17px}html[data-mode=parents] .rsvp-seg__btn{font-size:16px}html[data-mode=parents] .rsvp-stepper__count{font-size:18px}html[data-mode=parents] .btn--lg{font-size:17px}html[data-mode=parents] .btn--md{font-size:16px}html[data-mode=parents] .modal__title{font-size:22px}.falling-leaves{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0}.cover{background:linear-gradient(180deg, var(--sunset-top) 0%, #f3dcb8 45%, var(--sunset-bottom) 100%);flex-direction:column;justify-content:flex-end;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.cover__photo{z-index:1;background-position:55% 40%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.cover__heart{z-index:3;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.cover__heart svg{opacity:.95;width:100%;height:100%;transform:scale(2)}.cover__caption{z-index:4;text-align:center;color:#fff;text-shadow:0 2px 18px #50371e59;margin-bottom:33svh;padding:0 24px;position:relative}.cover__script{margin:0 0 14px;font-size:40px;font-weight:400;line-height:1.1}.cover__date{letter-spacing:.18em;margin:0;font-size:18px;font-weight:500}.cover__scroll{z-index:4;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.cover__scroll-dot{border-radius:var(--r-pill);border:1.5px solid #ffffffd9;width:22px;height:36px;position:relative}.cover__scroll-dot:after{content:"";background:#ffffffe6;border-radius:2px;width:3px;height:7px;position:absolute;top:7px;left:50%;transform:translate(-50%)}.cover__scroll-text{font-family:var(--f-serif);letter-spacing:.3em;color:#ffffffd9;font-size:11px}.divider{align-items:center;gap:16px;width:100%;display:flex}.divider__line{background:var(--line);flex:1;height:1px}.divider__ornament{color:var(--accent);opacity:.8;align-items:center;line-height:1;display:inline-flex}.greeting{position:relative;overflow:hidden}.greeting__stamp{color:var(--accent);opacity:.08;white-space:nowrap;pointer-events:none;letter-spacing:.02em;font-size:64px;font-style:italic;font-weight:400;position:absolute;top:40px;left:50%;transform:translate(-50%)}.greeting__eyebrow{margin-bottom:28px;font-size:13px;display:block}.greeting__body{max-width:320px;margin:0 auto}.greeting__divider{max-width:130px;margin:36px auto}.greeting__people{flex-direction:column;align-items:center;gap:14px;display:flex}.greeting__person{flex-direction:column;gap:4px;display:flex}.greeting__parents{color:var(--muted);letter-spacing:.02em;font-size:13px}.greeting__rel{margin-left:2px}.greeting__name{color:var(--ink);letter-spacing:.04em;font-size:18px}.greeting__role{color:var(--accent);margin-right:4px;font-size:13px;font-style:normal}.calendar__title{letter-spacing:.14em;color:var(--ink);margin:0 0 22px;font-size:30px;font-weight:500}.calendar__ko{font-family:var(--f-myeongjo);color:var(--ink);letter-spacing:.01em;margin:0;font-size:17px}.calendar__en{font-family:var(--f-serif);color:var(--muted);letter-spacing:.02em;margin-top:6px;font-size:15px}.calendar__sep{color:var(--accent);margin:0 4px}.calendar__divider{max-width:280px;margin:28px auto 26px}.calendar__grid{grid-template-columns:repeat(7,1fr);gap:4px 0;max-width:320px;margin:0 auto;display:grid}.calendar__wd{font-family:var(--f-sans);color:var(--ink-soft);letter-spacing:.02em;padding-bottom:10px;font-size:13px;font-weight:500}.calendar__wd--sun{color:var(--sunday)}.calendar__cell{aspect-ratio:1;justify-content:center;align-items:center;display:flex}.calendar__day{font-family:var(--f-sans);color:var(--ink);justify-content:center;align-items:center;width:100%;height:100%;font-size:15px;font-weight:500;display:flex;position:relative}.calendar__day--red{color:var(--sunday)}.calendar__holiday{font-family:var(--f-sans);letter-spacing:-.02em;color:var(--sunday);white-space:nowrap;font-size:8px;line-height:1;position:absolute;bottom:1px;left:50%;transform:translate(-50%)}.calendar__day--wedding{color:#fff}.calendar__mark{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 4px 12px #9c887c73}.cd{justify-content:center;align-items:flex-start;gap:6px;margin-top:44px;display:flex}.cd__unit{flex-direction:column;align-items:center;min-width:52px;display:flex}.cd__num-wrap{justify-content:center;align-items:center;height:40px;display:flex;overflow:hidden}.cd__num{color:var(--ink);font-size:32px;font-weight:500;line-height:1;display:inline-block}.cd__label{font-family:var(--f-serif);letter-spacing:.16em;color:var(--muted);margin-top:6px;font-size:11px}.cd__colon{font-family:var(--f-serif);color:var(--line);font-size:26px;line-height:40px}.cd__dday{margin-top:26px}.cd__dday strong{color:var(--ink);font-weight:700}.cd__dday-num{color:var(--accent-deep)}.section-title{text-align:center;margin-bottom:36px}.section-title__main{letter-spacing:.12em;color:var(--ink);margin:0;font-size:34px;font-weight:500;line-height:1.2}.section-title__sub{font-family:var(--f-batang);color:var(--muted);letter-spacing:.02em;margin-top:14px;font-size:14px}.lightbox{z-index:1100;overscroll-behavior:none;touch-action:none;background:#14110ef0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.lightbox__stage{touch-action:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.lightbox__img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none;touch-action:none;will-change:transform;border-radius:6px;width:auto;max-width:92vw;height:auto;max-height:82vh}.lightbox__close{top:max(14px, env(safe-area-inset-top));z-index:2;color:#fff;background:#ffffff1f;border:none;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:28px;line-height:1;display:flex;position:absolute;right:16px}.lightbox__nav{color:#fff;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:28px;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox__nav--prev{left:10px}.lightbox__nav--next{right:10px}.lightbox__counter{bottom:max(22px, env(safe-area-inset-bottom));color:#ffffffd9;letter-spacing:.08em;font-size:13px;font-family:var(--f-sans);position:absolute;left:50%;transform:translate(-50%)}@media (hover:hover){.lightbox__nav:hover{background:#fff3}}.gallery__grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.gallery__thumb{aspect-ratio:1;background:var(--card);-webkit-tap-highlight-color:transparent;border:none;border-radius:4px;padding:0;position:relative;overflow:hidden}.gallery__thumb img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.gallery__thumb:active img{transform:scale(1.04)}.gallery__placeholder{color:#7d6a5e73;font-family:var(--f-serif);background:linear-gradient(135deg,#efe6da,#e1d2c4);justify-content:center;align-items:center;font-size:22px;display:flex;position:absolute;inset:0}.gallery__more-wrap{text-align:center;margin-top:22px}.gallery__more{border:1px solid var(--line);border-radius:var(--r-pill);font-family:var(--f-sans);color:var(--ink-soft);letter-spacing:.04em;background:0 0;align-items:center;gap:6px;padding:10px 24px;font-size:14px;display:inline-flex}.gallery__chevron{font-size:16px;line-height:1;transition:transform .25s;display:inline-block}.gallery__chevron.is-open{transform:rotate(180deg)}.location__head{margin-bottom:22px}.location__name{color:var(--ink);letter-spacing:.03em;margin:0;font-size:22px}.location__hall{color:var(--accent);letter-spacing:.04em;margin-top:4px;font-size:14px}.location__addr{font-family:var(--f-batang);color:var(--ink-soft);background:0 0;border:none;align-items:center;gap:8px;margin-top:12px;font-size:14px;line-height:1.6;display:inline-flex}.location__addr-copy{font-family:var(--f-sans);color:var(--accent);border:1px solid var(--line);border-radius:var(--r-pill);flex-shrink:0;padding:2px 8px;font-size:11px}.location__tel{color:var(--muted);margin-top:8px;font-size:13px}.location__tel a{color:var(--ink-soft)}.location__map-wrap{position:relative}.location__map{border-radius:var(--r-md);border:1px solid var(--line);width:100%;height:260px;overflow:hidden}.location__zoom{z-index:5;border-radius:var(--r-sm);box-shadow:var(--shadow-card);background:#fff;flex-direction:column;display:flex;position:absolute;top:10px;right:10px;overflow:hidden}.location__zoom button{width:34px;height:34px;color:var(--ink);-webkit-tap-highlight-color:transparent;background:#fff;border:none;justify-content:center;align-items:center;display:flex}.location__zoom button:active{background:var(--card)}.location__zoom button+button{border-top:1px solid var(--line)}.location__map--fallback{text-align:center;background:linear-gradient(135deg,#efe6da,#e3d4c6);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex}.location__pin{font-size:30px}.location__fallback-name{color:var(--ink);margin:0;font-size:18px}.location__fallback-sub{color:var(--ink-soft);max-width:240px;margin:0;font-size:12px}.location__dirs{justify-content:center;gap:30px;margin-top:18px;display:flex}.location__dir{color:var(--ink-soft);flex-direction:column;align-items:center;gap:8px;display:flex}.location__dir-ic{width:38px;height:38px;box-shadow:var(--shadow-soft);border-radius:11px;transition:transform .15s;overflow:hidden}.location__dir-ic img{object-fit:cover;width:100%;height:100%;display:block}.location__dir:active .location__dir-ic{transform:scale(.93)}.location__dir-label{letter-spacing:.02em;font-size:12px}.location__sketch-btn{border:1px solid var(--accent);border-radius:var(--r-pill);color:var(--accent);letter-spacing:.02em;background:0 0;justify-content:center;align-items:center;gap:7px;margin:16px auto 0;padding:11px 22px;font-size:14px;transition:background .15s,color .15s;display:flex}.location__sketch-btn:active{background:var(--accent);color:#fff}.location__transport{margin-top:28px}.location__transit{border-top:1px solid #3a332e1f;padding:18px 2px}.location__transit:last-child{border-bottom:1px solid #3a332e1f}.location__transit-title{font-family:var(--f-myeongjo,var(--f-serif));color:var(--ink);align-items:center;gap:8px;margin:0 0 9px;font-size:16px;font-weight:700;display:flex}.location__transit-title svg{color:var(--accent)}.location__transit-line{color:var(--ink-soft);margin:0;font-size:14px;line-height:1.85}.location__transit-line+.location__transit-line{margin-top:3px}.location__transit-arrow{vertical-align:-2px;color:var(--accent);margin:0 4px}.accordion{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card-soft);overflow:hidden}.accordion+.accordion{margin-top:10px}.accordion__head{text-align:left;width:100%;font-family:var(--f-sans);background:0 0;border:none;align-items:center;gap:10px;padding:15px 16px;display:flex}.accordion__icon{color:var(--ink);flex-shrink:0;align-items:center;display:inline-flex}.accordion__badge{letter-spacing:.08em;color:var(--accent);border:1px solid var(--line);border-radius:var(--r-pill);flex-shrink:0;padding:3px 10px;font-size:12px}.accordion__title{color:var(--ink);letter-spacing:.01em;flex:1;font-size:15px}.accordion__chevron{color:var(--muted);font-size:18px;line-height:1;transition:transform .25s}.accordion.is-open .accordion__chevron{transform:rotate(180deg)}.accordion__panel{overflow:hidden}.accordion__inner{font-family:var(--f-batang);color:var(--ink-soft);padding:2px 16px 16px;font-size:14px;line-height:1.8}.account__list{margin-top:4px}.account-row{align-items:center;gap:12px;padding:14px 0;display:flex}.account-row+.account-row{border-top:1px solid var(--line)}.account-row__info{font-family:var(--f-sans);flex-direction:column;flex:1;gap:3px;display:flex}.account-row__bank{color:var(--ink);font-size:14px}.account-row__holder{color:var(--ink-soft)}.account-row__num{color:var(--ink);letter-spacing:.02em;font-size:15px}.account-row__label{color:var(--muted);font-size:12px}.account-row__actions{flex-direction:column;flex-shrink:0;align-self:center;gap:6px;display:flex}.account-row__copy{background:var(--accent);color:#fff;border-radius:var(--r-pill);font-size:13px;font-family:var(--f-sans);white-space:nowrap;border:none;padding:8px 16px;transition:background .18s}.account-row__copy:active{background:var(--accent-deep)}.account-row__pay{color:#3c1e1e;border-radius:var(--r-pill);font-size:13px;font-family:var(--f-sans);white-space:nowrap;background:#fee500;border:none;justify-content:center;align-items:center;gap:5px;padding:8px 14px;font-weight:500;transition:filter .18s;display:inline-flex}.account-row__pay:active{filter:brightness(.94)}.account-row__pay-logo{width:auto;height:16px;display:block}.guestbook__empty{text-align:center;background:var(--card);border-radius:var(--r-lg);padding:36px 24px}.guestbook__loading{text-align:center;color:var(--muted);padding:24px 0;font-size:14px}.guestbook__list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.guestbook__item{background:var(--card-soft);border:1px solid var(--line);border-radius:var(--r-md);padding:16px 18px}.guestbook__item-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.guestbook__name{color:var(--ink);letter-spacing:.02em;font-size:16px}.guestbook__time{color:var(--muted);flex:1;font-size:12px}.guestbook__del{width:24px;height:24px;color:var(--muted);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.guestbook__del:active{background:var(--card)}.guestbook__msg{font-family:var(--f-batang);color:var(--ink-soft);white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.75}.guestbook__cta{text-align:center;margin-top:22px}.guestbook__form{flex-direction:column;gap:12px;display:flex}.snap__intro{text-align:center;margin-bottom:26px}.snap__lead{font-family:var(--f-batang);color:var(--ink);font-size:16px;line-height:1.7}.snap__names{color:var(--ink);letter-spacing:.04em;margin-top:10px;font-size:18px}.snap__guide-box{background:var(--card-soft);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px}.snap__guide-head{color:var(--ink-soft);letter-spacing:.04em;margin-bottom:10px;font-size:13px}.snap__guide{counter-reset:snap;text-align:left;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.snap__guide li{font-family:var(--f-sans);color:var(--ink-soft);counter-increment:snap;padding-left:26px;font-size:14px;position:relative}.snap__guide li:before{content:counter(snap);background:var(--card);border:1px solid var(--line);width:18px;height:18px;color:var(--ink-soft);border-radius:50%;justify-content:center;align-items:center;font-size:10px;display:inline-flex;position:absolute;top:50%;left:0;transform:translateY(-50%)}.snap__empty{text-align:center;background:var(--card);border-radius:var(--r-lg);padding:28px 24px}.snap__loading{text-align:center;color:var(--muted);padding:24px 0;font-size:14px}.snap__grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.snap__cell{aspect-ratio:1;background:var(--card);-webkit-tap-highlight-color:transparent;border:none;border-radius:4px;padding:0;position:relative;overflow:hidden}.snap__cell img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.snap__cell:active img{transform:scale(1.04)}.snap__more-wrap{text-align:center;margin-top:22px}.snap__more{border:1px solid var(--line);border-radius:var(--r-pill);font-family:var(--f-sans);color:var(--ink-soft);letter-spacing:.04em;background:0 0;align-items:center;gap:6px;padding:10px 24px;font-size:14px;display:inline-flex}.snap__chevron{line-height:1;transition:transform .25s;display:inline-block}.snap__chevron.is-open{transform:rotate(180deg)}.snap__cta{text-align:center;margin-top:24px}.snap__locked{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card-soft);color:var(--ink-soft);flex-direction:column;align-items:center;gap:10px;padding:22px 30px;display:inline-flex}.snap__locked svg{color:var(--muted)}.snap__locked p{font-family:var(--f-sans);font-size:14px;line-height:1.6}.snap__locked b{color:var(--ink);font-weight:600}.snap__form{flex-direction:column;gap:12px;display:flex}.snap__event{text-align:center;border-radius:var(--r-md);background:var(--accent-soft,var(--card-soft));border:1px solid var(--accent,var(--line));padding:14px 16px}.snap__event-title{font-family:var(--f-batang);color:var(--ink);font-size:14px;line-height:1.6}.snap__event-title b{color:var(--accent-deep,var(--ink));font-weight:700}.snap__event-sub{color:var(--ink-soft);margin-top:6px;font-size:12px;line-height:1.6}.snap__dropzone{border:1.5px dashed var(--line);border-radius:var(--r-md);background:var(--card-soft);color:var(--ink-soft);font-family:var(--f-sans);letter-spacing:.02em;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:34px 16px;font-size:14px;display:flex}.snap__dropzone:active{background:var(--card)}.snap__previews{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.snap__preview{aspect-ratio:1;background:var(--card);border-radius:6px;position:relative;overflow:hidden}.snap__preview img{object-fit:cover;width:100%;height:100%}.snap__preview-del{color:#fff;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex;position:absolute;top:3px;right:3px}.snap__preview-add{aspect-ratio:1;border:1.5px dashed var(--line);background:var(--card-soft);color:var(--ink-soft);border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.snap__preview-add:active{background:var(--card)}.snap__count{text-align:right;color:var(--muted);margin-top:-4px;font-size:12px}.snap__tips{flex-direction:column;gap:4px;margin:4px 0 0;padding-left:18px;display:flex}.snap__tips li{color:var(--muted);font-size:12px;line-height:1.5}.rsvp__lead{max-width:300px;margin:0 auto 28px}.rsvp__cta{justify-content:center;display:flex}.closing{background:linear-gradient(180deg, var(--sunset-bottom) 0%, #e8b98b 55%, #d99e6e 100%);padding:90px 28px 100px;position:relative;overflow:hidden}.closing__inner{z-index:4;color:#fff;text-shadow:0 2px 16px #5a3c1e4d;position:relative}.closing__script{margin:0 0 24px;font-size:46px;line-height:1}.closing__body{font-family:var(--f-batang);color:#fffffff2;margin:0 0 24px;font-size:15px;line-height:2.1}.closing__date{letter-spacing:.16em;margin:0 0 30px;font-size:16px}.closing__share{justify-content:center;gap:10px;display:flex}.closing__share .btn--outline{color:#fff;border-color:#fff9}.closing__share .btn--outline:hover{background:#ffffff1f}.closing__share .btn--solid{color:var(--accent-deep);background:#ffffffeb}.footer{background:var(--bg);padding:48px 28px 56px}.footer__symbol{color:var(--accent);opacity:.7;justify-content:center;margin-bottom:12px;display:flex}.footer__names{letter-spacing:.1em;color:var(--ink-soft);margin:0 0 8px;font-size:18px}.footer__credit{font-family:var(--f-serif);letter-spacing:.12em;color:var(--muted);font-size:12px}.floating-top{z-index:900;right:max(16px, calc((100vw - var(--max-w)) / 2 + 16px));bottom:max(20px, env(safe-area-inset-bottom));border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:44px;height:44px;color:var(--accent-deep);box-shadow:var(--shadow-soft);background:#faf6f0eb;border-radius:50%;justify-content:center;align-items:center;font-size:20px;line-height:1;display:flex;position:fixed}
