@import url(https://fonts.googleapis.com/css2?family=Charm:wght@400;700&family=Great+Vibe&family=Fira+Code:wght@400;500&family=Sarabun:wght@400;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}body{background:#fdf1e5;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0}.page{display:flex;justify-content:center;min-height:100vh;padding:16px 8px}.phone-frame{background:#f1dad5c2;border-radius:28px;box-shadow:0 10px 30px #0000001a;max-width:720px;padding:16px;position:relative;width:100%;z-index:1}.petal-container{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%}.petal{animation:fall linear infinite;background:pink;border-radius:50% 50% 50% 0;height:14px;opacity:.7;position:absolute;top:-10px;width:14px}.petal:first-child{animation-duration:10s;left:5%}.petal:nth-child(2){animation-duration:14s;left:15%}.petal:nth-child(3){animation-duration:11s;left:25%}.petal:nth-child(4){animation-duration:15s;left:35%}.petal:nth-child(5){animation-duration:13s;left:45%}.petal:nth-child(6){animation-duration:12s;left:55%}.petal:nth-child(7){animation-duration:16s;left:65%}.petal:nth-child(8){animation-duration:14s;left:75%}.petal:nth-child(9){animation-duration:11s;left:85%}.petal:nth-child(10){animation-duration:15s;left:95%}.petal:nth-child(odd){background:pink}.petal:nth-child(2n){background:#ff9aa2}@keyframes fall{0%{transform:translateY(-10px) rotate(0deg)}to{transform:translateY(110vh) rotate(1turn)}}.wedding-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff61;border:1px solid #c49a5726;border-radius:20px;box-shadow:0 4px 15px #0000000d;margin:0 0 16px;padding:10px 16px;position:-webkit-sticky;position:sticky;top:8px;z-index:100}.header-top-bar{align-items:center;border-bottom:1px solid #c49a571a;display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:4px}.header-logo-mini{color:#b8893c;font-family:Great Vibe,cursive;font-size:1.2rem;font-weight:700}.header-date-mini{color:#7b6b59;font-size:.7rem;letter-spacing:1px;opacity:.8}.player-compact-row{align-items:center;display:flex;gap:10px;justify-content:space-between}.song-info-mini{flex:1 1;text-align:left}.player-text-th-mini{color:#7b6b59;font-size:12px;font-weight:600;margin:0;overflow:hidden;white-space:nowrap}.player-text-en-mini{color:#b09c84;font-size:9px;margin:0}.controls-mini-group{align-items:center;display:flex;gap:12px}.nav-icon-mini{color:#c49a57;cursor:pointer;font-size:14px}.play-btn-mini{align-items:center;background:#b8893c;border:none;border-radius:50%;box-shadow:0 2px 8px #b8893c4d;color:#fff;cursor:pointer;display:flex;font-size:12px;height:34px;justify-content:center;width:34px}.timeline-mini-container{margin-top:8px}.timeline-track-mini{background:#f4deca;border-radius:10px;height:3px;overflow:hidden}.timeline-progress-mini{background:#b8893c;height:100%}.time-row-mini{align-items:center;color:#b09c84;display:flex;font-size:8px;justify-content:space-between;margin-top:2px}.terminal{background:#1e1e1e;border-radius:12px;box-shadow:0 10px 30px #00000040;font-family:Fira Code,Courier New,monospace;margin:0 0 16px;overflow:hidden;width:100%}.terminal-header{background:#2a2a2a;display:flex;gap:6px;padding:8px 10px}.dot{border-radius:50%;height:10px;width:10px}.red{background:#ff5f56}.yellow{background:#ffbd2e}.green{background:#27c93f}.terminal-body{color:#eaeaea;font-size:13px;padding:12px 14px}.line{align-items:center;display:flex;gap:6px;margin-bottom:6px}.prompt{color:#4caf50}.output{color:#dcdcaa}.cursor{animation:blink 1s infinite;color:#fff;margin-left:2px}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.section{margin-bottom:28px}.section-title{color:#7b6b59;font-size:18px;font-weight:600;margin-bottom:10px;text-align:center}.card{background:#fffaf4;border:1px solid #e3cdb3;border-radius:24px;overflow:hidden}.card-main-wrap{border-radius:24px;overflow:hidden;position:relative;width:100%}.card-main-wrap img{animation:heroFade 2s ease forwards;opacity:0}.hero-image{display:block;height:auto;width:100%}.hero-overlay{bottom:20px;left:0;position:absolute;right:0;text-align:center}.scrolldown-text{animation:bounce 2s infinite;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0003;border-radius:20px;color:#fff;font-size:12px;padding:5px 15px}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}60%{transform:translateY(-3px)}}.wedding-names{align-items:center;display:flex;gap:18px;justify-content:center;margin:18px 0 22px;text-align:center}.fade-image.show{opacity:1;transform:translateY(0)}@keyframes heroFade{0%{opacity:0;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}.cinematic-slider{background:#0f0f10;border:1px solid #ffffff14;border-radius:30px;box-shadow:0 18px 40px #0000002e,0 4px 14px #00000014;margin-bottom:18px;overflow:hidden;position:relative}.cinematic-story-progress{display:flex;gap:6px;left:14px;position:absolute;right:14px;top:14px;z-index:5}.story-bar-track{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff2e;border-radius:999px;flex:1 1;height:4px;overflow:hidden}.story-bar-fill{background:linear-gradient(90deg,#fff5dc,#f0d49c,#c38b35);border-radius:999px;height:100%;transition:width .05s linear;width:0}.story-bar-fill.done{width:100%}.cinematic-slider-frame{aspect-ratio:4/5;position:relative;width:100%}.cinematic-slide,.cinematic-slider-frame{align-items:center;background:#111;display:flex;justify-content:center}.cinematic-slide{inset:0;opacity:0;position:absolute;transition:opacity .8s ease,visibility .8s ease;visibility:hidden}.cinematic-slide.active{opacity:1;visibility:visible;z-index:2}.cinematic-slide-image{animation:none!important;display:block;filter:saturate(1.02) contrast(1.01);height:100%;object-fit:contain;transform:none!important;width:100%}.kb-pan-1{animation-name:kenburns1}.kb-pan-2{animation-name:kenburns2}.kb-pan-3{animation-name:kenburns3}.kb-pan-4{animation-name:kenburns4}.kb-pan-5{animation-name:kenburns5}.kb-pan-6{animation-name:kenburns6}@keyframes kenburns1{0%{transform:scale(1.08) translateZ(0)}to{transform:scale(1.2) translate3d(-2%,-1.5%,0)}}@keyframes kenburns2{0%{transform:scale(1.08) translateZ(0)}to{transform:scale(1.2) translate3d(2%,-1.5%,0)}}@keyframes kenburns3{0%{transform:scale(1.08) translateZ(0)}to{transform:scale(1.18) translate3d(-1.8%,1.6%,0)}}@keyframes kenburns4{0%{transform:scale(1.08) translateZ(0)}to{transform:scale(1.18) translate3d(2%,1.2%,0)}}@keyframes kenburns5{0%{transform:scale(1.06) translate3d(-1%,0,0)}to{transform:scale(1.19) translate3d(1.8%,-1%,0)}}@keyframes kenburns6{0%{transform:scale(1.06) translate3d(1%,0,0)}to{transform:scale(1.19) translate3d(-1.8%,1.3%,0)}}.cinematic-overlay{background:linear-gradient(0deg,#0000004d,#00000008 35%,#00000014),linear-gradient(90deg,#0000001f,#0000 30%,#0000 70%,#0000001f);inset:0;pointer-events:none;position:absolute}.cinematic-caption{bottom:18px;left:18px;position:absolute;z-index:4}.cinematic-caption span{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff24;border:1px solid #ffffff2e;border-radius:999px;box-shadow:0 8px 20px #00000024;color:#fff;display:inline-flex;font-size:11px;letter-spacing:1.4px;padding:8px 14px}.cinematic-arrow{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff24;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 8px 18px #00000026;color:#fff;cursor:pointer;font-size:28px;height:44px;line-height:1;position:absolute;top:50%;transform:translateY(-50%);transition:all .25s ease;width:44px;z-index:5}.cinematic-arrow:hover{background:#ffffff38;transform:translateY(-50%) scale(1.05)}.cinematic-arrow-left{left:14px}.cinematic-arrow-right{right:14px}.cinematic-bottom-bar{bottom:14px;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;z-index:5}.cinematic-dots{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#14141433;border-radius:999px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:calc(100% - 100px);padding:8px 12px;pointer-events:auto}.cinematic-dot{background:#fff6;border:none;border-radius:999px;cursor:pointer;height:8px;padding:0;transition:all .25s ease;width:8px}.cinematic-dot.active{background:linear-gradient(90deg,#f0d49c,#b8893c);box-shadow:0 4px 12px #b8893c59;width:28px}.thumbnail-strip-wrapper{overflow:hidden}.thumbnail-strip{display:flex;gap:10px;overflow-x:auto;padding:6px 2px 4px;scrollbar-width:thin}.thumbnail-strip::-webkit-scrollbar{height:6px}.thumbnail-strip::-webkit-scrollbar-thumb{background:#b8893c59;border-radius:999px}.thumbnail-item{background:#fff;border:none;border-radius:16px;box-shadow:0 8px 18px #00000014;cursor:pointer;height:100px;min-width:78px;opacity:.78;overflow:hidden;padding:0;position:relative;transition:transform .25s ease,box-shadow .25s ease,opacity .25s ease;width:78px}.thumbnail-item:hover{opacity:1;transform:translateY(-2px)}.thumbnail-item.active{box-shadow:0 10px 24px #b8893c47;opacity:1;outline:2px solid #b8893c59}.thumbnail-image{display:block;height:100%;object-fit:cover;width:100%}.thumbnail-item:after{background:linear-gradient(0deg,#00000059,#0000 55%);content:"";inset:0;pointer-events:none;position:absolute}.thumbnail-index{bottom:8px;color:#fff;font-size:10px;font-weight:700;left:8px;letter-spacing:1px;position:absolute;z-index:2}.video-wrapper{padding-bottom:56.25%;position:relative;width:100%}.video-wrapper iframe,.video-wrapper>div{border:0;height:100%;inset:0;position:absolute;width:100%}.love-story{text-align:center}.story-title{color:#6b5b4b;font-size:32px;margin-bottom:40px}.timeline{margin:auto;max-width:700px;padding-left:30px;position:relative}.timeline:before{background:#d8c6b3;content:"";height:100%;left:15px;position:absolute;top:0;width:2px}.timeline-item{margin-bottom:40px;position:relative}.timeline-dot{background:#e86b43;border-radius:50%;height:18px;left:-3px;position:absolute;top:6px;width:18px}.timeline-content{background:#fff;border-radius:14px;box-shadow:0 6px 20px #00000014;padding:18px 20px;text-align:left}.timeline-content h3{color:#e86b43;margin:0}.story-date{color:#555;font-size:14px;line-height:1.8;text-align:left;white-space:normal}.details-content{color:#5d4037;line-height:1.6}.host-section{font-size:.95rem;margin-bottom:20px}.host-name{flex:1 1;text-align:center}.invitation-text{color:#8d6e63;font-family:Sarabun,sans-serif;font-size:1rem;margin:15px 0}.couple-names-detail{color:#d84315;font-size:1.1rem;font-weight:700;margin:15px 0}.detail-divider{border:0;border-top:1px dashed #d7ccc8;margin:20px auto;width:80%}.event-info-box{background:#fff9f6;border-radius:10px;margin-bottom:15px;padding:15px}.event-date{font-size:1.1rem;font-weight:700}.event-location{font-size:.9rem;margin-top:10px;opacity:.8}.theme-info{border-top:1px solid #efebe9;font-size:.9rem;padding-top:10px}.color-palette{display:flex;gap:10px;justify-content:center;margin-top:20px}.color-circle{border-radius:50%;box-shadow:0 2px 4px #0003;height:25px;width:25px}.gray-light{background-color:#d3d3d3}.blue-light{background-color:#add8e6}.blue-medium{background-color:#4169e1}.navy{background-color:navy}.countdown{display:flex;gap:14px;justify-content:center;margin-bottom:28px;margin-top:14px}.time-box{background:#fff;border-radius:12px;box-shadow:0 4px 10px #0000001a;min-width:60px;padding:10px 12px;text-align:center}.time-box span{display:block;font-size:20px;font-weight:700}.time-box small{color:#666;font-size:10px}.calendar-card{background:#fffaf4;border:1px solid #e3cdb3;border-radius:16px;padding:16px;text-align:center}.calendar-month{color:#f97316;font-size:16px;font-weight:700;letter-spacing:2px}.calendar-day{color:#111827;font-size:40px;font-weight:800}.calendar-year{color:#4b5563;font-size:16px;margin-bottom:8px}.calendar-btn{background:#3b82f6;border:none;border-radius:999px;color:#f9fafb;cursor:pointer;font-size:14px;font-weight:600;margin-top:14px;padding:10px 18px}.map-wrapper{height:220px;width:100%}.map-wrapper iframe{border:0;height:100%;width:100%}.map-btn{background:#334155;border:none;color:#e5e7eb;cursor:pointer;font-size:14px;font-weight:600;padding:10px 0;width:100%}.guestbook-section{padding:0 10px}.guestbook-card{background:linear-gradient(135deg,#fffaf4,#fff0e0);border:2px solid #caa35c;box-shadow:0 10px 25px #caa35c33}.wish-form{display:flex;flex-direction:column;gap:12px;margin-bottom:30px}.wish-input,.wish-textarea{border:1px solid #e3cdb3;border-radius:12px;font-family:Sarabun,sans-serif;outline:none;padding:12px 15px;transition:all .3s;width:100%}.wish-input:focus,.wish-textarea:focus{border-color:#e86b43;box-shadow:0 0 8px #e86b4333}.wish-textarea{height:100px;resize:none}.wish-submit-btn{background:linear-gradient(45deg,#e86b43,#f59e0b);border:none;border-radius:30px;box-shadow:0 4px 15px #e86b434d;color:#fff;cursor:pointer;font-weight:700;padding:12px;transition:transform .2s}.wish-submit-btn:active{transform:scale(.95)}.wishes-display{max-height:400px;overflow-y:auto;padding:5px;text-align:left}.wish-bubble{animation:slideIn .5s ease-out both;background:#fff;border-left:4px solid #caa35c;border-radius:18px 18px 18px 2px;box-shadow:0 4px 12px #0000000d;margin-bottom:15px;padding:15px}.wish-text{color:#5d4037;font-style:italic;margin:0}.wish-author{color:#e86b43;font-size:.85rem;font-weight:700;margin:8px 0 0}@keyframes slideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.wishes-table-container{background:#fff;border-radius:15px;margin:10px;overflow:hidden}.wishes-table{border-collapse:collapse;width:100%}.wishes-table th{background-color:#2c3e50;color:#fff;font-size:.9rem;padding:12px;text-align:left}.wishes-table td{border-bottom:1px solid #f0f0f0;font-size:.85rem;padding:12px;vertical-align:top}.wish-name-cell{color:#2c3e50;font-weight:700;width:30%}.wish-message-cell{color:#555;line-height:1.5;word-break:break-word}.pagination-controls{align-items:center;display:flex;gap:10px;justify-content:center;padding:15px}.paging-btn{background:#2c3e50;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:5px 12px}.paging-btn:disabled{background:#ccc}.page-number{color:#666;font-size:.85rem}.footer{color:#6b7280;font-size:20px;margin:16px 0;text-align:center}.viewer-count{color:#b8893c;font-weight:600;margin-bottom:10px;opacity:.8;text-align:center}@media (min-width:768px){.page{padding:32px 16px}.phone-frame{border-radius:32px;max-width:600px;padding:24px}.section-title{font-size:20px}}@media (min-width:1024px){.page{background-color:#fff;padding:40px 24px}.phone-frame{border-radius:36px;max-width:720px;padding:28px 32px}}@media (max-width:768px){.cinematic-slider-frame{aspect-ratio:4/5.3}.cinematic-arrow{font-size:24px;height:38px;width:38px}.cinematic-arrow-left{left:10px}.cinematic-arrow-right{right:10px}.cinematic-caption{bottom:56px;left:14px}.cinematic-caption span{font-size:10px;padding:7px 12px}.cinematic-dots{gap:7px;max-width:calc(100% - 32px);padding:8px 10px}.thumbnail-item{height:90px;min-width:68px;width:68px}.story-title{font-size:24px}.host-row{display:flex;gap:2px}}@media (max-width:480px){.cinematic-slider{border-radius:24px}.cinematic-slider-frame{aspect-ratio:4/5.6}.cinematic-dot.active{width:20px}.countdown{gap:8px}.time-box{min-width:52px;padding:8px 10px}}@media (prefers-reduced-motion:reduce){.card-main-wrap img,.cinematic-slide,.cinematic-slide-image,.cursor,.fade-image,.petal,.scrolldown-text{animation:none!important;transition:none!important}}.parallax-card{background:#fff;border-radius:24px;box-shadow:0 8px 18px #00000026;margin-bottom:16px;overflow:hidden;padding:10px;position:relative}.parallax-inner{align-items:center;background:#fffaf4;display:flex;justify-content:center;width:100%}.fade-image{opacity:0;transform:translateY(20px);transition:all .9s ease}.fb-gallery{grid-gap:8px;background:#fff;border-radius:22px;box-shadow:0 10px 24px #0000001f;display:grid;gap:8px;grid-template-columns:2fr 1fr;overflow:hidden;width:100%}.fb-gallery-main,.fb-gallery-side-item{background:#0000;border:none;cursor:pointer;margin:0;overflow:hidden;padding:0;position:relative}.fb-gallery-main{min-height:420px}.fb-gallery-side{grid-gap:8px;display:grid;gap:8px;grid-template-rows:repeat(3,1fr)}.fb-gallery-side-item{min-height:134px}.fb-gallery-image{display:block;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease;width:100%}.fb-gallery-main:hover .fb-gallery-image,.fb-gallery-side-item:hover .fb-gallery-image{filter:brightness(.96);transform:scale(1.04)}.lightbox-overlay{background:#000000e0;inset:0;padding:20px;position:fixed;z-index:9999}.lightbox-content,.lightbox-overlay{align-items:center;display:flex;justify-content:center}.lightbox-content{height:min(92vh,900px);position:relative;width:min(96vw,1100px)}.lightbox-image{background:#111;border-radius:16px;box-shadow:0 18px 50px #00000059;max-height:100%;max-width:100%;object-fit:contain}.lightbox-close{background:#ffffff29;font-size:28px;height:42px;right:0;top:-8px;width:42px}.lightbox-close,.lightbox-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:none;border-radius:50%;color:#fff;cursor:pointer;position:absolute}.lightbox-nav{background:#ffffff24;font-size:32px;height:46px;line-height:1;top:50%;transform:translateY(-50%);width:46px}.lightbox-nav-left{left:10px}.lightbox-nav-right{right:10px}.lightbox-counter{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border-radius:999px;bottom:-8px;color:#fff;font-size:13px;left:50%;letter-spacing:1px;padding:8px 14px;position:absolute;transform:translateX(-50%)}@media (max-width:768px){.fb-gallery{grid-template-columns:1fr}.fb-gallery-main{min-height:320px}.fb-gallery-side{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr}.fb-gallery-side-item{min-height:100px}.lightbox-content{height:80vh;width:100%}.lightbox-nav{font-size:28px;height:40px;width:40px}}
/*# sourceMappingURL=main.f5d5f22d.css.map*/