:root{--bg:#fbf6f4;--paper:#fffdfc;--ink:#4a3b3d;--muted:#9a8a8c;--line:#eedfdf;--accent:#c97b84;--accent-dark:#b0636d;--rose:#e8a5a8;--blush:#f5cfd0;--leaf:#9fb79c;--gold:#d9b86c;--tint:#fdf4f3;--tint2:#f6eaea;--danger:#c0504d;--ok:#5a9a6e;--serif:"Gowun Batang","Nanum Myeongjo",serif;--sans:"Gowun Dodum",-apple-system,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;--en:"Cormorant Garamond",Georgia,serif;--radius:14px;--shadow:0 4px 18px rgba(170,110,115,.12)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--bg);line-height:1.7;word-break:keep-all}a{color:var(--accent-dark)}img{display:block;max-width:100%}.hidden{display:none!important}.center{text-align:center}.right{text-align:right}.muted{color:var(--muted)}.small{font-size:.85rem}.stack{display:flex;flex-direction:column;gap:10px}.wrap{max-width:480px;margin:0 auto;padding:20px 18px 120px;position:relative}.wrap.narrow{padding-bottom:60px}.topbar{display:flex;justify-content:space-between;align-items:center;min-height:36px;margin-bottom:8px}.back{color:var(--muted);text-decoration:none;font-size:.95rem}.page-title{font-family:var(--serif);font-weight:700;font-size:1.6rem;margin:18px 0 4px;text-align:center}.eyebrow{font-family:var(--en);letter-spacing:.3em;font-size:.8rem;color:var(--accent);text-align:center;margin:0}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px 18px;box-shadow:var(--shadow);margin:14px 0}.alert{padding:12px 14px;border-radius:10px;font-size:.92rem;margin:10px 0}.alert.err{background:#fbeceb;color:var(--danger)}.alert.ok{background:#edf6ef;color:var(--ok)}.field{display:block;margin:0 0 16px}.field>span{display:block;font-size:.92rem;font-weight:600;margin-bottom:6px}.field small{display:block;color:var(--muted);font-size:.8rem;margin-top:5px}input,select,textarea{width:100%;padding:13px 14px;font:inherit;font-size:16px;color:var(--ink);border:1.5px solid var(--line);border-radius:10px;background:#fff;transition:border-color .15s}input:focus,textarea:focus{outline:none;border-color:var(--rose);box-shadow:0 0 0 3px rgba(232,165,168,.2)}textarea{resize:vertical;line-height:1.8}input::placeholder,textarea::placeholder{color:#c9babb}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.grid-3{display:grid;grid-template-columns:1fr 1.6fr 1fr;grid-gap:6px;gap:6px}.grid-3 input{padding:11px 10px;font-size:15px}button{font:inherit}.btn,button{cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:0 20px;font-size:1rem;font-weight:600;border:0;border-radius:999px;background:var(--accent);color:#fff;text-decoration:none;transition:background .15s,transform .05s}.btn:active{transform:scale(.98)}.btn:hover{background:var(--accent-dark)}.btn:disabled{opacity:.6;cursor:default}.btn.ghost{background:transparent;color:var(--accent-dark);border:1.5px solid var(--rose)}.btn.ghost:hover{background:#fdf0f0}.btn.big{min-height:54px;font-size:1.05rem}.btn.full{width:100%}.btn.small{min-height:38px;padding:0 14px;font-size:.9rem}.link{background:none;border:0;padding:6px 4px;color:var(--muted);text-decoration:underline;font-size:.9rem}.link.danger{color:var(--danger)}.chip{background:#fff;border:1px solid var(--rose);color:var(--accent-dark);border-radius:999px;padding:6px 14px;font-size:.85rem;white-space:nowrap}.landing{text-align:center;padding-top:70px;overflow:hidden;min-height:100vh}.landing-title{font-family:var(--serif);font-size:2.2rem;font-weight:700;margin:6px 0 0}.landing-sub{font-size:1.05rem;margin:6px 0 26px}.steps-intro{list-style:none;padding:0;margin:0 0 32px;display:flex;justify-content:center;gap:18px;font-size:.9rem;color:var(--muted)}.steps-intro b{display:block;width:30px;height:30px;line-height:30px;margin:0 auto 4px;border-radius:50%;background:var(--blush);color:var(--accent-dark)}.flower-divider{display:block;width:180px;height:36px;margin:10px auto 16px}.flower-divider.big{width:240px;height:60px;margin:30px auto}.flower-corner{position:absolute;width:120px;height:120px;pointer-events:none;opacity:.9}.flower-corner.tl{top:0;left:0}.flower-corner.tr{top:0;right:0;transform:scaleX(-1)}.small-flower{width:34px;height:34px}.empty{text-align:center;color:var(--muted);padding:40px 0}.empty .small-flower{margin:0 auto 8px}.inv-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin:14px 0;overflow:hidden}.inv-card-main{display:flex;gap:14px;padding:14px;text-decoration:none;color:inherit}.inv-thumb{width:76px;height:76px;flex:none;border-radius:10px;overflow:hidden;background:var(--blush);display:grid;place-items:center}.inv-thumb img{width:100%;height:100%;object-fit:cover}.inv-info{display:flex;flex-direction:column;gap:2px;min-width:0}.inv-info strong{font-family:var(--serif);font-size:1.1rem}.badges{display:flex;gap:6px;margin-top:4px}.badge{font-size:.75rem;padding:2px 10px;border-radius:999px;background:#eee;color:#777}.badge.on{background:#e5f2e8;color:var(--ok)}.badge.soft{background:var(--blush);color:var(--accent-dark)}.inv-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:10px 14px 14px;border-top:1px dashed var(--line)}.inv-actions .push{margin-left:auto}.stepper{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px;margin:6px 0 18px}.step{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;background:none;border:0;font-size:.75rem;text-decoration:none}.step,.step b{color:var(--muted)}.step b{width:28px;height:28px;line-height:28px;border-radius:50%;background:#f1e7e7;font-size:.85rem;text-align:center}.step.done b{background:var(--blush)}.step.cur,.step.done b{color:var(--accent-dark)}.step.cur{font-weight:700}.step.cur b{background:var(--accent);color:#fff}.step-panel{animation:fade .25s ease}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.step-title{font-family:var(--serif);font-size:1.3rem;margin:0 0 4px}.step-panel>p.muted{margin:0 0 16px}.side-box{border-radius:var(--radius);padding:16px 16px 4px;margin-bottom:14px;background:var(--paper);border:1px solid var(--line)}.side-box h3{margin:0 0 12px;font-size:1rem}.side-box.groom h3{color:#6d8fb3}.side-box.bride h3{color:var(--accent-dark)}.acc-edit{border:0;padding:0;margin:0 0 14px}.acc-edit legend{font-size:.85rem;font-weight:600;margin-bottom:6px;padding:0}.bottom-bar{position:fixed;left:0;right:0;bottom:0;z-index:10;display:flex;justify-content:space-between;gap:10px;padding:12px max(18px,calc(50% - 222px)) calc(12px + env(safe-area-inset-bottom));background:hsla(17,47%,97%,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line)}.bottom-bar .btn{flex:1 1;max-width:220px}.bottom-bar .btn:last-child{flex:2 1;max-width:none}.switch{display:flex;align-items:center;gap:12px;padding:16px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);font-weight:600;margin-bottom:14px;cursor:pointer}.switch input{position:absolute;opacity:0;width:1px;height:1px}.switch-ui{position:relative;width:50px;height:30px;flex:none;border-radius:999px;background:#ddd;transition:background .2s}.switch-ui:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s}.switch input:checked+.switch-ui{background:var(--accent)}.switch input:checked+.switch-ui:after{transform:translateX(20px)}.switch input:focus-visible+.switch-ui{box-shadow:0 0 0 3px rgba(232,165,168,.4)}.share-box{background:#fff;border:1px dashed var(--rose);border-radius:var(--radius);padding:12px 14px;margin-bottom:14px}.share-box p{margin:0 0 6px}.share-url{word-break:break-all;font-size:.9rem}.upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:22px 14px;border:2px dashed var(--rose);border-radius:var(--radius);background:#fff;color:var(--accent-dark);font-weight:600;cursor:pointer;text-align:center}.upload input{position:absolute;opacity:0;width:1px;height:1px}.upload small{color:var(--muted);font-weight:400;font-size:.8rem}.upload-icon{font-size:1.8rem;line-height:1}.upload.busy{opacity:.7;cursor:progress}.upload.off{border-color:var(--line);color:var(--muted);cursor:default}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-top:6px}.photo-item{position:relative;border-radius:10px;overflow:hidden;background:#eee}.photo-item img{width:100%;aspect-ratio:1;object-fit:cover}.cover-tag{top:6px;left:6px;background:var(--accent);font-size:.72rem;padding:1px 8px;border-radius:999px}.cover-tag,.photo-del{position:absolute;color:#fff}.photo-del{top:5px;right:5px;width:30px;height:30px;border-radius:50%;border:0;background:rgba(0,0,0,.55);font-size:1.2rem;line-height:30px;padding:0}.photo-tools{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(transparent,rgba(0,0,0,.55));padding:14px 4px 4px}.photo-tools button{background:none;border:0;color:#fff;padding:4px 8px;font-size:.8rem}.photo-tools button:disabled{opacity:.25}.photo-tools .mini{border:1px solid hsla(0,0%,100%,.8);border-radius:999px;padding:1px 8px;font-size:.72rem}.preview-bar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:var(--ink);color:#fff;font-size:.88rem}.preview-back{color:#fff;font-weight:600}:root{--script:"Great Vibes","Pinyon Script",cursive}.inv-page{background:var(--bg);color:var(--ink)}.inv,.inv-page{min-height:100vh}.inv{position:relative;max-width:460px;margin:0 auto;overflow:hidden;background:var(--paper);font-family:var(--serif);box-shadow:0 0 40px rgba(0,0,0,.06)}.inv p{word-break:keep-all}.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease-out,transform .6s ease-out}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}.falling{position:fixed;left:0;top:0;width:100%;height:100vh;height:100lvh;pointer-events:none;z-index:5}.cover{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;background:linear-gradient(var(--tint),var(--paper))}.cover-text{position:relative;z-index:2;padding:0 24px}.cover-script{font-family:var(--script);font-size:2.3rem;line-height:1.2;color:var(--accent);margin:0 0 6px}.cover-en-date{font-family:var(--en);letter-spacing:.25em;font-size:.95rem;margin:0 0 18px}.cover-en-date span{margin-left:6px}.cover-names{display:flex;align-items:center;justify-content:center;gap:14px;font-size:1.65rem;font-weight:400;letter-spacing:.12em;margin:0 0 16px}.amp{font-family:var(--script);font-size:2rem;color:var(--accent);letter-spacing:0}.cover-info{font-size:.95rem;line-height:1.9;color:color-mix(in srgb,var(--ink) 75%,transparent);margin:0}.cover-full{min-height:100svh;justify-content:flex-end;padding:0 0 70px;background:#222;color:#fff}.cover-full .cover-photo{position:absolute;inset:0;margin:0}.cover-full .cover-photo img{width:100%;height:100%;object-fit:cover;animation:kenburns 16s ease-out both;will-change:transform}.cover-full .cover-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.05) 35%,rgba(0,0,0,.55))}.cover-full .amp,.cover-full .cover-script{color:#fff}.cover-full .cover-script{font-size:2.9rem;text-shadow:0 2px 12px rgba(0,0,0,.3)}.cover-full .cover-info{color:hsla(0,0%,100%,.9)}.cover-full .cover-text{animation:rise 1.6s ease .3s both}.cover-full.no-photo{min-height:80svh;background:linear-gradient(var(--tint),var(--paper));color:var(--ink);justify-content:center}.cover-full.no-photo .amp,.cover-full.no-photo .cover-script{color:var(--accent);text-shadow:none}.cover-full.no-photo .cover-info{color:var(--muted)}@keyframes kenburns{0%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}.scroll-hint{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:2;width:22px;height:36px;border:1.5px solid hsla(0,0%,100%,.8);border-radius:12px}.scroll-hint span{position:absolute;left:50%;top:7px;width:3px;height:7px;margin-left:-1.5px;border-radius:2px;background:#fff;animation:wheel 1.8s infinite}@keyframes wheel{0%{opacity:0;transform:translateY(0)}30%{opacity:1}to{opacity:0;transform:translateY(12px)}}.cover-arch,.cover-frame{padding:60px 0 56px}.cover-arch .cover-photo,.cover-frame .cover-photo{order:-1;width:78%;margin:0 auto 34px;background:#fff}.cover-arch .cover-photo{border-radius:999px 999px 0 0;overflow:hidden;border:6px solid #fff;box-shadow:0 14px 34px rgba(0,0,0,.12)}.cover-frame .cover-photo{padding:10px;outline:1px solid var(--rose);outline-offset:8px;box-shadow:0 10px 28px rgba(0,0,0,.1)}.cover-arch .cover-photo img,.cover-frame .cover-photo img{width:100%;aspect-ratio:3/4;object-fit:cover}.cover-arch.no-photo,.cover-frame.no-photo{padding-top:120px}.sec{position:relative;padding:76px 28px;text-align:center}.sec.tinted{background:var(--tint)}.sec-head{margin-bottom:34px}.sec-en{font-family:var(--en);letter-spacing:.35em;font-size:.78rem;color:var(--accent);margin:0 0 8px}.sec-ko{font-size:1.22rem;font-weight:400;letter-spacing:.04em;margin:0}.sec-desc{color:var(--muted);font-size:.92rem;line-height:1.9;margin:-14px 0 26px}.msg{white-space:pre-wrap;line-height:2.2;font-size:.98rem;margin:0 0 44px}.family{display:inline-flex;flex-direction:column;gap:10px;margin-bottom:30px}.family-line{margin:0;display:flex;align-items:baseline;justify-content:center;gap:10px;font-size:1rem}.family-line .parents{display:inline-flex;align-items:center;gap:4px}.family-line .dot{color:var(--muted);margin:0 1px}.family-line .of{color:var(--muted);font-size:.88rem;margin-left:2px}.family-line strong{font-size:1.12rem;font-weight:700}.pname{display:inline-flex;align-items:center;gap:2px}.chrys{width:14px;height:14px;color:var(--muted)}.contact-btn{gap:8px}.c-icon svg,.contact-btn svg{width:16px;height:16px;fill:currentColor}.contact-group+.contact-group{margin-top:18px}.contact-group h4{font-size:.85rem;color:var(--accent-dark);margin:0 0 6px;letter-spacing:.05em}.contact-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--tint2)}.c-label{color:var(--muted);font-size:.85rem;width:76px;flex:none}.c-name{flex:1 1;font-weight:600}.c-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--tint);color:var(--accent-dark)}.day-big{margin-bottom:22px}.day-date{font-size:1.12rem;margin:0}.day-time{color:var(--muted);margin:4px 0 0}.cal{margin:0 auto 30px;border-collapse:collapse;font-family:var(--sans);border-top:1px solid var(--tint2);border-bottom:1px solid var(--tint2)}.cal th{font-weight:400;font-size:.78rem;color:var(--muted);padding:14px 0 6px;width:44px}.cal td{height:42px;text-align:center;font-size:.92rem}.cal .sun{color:#d0606a}.cal th.sat{color:#6d8fb3}.cal td.day span{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 40%,transparent)}.countdown{display:flex;justify-content:center;gap:6px;margin-bottom:18px;font-family:var(--sans)}.countdown.placeholder{height:64px}.cd-cell{position:relative;display:flex;flex-direction:column;align-items:center;width:62px;padding:10px 0 8px;background:var(--paper);border-radius:12px;box-shadow:0 3px 12px rgba(0,0,0,.05)}.cd-cell b{font-family:var(--en);font-size:1.5rem;line-height:1.1;font-weight:500}.cd-cell span{font-size:.62rem;letter-spacing:.15em;color:var(--muted)}.cd-cell i{position:absolute;right:-6px;top:14px;font-style:normal;color:var(--muted)}.dday{margin:0;font-size:.95rem}.dday b{color:var(--accent-dark)}.heart{color:var(--accent)}.gallery-sec{padding-left:0;padding-right:0}.gallery-sec .sec-head{padding:0 28px}.slide-gallery{position:relative}.sg-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.sg-track::-webkit-scrollbar{display:none}.sg-slide{flex:0 0 100%;scroll-snap-align:center;padding:0;border:0;background:var(--tint2);cursor:zoom-in}.sg-slide img{width:100%;aspect-ratio:4/5;object-fit:cover}.sg-nav{position:absolute;top:0;height:calc(100% - 86px);width:44px;border:0;background:none;color:#fff;font-size:2.4rem;text-shadow:0 1px 8px rgba(0,0,0,.4);opacity:.85}.sg-nav.prev{left:0}.sg-nav.next{right:0}.sg-count{position:absolute;right:14px;bottom:100px;background:rgba(0,0,0,.45);color:#fff;font-family:var(--sans);font-size:.75rem;padding:2px 10px;border-radius:999px}.sg-thumbs{display:flex;gap:6px;overflow-x:auto;padding:10px 14px 0;scrollbar-width:none}.sg-thumbs::-webkit-scrollbar{display:none}.sg-thumbs button{flex:0 0 64px;height:64px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;opacity:.5;background:none;transition:opacity .2s,border-color .2s}.sg-thumbs button.on{opacity:1;border-color:var(--accent)}.sg-thumbs img{width:100%;height:100%;object-fit:cover}.grid-gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:3px;gap:3px;padding:0 3px}.grid-gallery button{padding:0;border:0;background:var(--tint2);cursor:zoom-in;overflow:hidden}.grid-gallery img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .4s}.grid-gallery button:hover img{transform:scale(1.05)}.more-btn{margin-top:14px;background:none;border:0;color:var(--muted);font-family:var(--sans)}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(15,10,11,.95);display:flex;flex-direction:column;align-items:center;justify-content:center;animation:fade .2s}.lightbox img{max-width:100vw;max-height:80vh;object-fit:contain;animation:fade .3s}.lightbox-bar{display:flex;gap:28px;align-items:center;color:#fff;margin-top:16px;font-family:var(--sans)}.lightbox-bar button{background:none;border:0;color:#fff;font-size:2rem;padding:0 12px}.lightbox-close{position:absolute;top:12px;right:14px;background:none;border:0;color:#fff;font-size:2.2rem}.place{margin-bottom:26px}.place-name{font-size:1.15rem;font-weight:700;margin:0 0 6px}.place-addr{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;color:var(--muted);font-family:var(--sans);font-size:.92rem;margin:0}.chip.tiny{padding:2px 10px;font-size:.75rem}.nav-btns{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--tint2);border-radius:14px;overflow:hidden;margin-bottom:30px;font-family:var(--sans)}.nav-btns a{display:flex;align-items:center;justify-content:center;gap:6px;padding:14px 4px;color:var(--ink);text-decoration:none;font-size:.86rem;background:var(--paper)}.nav-btns a+a{border-left:1px solid var(--tint2)}.nav-ic{display:grid;place-items:center;width:22px;height:22px;border-radius:6px}.nav-ic svg{width:14px;height:14px}.nav-ic.naver{background:#03c75a;fill:#fff}.nav-ic.kakao{background:#fee500;fill:#3c1e1e}.nav-ic.tmap{background:#ef4b5f;fill:#fff}.transport{text-align:left;font-family:var(--sans)}.tp-row{padding:16px 0;border-top:1px solid var(--tint2)}.tp-row:last-child{border-bottom:1px solid var(--tint2)}.tp-row h4{margin:0 0 4px;font-size:.9rem;color:var(--accent-dark)}.tp-row p{margin:0;white-space:pre-wrap;font-size:.92rem;line-height:1.7}.acc{border:1px solid var(--tint2);border-radius:14px;margin:10px 0;overflow:hidden;text-align:left;font-family:var(--sans)}.acc,.acc-head{background:var(--paper)}.acc-head{width:100%;display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border:0;font-weight:700;color:var(--ink)}.acc-arrow{transition:transform .25s;font-size:1.2rem;line-height:1}.acc.open .acc-arrow{transform:rotate(180deg)}.acc-body{padding:0 18px 6px;border-top:1px solid var(--tint2);animation:fade .25s}.acct-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 0}.acct-row+.acct-row{border-top:1px dashed var(--tint2)}.acct-rel{font-size:.8rem;color:var(--muted)}.acct-rel b{color:var(--ink);font-weight:600}.acct-num{font-size:.98rem;margin-top:2px}.acct-free{white-space:pre-wrap;background:var(--paper);border:1px solid var(--tint2);border-radius:14px;padding:14px}.acct-free,.guestbook{font-family:var(--sans)}.gb-list{list-style:none;padding:0;margin:0 0 18px;text-align:left}.gb-item{background:var(--tint);border-radius:14px;padding:14px 16px;margin-bottom:10px}.gb-list.in-sheet .gb-item{background:var(--bg)}.gb-head{display:flex;align-items:center;gap:8px}.gb-head strong{font-size:.92rem}.gb-head span{color:var(--muted);font-size:.75rem}.gb-del{margin-left:auto;background:none;border:0;color:var(--muted);font-size:1.1rem;padding:0 4px}.gb-item p{margin:6px 0 0;white-space:pre-wrap;font-size:.92rem;line-height:1.7}.gb-empty{color:var(--muted);font-size:.9rem;margin:0 0 18px}.gb-btns{display:flex;gap:8px;justify-content:center}.gb-btns .btn{min-width:120px}.gb-toast{background:var(--tint);color:var(--accent-dark);border-radius:10px;padding:8px 12px;font-size:.88rem}.rsvp-card{display:inline-block;min-width:70%;border:1px solid var(--tint2);background:var(--paper);border-radius:14px;padding:16px 20px;margin-bottom:22px;font-family:var(--sans);font-size:.92rem}.rsvp-card p{margin:2px 0}.ending{padding-top:0}.ending-photo{margin:0 -28px 40px}.ending-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:saturate(.9)}.ending-script{font-family:var(--script);font-size:2.4rem;color:var(--accent);margin:0}.thanks{margin:4px 0 28px;font-size:.95rem}.share-row .btn{min-width:200px}.inv-foot{text-align:center;font-family:var(--en);letter-spacing:.3em;font-size:.7rem;color:var(--muted);padding:22px 0 34px}.theme-minimal{--bg:#f1f1ef;--paper:#fff;--ink:#2b2b2b;--muted:#8d8d8d;--line:#e6e6e6;--accent:#3a3a3a;--accent-dark:#1f1f1f;--rose:#d6d6d6;--blush:#ececec;--leaf:#bdbdbd;--gold:#a8a8a8;--tint:#f7f7f5;--tint2:#e9e9e7;--serif:"Nanum Myeongjo","Gowun Batang",serif;--script:"Cormorant Garamond",Georgia,serif}.theme-classic{--bg:#efe8da;--paper:#fffbf3;--ink:#3d3428;--muted:#9a8c76;--line:#eadfc8;--accent:#b08d4a;--accent-dark:#8a6a2e;--rose:#dcc591;--blush:#efe3c6;--leaf:#b9a87c;--gold:#c9a24f;--tint:#f8f1e2;--tint2:#ece0c6;--script:"Pinyon Script","Great Vibes",cursive}.theme-garden{--bg:#e9f0e6;--paper:#fbfdfa;--ink:#33443a;--muted:#869487;--line:#dbe6d8;--accent:#6f9a76;--accent-dark:#4e7a57;--rose:#f7f3e3;--blush:#f3eed6;--leaf:#7fa77f;--gold:#e2b85a;--tint:#f0f6ee;--tint2:#dfe9dc}.theme-minimal .flower-corner,.theme-minimal .flower-divider{display:none}.theme-minimal .cover-script{font-style:italic;letter-spacing:.05em}.theme-minimal .amp{font-style:italic}.theme-minimal .sec-head:after{content:"";display:block;width:1px;height:26px;background:var(--ink);margin:16px auto 0;opacity:.4}.theme-minimal .cal td.day span{border-radius:0;box-shadow:none}.theme-minimal .cd-cell,.theme-minimal .gb-item{border-radius:0}.theme-classic .inv{outline:1px solid var(--gold);outline-offset:-10px}.theme-classic .sec-en{color:var(--gold)}.theme-classic .cover-full .cover-photo:after{background:linear-gradient(rgba(40,30,10,.05) 35%,rgba(40,30,10,.6))}.theme-garden .flower-corner{opacity:1}.inv-page .btn{background:var(--accent)}.inv-page .btn:hover{background:var(--accent-dark)}.inv-page .btn.ghost{background:transparent;color:var(--accent-dark);border:1.5px solid var(--accent)}.inv-page .btn.ghost:hover{background:var(--tint)}.inv-page .chip{border-color:var(--accent);color:var(--accent-dark)}.inv-page .chip,.inv-page .modal-box{background:var(--paper)}.theme-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.theme-card{position:relative;display:flex;flex-direction:column;gap:2px;padding:10px 10px 12px;border:2px solid var(--line);border-radius:var(--radius);background:var(--paper);cursor:pointer;transition:border-color .15s,box-shadow .15s;color:var(--ink)}.cover-opt input,.theme-card input{position:absolute;opacity:0;width:1px;height:1px}.theme-card:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.theme-card:has(input:checked):after{content:"✓";position:absolute;top:8px;right:10px;width:22px;height:22px;line-height:22px;text-align:center;border-radius:50%;background:var(--accent);color:#fff;font-size:.8rem}.theme-card:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.theme-sample{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:96px;margin-bottom:6px;border-radius:10px;background:linear-gradient(var(--tint),var(--paper));border:1px solid var(--tint2)}.ts-eyebrow{font-family:var(--en);font-size:.6rem;letter-spacing:.3em;color:var(--accent)}.ts-names{font-family:var(--serif);font-size:.95rem}.ts-line{width:40px;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--leaf),var(--rose),var(--leaf))}.theme-minimal .ts-line{height:1px;background:var(--ink)}.theme-card b{font-size:.95rem}.theme-card small{color:var(--muted);font-size:.78rem;line-height:1.4}.sub-title{font-size:1rem;margin:22px 0 10px}.cover-pick{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.cover-opt{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border:2px solid var(--line);border-radius:var(--radius);background:var(--paper);cursor:pointer;font-size:.85rem}.cover-opt:has(input:checked){border-color:var(--accent);color:var(--accent-dark);font-weight:700}.cover-shape{width:42px;height:54px;background:linear-gradient(135deg,var(--blush),var(--rose))}.shape-arch{border-radius:21px 21px 4px 4px}.shape-full{width:56px;height:58px;border-radius:0}.shape-frame{border-radius:1px;outline:1px solid var(--rose);outline-offset:3px}.block{display:block;font-weight:400}.switch small{font-size:.8rem}.progress{display:block;width:80%;height:6px;margin-top:8px;border-radius:3px;background:var(--line);overflow:hidden}.progress span{display:block;height:100%;background:var(--accent);transition:width .3s}.rsvp-intro{line-height:2;margin:0 0 22px;color:#6f6062}.theme-classic .rsvp-intro,.theme-garden .rsvp-intro,.theme-minimal .rsvp-intro{color:var(--ink)}.modal{position:fixed;inset:0;z-index:90;background:rgba(30,20,22,.5);display:flex;align-items:flex-end;justify-content:center;animation:fade .2s}.modal-box{position:relative;width:100%;max-width:480px;max-height:92vh;overflow-y:auto;background:var(--paper);border-radius:22px 22px 0 0;padding:26px 20px calc(24px + env(safe-area-inset-bottom));font-family:var(--sans);text-align:left}@media (min-width:560px){.modal{align-items:center}.modal-box{border-radius:22px}}.modal-title{font-family:var(--serif);text-align:center;font-size:1.2rem;margin:0 0 18px}.modal-x{position:absolute;top:10px;right:12px;background:none;border:0;font-size:1.8rem;color:var(--muted);line-height:1;padding:4px 8px}.seg{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-bottom:12px}.seg label{position:relative}.seg input{position:absolute;opacity:0;width:1px;height:1px}.seg span{display:flex;align-items:center;justify-content:center;min-height:48px;border:1.5px solid var(--line);border-radius:12px;background:#fff;font-weight:600;cursor:pointer;transition:all .15s}.seg input:checked+span{border-color:var(--accent);background:var(--accent);color:#fff}.seg input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.rsvp-form:has(input[name=attend][value=no]:checked) .attend-only{display:none}.rsvp-done{font-size:1.05rem;line-height:1.8;margin:10px 0 22px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin:18px 0 10px}.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px;text-align:center}.stat b{display:block;font-size:1.4rem;font-family:var(--serif)}.stat span{font-size:.8rem;color:var(--muted)}.stat.main{background:var(--accent);border-color:var(--accent);color:#fff}.stat.main span{color:hsla(0,0%,100%,.85)}.side-sum{display:flex;justify-content:space-around;font-size:.9rem;color:var(--muted);margin-bottom:16px}.side-sum b{color:var(--ink)}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:6px}.tabs a{padding:10px 12px;text-decoration:none;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;font-size:.92rem}.tabs a.on{color:var(--accent-dark);border-color:var(--accent);font-weight:700}.rsvp-list{list-style:none;padding:0;margin:0}.rsvp-list li{padding:14px 2px;border-bottom:1px solid var(--line)}.rsvp-list li.no{opacity:.65}.rsvp-main{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.rsvp-main strong{margin-right:4px}.rsvp-note{margin:6px 0 0;font-size:.9rem;color:#6f6062}.rsvp-meta{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;color:var(--muted);margin-top:4px}.badge.blue{background:#e6eef7;color:#4d74a0}.choice-row{display:flex;gap:8px;flex-wrap:wrap}.choice{position:relative}.choice input{position:absolute;opacity:0;width:1px;height:1px}.choice span{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border:1.5px solid var(--line);border-radius:999px;background:var(--paper);cursor:pointer;font-size:.92rem}.choice input:checked+span{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:600}.choice input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.with-late{display:flex;gap:6px;align-items:center}.with-late>input{flex:1 1;min-width:0}.late{position:relative;flex:none}.late input{position:absolute;opacity:0;width:1px;height:1px}.late span{display:grid;place-items:center;width:42px;height:46px;border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--muted);cursor:pointer;font-family:var(--serif)}.late input:checked+span{background:#555;border-color:#555;color:#fff}.more-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:0 16px;margin-bottom:14px}.more-box summary{padding:15px 0;font-weight:600;cursor:pointer;color:var(--accent-dark)}.more-box[open]{padding-bottom:4px}.more-box>p{margin:0 0 12px}.seg-tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--tint2);border-radius:999px;padding:4px;margin:14px 0 6px}.seg-tabs a{text-align:center;padding:8px 0;border-radius:999px;text-decoration:none;color:var(--muted);font-size:.92rem}.seg-tabs a.on{background:var(--paper);color:var(--accent-dark);font-weight:700;box-shadow:0 1px 4px rgba(0,0,0,.08)}.landing-script{font-family:Great Vibes,cursive;font-size:1.9rem;color:var(--accent);margin:0;line-height:1.2}.landing-title{word-break:keep-all}.landing-sub .muted{font-size:.92rem}.inv-foot a{color:var(--muted);text-decoration:none;letter-spacing:.05em;font-family:var(--sans);font-size:.75rem}.kakao-preview{background:#b2c7da;border-radius:var(--radius);padding:18px 16px;margin-bottom:16px}.kp-bubble{width:78%;max-width:280px;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.08);font-family:-apple-system,Apple SD Gothic Neo,sans-serif}.kp-bubble img{width:100%;aspect-ratio:1/1;object-fit:cover}.kp-noimg{aspect-ratio:2/1;display:grid;place-items:center;background:#eee;color:#999;font-size:.8rem}.kp-text{padding:10px 12px 12px}.kp-text b{display:block;font-size:.92rem;color:#222;line-height:1.4}.kp-text p{margin:4px 0 6px;font-size:.8rem;color:#777;white-space:pre-line;line-height:1.45}.kp-text span{font-size:.72rem;color:#aaa}.field-label{font-size:.92rem;font-weight:600;margin:0 0 6px}.share-photos{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:6px;gap:6px;margin-bottom:14px}.share-photos label{position:relative;cursor:pointer}.share-photos input{position:absolute;opacity:0;width:1px;height:1px}.share-photos img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;border:3px solid transparent;opacity:.55;transition:all .15s}.share-photos input:checked+img{border-color:var(--accent);opacity:1}.share-photos input:focus-visible+img{outline:2px solid var(--accent);outline-offset:2px}code{background:var(--tint2);padding:1px 5px;border-radius:4px;font-size:.85em}.closed{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px}.closed-icon{font-size:2.4rem;margin:0 0 8px}.closed h1{font-family:var(--serif);font-weight:400;font-size:1.5rem;margin:0 0 8px}.closed p{color:var(--muted);margin:0}.inv-page .kakao-btn,.kakao-btn{background:#fee500;color:#191919}.inv-page .kakao-btn:hover,.kakao-btn:hover{background:#f5d800}.kakao-ic{width:18px;height:18px;fill:currentColor}.share-row{display:flex;flex-direction:column;align-items:center;gap:10px}.cover-clip{position:relative;overflow:hidden}.cover-clip,.cover-zoom,.cover-zoom img{width:100%;height:100%}.cover-zoom img{display:block;object-fit:cover}.cover-full .cover-photo{overflow:hidden}.cover-full .cover-clip{position:absolute;inset:0}.cover-arch .cover-clip,.cover-frame .cover-clip{aspect-ratio:3/4;height:auto}.cover-arch .cover-photo img,.cover-frame .cover-photo img{aspect-ratio:auto;height:100%}.cover-adjust{margin-bottom:8px}.ca-frame{position:relative;margin:0 auto 12px;background:#eee;touch-action:none;cursor:-webkit-grab;cursor:grab;-moz-user-select:none;user-select:none;-webkit-user-select:none}.ca-frame:active{cursor:-webkit-grabbing;cursor:grabbing}.ca-full{width:56%;aspect-ratio:9/19;border-radius:12px;overflow:hidden}.ca-arch{width:62%;aspect-ratio:3/4;border-radius:999px 999px 0 0;overflow:hidden;border:4px solid #fff;box-shadow:var(--shadow)}.ca-frame.ca-frame:not(.ca-full):not(.ca-arch):not(.ca-fb_bubble):not(.ca-fb_arch):not(.ca-sb_frame):not(.ca-sb_round):not(.ca-hw_window):not(.ca-hw_door){width:62%;aspect-ratio:3/4;padding:8px;background:#fff;outline:1px solid var(--rose);outline-offset:5px}.ca-frame .cover-clip{position:absolute;inset:0;height:100%;aspect-ratio:auto}.ca-frame:not(.ca-full):not(.ca-arch):not(.ca-fb_bubble):not(.ca-fb_arch):not(.ca-sb_frame):not(.ca-sb_round):not(.ca-hw_window):not(.ca-hw_door) .cover-clip{inset:8px;width:auto}.ca-hint{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);background:rgba(0,0,0,.5);color:#fff;font-size:.75rem;padding:3px 10px;border-radius:999px;pointer-events:none;white-space:nowrap}.ca-zoom{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:.9rem}.ca-zoom input{flex:1 1;padding:0;accent-color:var(--accent)}.ca-zoom b{width:46px;text-align:right;font-weight:600}.ca-btns{display:flex;gap:8px;justify-content:flex-end}.ending-pick{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:6px;gap:6px;margin-bottom:10px}.ending-pick button{padding:0;border:3px solid transparent;border-radius:8px;overflow:hidden;background:#eee;aspect-ratio:1;opacity:.55;transition:all .15s}.ending-pick button img{width:100%;height:100%;object-fit:cover}.ending-pick button.on{border-color:var(--accent);opacity:1}.ending-pick .ending-none{font-size:.85rem;color:var(--muted)}.ending-pick .ending-none.on{color:var(--accent-dark);font-weight:700;background:var(--tint)}.font-grid{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.font-grid.two{grid-template-columns:1fr 1fr}.font-opt{position:relative;display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:2px solid var(--line);border-radius:var(--radius);background:var(--paper);cursor:pointer}.font-opt input{position:absolute;opacity:0;width:1px;height:1px}.font-opt:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.font-opt:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.font-sample{font-family:var(--serif);font-size:1.08rem;color:var(--ink);line-height:1.5}.font-sample.script{font-family:Great Vibes,cursive;font-size:1.5rem;color:var(--accent)}.font-opt small{color:var(--muted);font-size:.78rem}.font-big .inv{font-size:1.18rem}.code-input{text-align:center;font-size:1.6rem!important;letter-spacing:.5em;font-weight:700}.verify .link{display:inline-block;margin:4px 0 10px}.kakao-login{background:#fee500;color:#191919;margin:14px 0 6px}.kakao-login:hover{background:#f5d800}.or-line{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.82rem;margin:12px 0 0}.or-line:after,.or-line:before{content:"";flex:1 1;height:1px;background:var(--line)}.link-box{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin:10px 0 14px;font-size:.88rem}.link-box .kakao-btn{background:#fee500;color:#191919}.time-row{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:8px;gap:8px}select{width:100%;padding:13px 12px;font:inherit;font-size:16px;color:var(--ink);border:1.5px solid var(--line);border-radius:10px;background:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 16px) 55%,calc(100% - 11px) 55%;background-size:5px 5px;background-repeat:no-repeat}.date-input{min-height:50px}.font-grid.two .font-sample.script{font-size:1.7rem;line-height:1.3}.inv-card-top{display:flex;align-items:center}.inv-card-top .inv-card-main{flex:1 1;min-width:0}.qr-tile{flex:none;display:flex;flex-direction:column;align-items:center;gap:2px;margin-right:14px;padding:6px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none;color:var(--muted)}.qr-tile img{display:block;width:64px;height:64px}.qr-tile small{font-size:.65rem;letter-spacing:.1em}.qr-tile.off{border-style:dashed}.qr-off{display:grid;place-items:center;width:64px;height:64px;font-weight:700;color:var(--line);font-size:1.3rem}.qr-page{text-align:center}.qr-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 20px 22px;margin:10px 0 14px;box-shadow:var(--shadow)}.qr-eyebrow{font-family:var(--en);letter-spacing:.3em;font-size:.75rem;color:var(--accent);margin:0 0 6px}.qr-names{font-family:var(--serif);font-weight:400;font-size:1.5rem;letter-spacing:.08em;margin:0 0 6px}.qr-names span{color:var(--accent)}.qr-when,.qr-where{margin:0;color:var(--muted);font-size:.92rem}.qr-img{display:block;margin:18px auto 10px;width:280px;max-width:80%;height:auto}.qr-guide{margin:0;font-size:.88rem;color:var(--ink)}.qr-url{word-break:break-all;font-size:.8rem;color:var(--muted);margin:0 0 12px}.qr-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-bottom:18px}.qr-actions .btn{width:100%}.qr-tips{text-align:left;background:var(--tint);border-radius:var(--radius);padding:14px 18px;font-size:.88rem}.qr-tips h3{margin:0 0 6px;font-size:.95rem}.qr-tips ul{margin:0;padding-left:18px}.qr-tips li{margin:4px 0}@media print{body{background:#fff!important}.no-print{display:none!important}.wrap.qr-page{max-width:none;padding:0}.qr-card{border:0;box-shadow:none;margin:30mm auto 0;padding:0;width:120mm}.qr-img{width:80mm;max-width:none}}.qr-make{flex:none;margin-right:14px}.qr-make-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:78px;height:86px;padding:6px;border:1.5px dashed var(--rose);border-radius:12px;background:var(--tint);color:var(--accent-dark);font-size:.75rem;cursor:pointer}.qr-make-btn span{font-size:1.6rem;line-height:1}.qr-make-btn b{font-weight:600}.qr-make-btn:hover{background:#fff}.qr-make-btn:disabled{opacity:.6}.qr-intro{text-align:center;padding:26px 8px}.qr-intro-icon{font-size:3rem;margin:0;color:var(--accent);line-height:1}.qr-intro p{margin:10px 0 20px}.qr-intro .muted{margin:12px 0 0}.side-box .more-box{background:var(--tint);border-color:transparent;margin:0 0 12px}.side-box .more-box summary{padding:12px 0}.gr-count{display:flex;justify-content:space-between}.gr-clear{display:block;margin:-6px 0 10px auto}.gr-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px 14px;margin-top:8px}.gr-title{font-weight:700;margin:0 0 4px}.gr-note{margin:0 0 12px;line-height:1.6}.gr-cats{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px;margin-bottom:8px;scrollbar-width:none}.gr-cats::-webkit-scrollbar{display:none}.gr-cat{flex:none;min-height:38px;padding:0 14px;border:1.5px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-size:.88rem;cursor:pointer}.gr-cat.on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.gr-list{display:grid;grid-gap:10px;gap:10px}.gr-card{background:var(--tint);border-radius:12px;padding:14px}.gr-card.used{outline:2px solid var(--accent)}.gr-text{white-space:pre-wrap;line-height:1.9;font-size:.92rem;margin:0 0 10px;font-family:var(--serif)}.fp .gr-cats{margin-bottom:10px}.fp-n{font-size:.72rem;opacity:.7;margin-left:2px}.place-fields{margin-bottom:4px}.ps-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin-bottom:14px}.ps-title{font-weight:700;margin:0 0 8px}.ps-row{display:flex;gap:8px}.ps-row input{flex:1 1;min-width:0}.ps-row .btn{flex:none}.ps-hint,.ps-msg,.ps-results{margin:10px 0 0}.ps-results{list-style:none;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}.ps-results li+li{border-top:1px solid var(--tint2)}.ps-results button{display:block;width:100%;text-align:left;background:#fff;border:0;padding:12px 14px;cursor:pointer}.ps-results button:hover{background:var(--tint)}.ps-results b{display:block;font-size:.95rem}.ps-results span{display:block;font-size:.82rem;color:var(--muted)}.ps-results small{display:inline-block;margin-top:2px;font-size:.72rem;color:var(--accent-dark)}.ps-map-wrap{margin-bottom:14px}.ps-map{width:100%;height:220px;border-radius:12px;overflow:hidden;background:var(--tint2)}.ps-clear{display:block;margin:4px 0 0 auto}.ps-edited{margin:-6px 0 14px}.guest-map{position:relative;margin:0 0 14px;border-radius:14px;overflow:hidden;background:var(--tint2)}.guest-map-canvas{width:100%;height:240px}.guest-map-ph{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-family:var(--sans);font-size:.85rem;pointer-events:none}.guest-map-open{position:absolute;top:8px;left:8px;z-index:5;background:hsla(0,0%,100%,.92);color:var(--ink);border-radius:999px;padding:4px 12px;font-family:var(--sans);font-size:.75rem;text-decoration:none;box-shadow:0 1px 4px rgba(0,0,0,.15)}.stepper{grid-template-columns:repeat(8,1fr);gap:2px}@media (max-width:400px){.step{font-size:.68rem}}.nt-label{font-weight:700;margin:0 0 8px}.nt-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.nt-chip{min-height:40px;padding:0 14px;border:1.5px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font-size:.9rem;cursor:pointer}.nt-chip:hover:not(:disabled){border-color:var(--accent)}.nt-chip:disabled{opacity:.45;cursor:default}.nt-empty{text-align:center;color:var(--muted);padding:22px 8px;border:1.5px dashed var(--line);border-radius:var(--radius)}.nt-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:12px;margin:10px 0}.nt-card input,.nt-card textarea{margin-top:8px}.nt-head{display:flex;align-items:center;gap:8px}.nt-ic{font-size:1.4rem}.nt-head select{flex:1 1;min-width:0}.nt-tools{display:flex;gap:4px;flex:none}.nt-tools button{width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-size:.8rem}.nt-tools button:disabled{opacity:.35}.nt-tools .nt-del{color:var(--danger)}.nt-foot{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.nt-todo{color:var(--danger);font-size:.8rem}.notice-list{display:grid;grid-gap:12px;gap:12px;text-align:left}.notice-card{background:var(--tint);border-radius:16px;padding:22px 20px}.notice-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--paper);font-size:1.4rem;margin-bottom:10px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.notice-card h3{margin:0 0 8px;font-size:1.05rem;font-weight:700}.notice-card p{margin:0;white-space:pre-wrap;line-height:1.9;font-size:.93rem;font-family:var(--sans)}.notice-card a{color:var(--accent-dark);font-weight:600}.day-hero{position:relative;text-align:center;padding:54px 24px 30px;background:linear-gradient(var(--tint),var(--paper))}.day-script{font-family:var(--script);font-size:2rem;color:var(--accent);margin:0;line-height:1.2}.day-title{font-size:1.5rem;font-weight:700;margin:2px 0 10px;letter-spacing:.04em}.day-names{font-size:1.15rem;margin:0 0 8px;letter-spacing:.08em}.day-when{font-size:1.6rem;font-weight:700;color:var(--accent-dark);margin:0;font-family:var(--sans)}.day-where{margin:4px 0 0;color:var(--muted);font-size:.95rem}.day-jump{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:20px}.day-jump a{display:inline-flex;align-items:center;min-height:42px;padding:0 18px;border-radius:999px;background:var(--accent);color:#fff;text-decoration:none;font-family:var(--sans);font-size:.92rem;font-weight:600}.day-mode .sec{padding:52px 24px}.day-end{padding-bottom:40px}.day-banner{display:block;text-align:center;padding:12px 16px;background:var(--accent);color:#fff;text-decoration:none;font-family:var(--sans);font-size:.9rem;font-weight:600}.preview-modes{display:inline-flex;background:hsla(0,0%,100%,.15);border-radius:999px;padding:2px}.preview-modes a{color:#fff;text-decoration:none;padding:3px 12px;border-radius:999px;font-size:.82rem;opacity:.75}.preview-modes a.on{background:#fff;color:var(--ink);opacity:1;font-weight:700}.site-notice{text-align:center;padding:10px 16px;background:var(--accent);color:#fff;font-size:.88rem;font-family:var(--sans)}.site-notice.warn{background:#8a6d3b}.maint{text-align:center;padding-top:90px}.maint-ic{font-size:3rem;margin:0 0 6px}.acc-h{font-size:1.05rem;margin:0 0 8px}.acc-h.danger{color:var(--danger)}.acc-list{margin:0 0 8px;padding-left:18px}.danger-zone{border-color:#e9c4c2;box-shadow:none;background:snow;margin-top:12px}.danger-btn{background:var(--danger)}.danger-btn:hover{background:#a33f3c}.gb-report{margin-left:auto;background:none;border:0;color:var(--muted);font-size:.75rem;padding:0 4px;cursor:pointer;text-decoration:underline}.gb-report+.gb-del{margin-left:0}.report-link{display:block;margin:8px auto 0;background:none;border:0;color:var(--muted);font-size:.72rem;text-decoration:underline;cursor:pointer;font-family:var(--sans);opacity:.8}.report-reasons{border:0;padding:0;margin:0 0 12px;display:grid;grid-gap:6px;gap:6px}.report-reasons label{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;font-family:var(--sans)}.report-reasons input{width:auto}.report-reasons label:has(input:checked){border-color:var(--accent);background:var(--tint)}.consent{border:1px solid var(--line,#e8dede);border-radius:12px;padding:10px 12px;margin:12px 0;display:grid;grid-gap:8px;gap:8px}.consent label{display:flex;gap:8px;align-items:flex-start;font-size:.88rem}.consent .consent-all{font-weight:600;padding-bottom:8px;border-bottom:1px solid var(--line,#e8dede)}.consent input{margin-top:3px;flex:none}.consent a{text-decoration:underline}.privacy-note{font-size:.78rem;color:var(--muted);margin:6px 0 10px;line-height:1.5}.legal-links{margin:8px 0 0;font-size:.72rem;letter-spacing:0}.legal-links a{text-decoration:underline}.legal h2{font-size:1rem;margin:22px 0 6px}.legal li,.legal p{font-size:.9rem;line-height:1.7}.legal ul{padding-left:1.2em}.withdraw-bar{display:grid;grid-gap:8px;gap:8px;text-align:center}.withdraw-bar form{margin:0}.kind-pick-h{font-size:1rem;margin:6px 0 10px;text-align:center}.kind-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px;margin-bottom:14px}.kind-card{display:grid;grid-gap:6px;gap:6px;justify-items:center;text-align:center;padding:14px 10px;border:1px solid var(--line,#e8dede);border-radius:14px;background:var(--card,#fff)}.kind-icon{font-size:1.8rem}.kind-card.soon{opacity:.6}.kind-filter{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.kind-filter .chip{padding:4px 12px;border-radius:999px;border:1px solid var(--line,#e8dede);font-size:.82rem;text-decoration:none;color:inherit}.kind-filter .chip.on{background:var(--accent,#c9788a);color:#fff;border-color:transparent}.badge.kind{background:transparent;border:1px solid var(--line,#e8dede);color:var(--muted,#8a7a7c)}.alert.info{background:#f2f4fb;color:#46506b}.contact-row,.inviter-row{margin-bottom:6px}.ev-fb .ev-fb-nick{font-size:.55em;font-weight:400;opacity:.8}.ev-fb .ev-fb-birth{text-align:center;opacity:.8;margin-top:-4px}.ev-fb .ev-fb-growth,.ev-fb .ev-fb-inviters .family-line{justify-content:center}.ev-fb .ev-fb-growth{display:flex;align-items:center;gap:18px;text-align:center}.ev-fb .ev-fb-growth-col b{display:block;margin-bottom:6px}.ev-fb .ev-fb-growth-arrow{font-size:1.6rem;opacity:.6}.ev-fb .ev-fb-months{display:grid;grid-gap:18px;gap:18px}.ev-fb .ev-fb-month img{width:100%;border-radius:14px;display:block}.ev-fb .ev-fb-month p{text-align:center;margin:8px 0 0}.ev-fb .ev-fb-decline{white-space:pre-line}.theme-fb_cloud{--bg:#eaf3fb;--paper:#fbfdff;--ink:#3a4a5c;--muted:#8497ab;--line:#d9e6f2;--accent:#6aa7d8;--accent-dark:#4a86b8;--rose:#f9c9d6;--blush:#fde6ec;--leaf:#b7d9f2;--gold:#f6d58a;--tint:#f1f7fc;--tint2:#dfecf7}.theme-fb_forest{--bg:#eef3e4;--paper:#fcfdf8;--ink:#3d4a36;--muted:#8b9a7e;--line:#e0e8d0;--accent:#86a85b;--accent-dark:#66883f;--rose:#f2d3a5;--blush:#f7e8cb;--leaf:#a9c783;--gold:#e3b45a;--tint:#f4f8ea;--tint2:#e3ecd2}.theme-fb_rainbow{--bg:#fff6ea;--paper:#fffdf8;--ink:#4a3c3a;--muted:#a08f89;--line:#f5e3d0;--accent:#f08a6b;--accent-dark:#d46a4b;--rose:#ffc2cf;--blush:#ffe3cc;--leaf:#9fd8c9;--gold:#ffd36b;--tint:#fff0e0;--tint2:#fbe3cf}.theme-fb_rainbow .ts-line{background:linear-gradient(90deg,#f6a5b5,#ffd27a,#b9e3a8,#9fd8f2,#cdb4f0);height:6px}.theme-fb_cloud .flower-corner,.theme-fb_cloud .flower-divider,.theme-fb_forest .flower-corner,.theme-fb_forest .flower-divider{opacity:.55}.cover-fb_arch,.cover-fb_bubble{padding:60px 0 56px}.cover-fb_arch .cover-photo,.cover-fb_bubble .cover-photo{order:-1;width:78%;margin:0 auto 34px;background:#fff;overflow:hidden;border:6px solid #fff;box-shadow:0 14px 34px rgba(0,0,0,.12)}.cover-fb_bubble .cover-photo{border-radius:46% 54% 52% 48%/52% 46% 54% 48%}.cover-fb_arch .cover-photo{border-radius:999px 999px 24px 24px;outline:3px dashed var(--rose);outline-offset:7px}.cover-fb_arch .cover-photo img,.cover-fb_bubble .cover-photo img{width:100%;aspect-ratio:1/1.1;object-fit:cover}.cover-fb_arch .cover-photo img{aspect-ratio:3/4}.cover-fb_arch.no-photo,.cover-fb_bubble.no-photo{padding-top:120px}.shape-fb_bubble{border-radius:46% 54% 52% 48%/52% 46% 54% 48%}.shape-fb_arch{border-radius:999px 999px 8px 8px}.ca-fb_bubble{aspect-ratio:1/1.1;border-radius:46% 54% 52% 48%/52% 46% 54% 48%;border:4px solid #fff}.ca-fb_arch,.ca-fb_bubble{width:62%;overflow:hidden;box-shadow:var(--shadow)}.ca-fb_arch{aspect-ratio:3/4;border-radius:999px 999px 24px 24px;border:4px solid #fff}.ca-frame.ca-fb_arch .cover-clip,.ca-frame.ca-fb_bubble .cover-clip{inset:0}.theme-sb_hanji{--bg:#f3ece0;--paper:#fbf7ee;--ink:#3b3226;--muted:#9a8c78;--line:#e6dcc8;--accent:#8a6b45;--accent-dark:#6e5232;--rose:#d9c3a0;--blush:#efe3cf;--leaf:#a9996f;--gold:#b8975a;--tint:#f7f0e2;--tint2:#eadfc9;--script:"Pinyon Script","Great Vibes",cursive}.theme-sb_flower{--bg:#fbeef0;--paper:snow;--ink:#4a3a40;--muted:#a08a92;--line:#f3dde2;--accent:#d98aa0;--accent-dark:#bd6a84;--rose:#f5c6d2;--blush:#fde4ea;--leaf:#a9c9a4;--gold:#e6c088;--tint:#fdf1f3;--tint2:#f6dce2}.theme-sb_gold{--bg:#f1eadb;--paper:#fffdf6;--ink:#3a3326;--muted:#9a8e74;--line:#eadfc3;--accent:#a8842f;--accent-dark:#86671c;--rose:#d9bf7f;--blush:#f1e4bd;--leaf:#b3a56d;--gold:#c9a24f;--tint:#f9f2df;--tint2:#eee0b8;--script:"Pinyon Script","Great Vibes",cursive}.theme-sb_gold .inv{outline:1px solid var(--gold);outline-offset:-10px}.theme-sb_gold .sec-en,.theme-sb_hanji .sec-en{color:var(--gold)}.theme-sb_hanji .flower-corner,.theme-sb_hanji .flower-divider{opacity:.45}.cover-sb_frame,.cover-sb_round{padding:60px 0 56px}.cover-sb_frame .cover-photo,.cover-sb_round .cover-photo{order:-1;width:78%;margin:0 auto 34px;background:#fff;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.12)}.cover-sb_frame .cover-photo{padding:10px;border:2px solid var(--gold);outline:1px solid var(--rose);outline-offset:8px}.cover-sb_round .cover-photo{border-radius:50%;border:6px solid #fff;aspect-ratio:1/1}.cover-sb_frame .cover-photo img{width:100%;aspect-ratio:3/4;object-fit:cover}.cover-sb_round .cover-photo img{width:100%;height:100%;object-fit:cover}.cover-sb_frame.no-photo,.cover-sb_round.no-photo{padding-top:120px}.shape-sb_frame{border-radius:1px;outline:1px solid var(--gold);outline-offset:3px}.shape-sb_round{border-radius:50%}.ca-sb_frame{width:62%;aspect-ratio:3/4;padding:8px;background:#fff;outline:1px solid var(--gold);outline-offset:5px;overflow:hidden}.ca-sb_round{width:62%;aspect-ratio:1/1;border-radius:50%;overflow:hidden;border:4px solid #fff;box-shadow:var(--shadow)}.ca-frame.ca-sb_frame .cover-clip{inset:8px;width:auto}.ca-frame.ca-sb_round .cover-clip{inset:0}.ev-sb .ev-sb-title{font-size:.55em;font-weight:400;opacity:.8}.ev-sb .ev-sb-spouse{display:inline-flex;align-items:center;gap:4px}.ev-sb .ev-sb-inviters .family-line{justify-content:center}.ev-sb .ev-sb-decline{white-space:pre-line}.theme-hw_cozy{--bg:#f3e9dc;--paper:#fdf8f0;--ink:#43342a;--muted:#9b8a78;--line:#e8d9c4;--accent:#b9803f;--accent-dark:#976028;--rose:#e0b98a;--blush:#f2dfc6;--leaf:#b2a06a;--gold:#d3a24e;--tint:#f8eddc;--tint2:#ecd9bd}.theme-hw_green{--bg:#e9f1e6;--paper:#fbfdf9;--ink:#34443a;--muted:#85978a;--line:#d9e7d6;--accent:#5f9a6d;--accent-dark:#437a51;--rose:#c9e0b9;--blush:#e4f0d8;--leaf:#7fb383;--gold:#d8c26a;--tint:#eff6ec;--tint2:#dbe9d6}.theme-hw_sky{--bg:#e8f3fb;--paper:#fbfdff;--ink:#34495c;--muted:#8499ad;--line:#d6e6f3;--accent:#5aa3d6;--accent-dark:#3a82b6;--rose:#bfe0f5;--blush:#dcedf9;--leaf:#8fc1e4;--gold:#f2d27a;--tint:#eff7fd;--tint2:#d9eaf6}.theme-hw_cozy .flower-corner,.theme-hw_cozy .flower-divider,.theme-hw_sky .flower-corner,.theme-hw_sky .flower-divider{opacity:.4}.cover-hw_door,.cover-hw_window{padding:60px 0 56px}.cover-hw_door .cover-photo,.cover-hw_window .cover-photo{order:-1;width:78%;margin:0 auto 34px;background:#fff;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.12)}.cover-hw_window .cover-photo{padding:12px;border:4px solid #fff;outline:2px solid var(--rose);outline-offset:6px;position:relative}.cover-hw_window .cover-photo:after{content:"";position:absolute;left:50%;top:12px;bottom:12px;width:4px;margin-left:-2px;background:hsla(0,0%,100%,.85);pointer-events:none}.cover-hw_door .cover-photo{border-radius:999px 999px 6px 6px;border:6px solid var(--rose)}.cover-hw_door .cover-photo img,.cover-hw_window .cover-photo img{width:100%;aspect-ratio:3/4;object-fit:cover}.cover-hw_door.no-photo,.cover-hw_window.no-photo{padding-top:120px}.shape-hw_window{border-radius:2px;outline:2px solid var(--rose);outline-offset:3px}.shape-hw_door{border-radius:999px 999px 4px 4px}.ca-hw_window{padding:8px;background:#fff;outline:2px solid var(--rose);outline-offset:5px}.ca-hw_door,.ca-hw_window{width:62%;aspect-ratio:3/4;overflow:hidden}.ca-hw_door{border-radius:999px 999px 6px 6px;border:4px solid var(--rose)}.ca-frame.ca-hw_window .cover-clip{inset:8px;width:auto}.ca-frame.ca-hw_door .cover-clip{inset:0}.ev-hw .ev-hw-locked{opacity:.8}.ev-hw .ev-hw-guide{margin:8px 0 0;white-space:pre-line}.ev-hw .ev-hw-movein,.ev-hw .ev-hw-story{text-align:center}.ev-hw-reveal{margin:14px 0;padding:12px;border-radius:12px;background:var(--tint,#f5f5f5);text-align:left;font-size:.9rem;white-space:pre-line}.choice-col{display:grid;grid-gap:8px;gap:8px;margin-bottom:10px}.choice-card{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:2px solid var(--line);border-radius:var(--radius);background:var(--paper);cursor:pointer}.choice-card.warn{border-style:dashed}.choice-card:has(input:checked){border-color:var(--accent)}.choice-card input{margin-top:3px;flex:none}.choice-card input[type=radio],.consent input[type=checkbox]{width:20px;height:20px;min-width:20px;padding:0;margin:1px 0 0;flex:none;border:0;border-radius:0;background:transparent;box-shadow:none;transition:none;accent-color:var(--accent,#c9788a)}.choice-card,.consent label{cursor:pointer}.consent label>span{flex:1 1;min-width:0;line-height:1.5}.consent-detail{margin-top:2px;font-size:.84rem}.consent-detail summary{cursor:pointer;color:var(--accent-dark,#8a4a5a);padding:4px 0}.consent-table{width:100%;border-collapse:collapse;margin:8px 0 4px;table-layout:fixed}.consent-table td,.consent-table th{border:1px solid var(--line,#e8dede);padding:8px;vertical-align:top;text-align:left;word-break:keep-all;overflow-wrap:anywhere}.consent-table th{width:30%;background:var(--tint,#faf3f3);font-weight:600}.consent-table td p{margin:0 0 4px;line-height:1.5}.consent-table td p:last-child{margin-bottom:0}.consent-policy{margin:6px 0 0}.kind-hint{text-align:center;font-size:.88rem;color:var(--muted);margin:14px 0 6px}a.kind-card.kind-link{text-decoration:none;color:inherit;cursor:pointer;transition:transform .12s,box-shadow .12s,border-color .12s}a.kind-card.kind-link:focus-visible,a.kind-card.kind-link:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--accent,#c9788a)}.kind-go{margin-top:4px;font-size:.85rem;font-weight:700;color:var(--accent-dark,#8a4a5a)}.kind-card.soon{cursor:default;opacity:.55;filter:grayscale(.35);background:transparent;border-style:dashed}.kind-soon-badge{margin-top:4px;font-size:.78rem;padding:2px 10px;border-radius:999px;background:var(--tint,#f3eeee);color:var(--muted)}.kind-confirm{max-width:320px;margin:10px auto;padding:18px 16px}.landing-subname{margin:-4px 0 6px;font-size:.95rem;letter-spacing:.12em;color:var(--muted);text-align:center}