@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-primary: #8b6f47;--brand-bg: #faf7f2;--brand-text: #2d2a26;--line: color-mix(in srgb, var(--brand-text) 12%, transparent);--line-soft: color-mix(in srgb, var(--brand-text) 7%, transparent);--font-display: "Fraunces Variable", Georgia, serif;--font-body: "Inter Variable", -apple-system, sans-serif}*{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--brand-bg);color:var(--brand-text);min-height:100dvh;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2{font-family:var(--font-display);font-weight:560;letter-spacing:-.01em}.page{max-width:560px;margin:0 auto;padding:1.25rem 1.25rem calc(6rem + env(safe-area-inset-bottom))}.welcome{display:flex;flex-direction:column;align-items:center;gap:1.1rem;text-align:center;padding-top:9dvh;min-height:100dvh}.event-logo{max-width:110px;max-height:110px;object-fit:contain;border-radius:18px;background:#fff;padding:10px;box-shadow:0 2px 14px color-mix(in srgb,var(--brand-text) 10%,transparent)}.welcome .eyebrow{font-size:.72rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-primary)}.welcome h1{font-size:2.1rem;line-height:1.15}.welcome .flourish{width:48px;height:1px;background:var(--brand-primary);opacity:.5;position:relative}.welcome .flourish:after{content:"";position:absolute;left:50%;top:-2.5px;width:6px;height:6px;border-radius:50%;background:var(--brand-primary);transform:translate(-50%)}.welcome p.sub{opacity:.75;max-width:380px}.welcome.has-hero{padding-top:0}.hero{position:relative;width:calc(100% + 2.5rem);margin:0 -1.25rem;height:38dvh;min-height:220px;overflow:hidden}.hero img{width:100%;height:100%;object-fit:cover;display:block}.hero-fade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--brand-bg) 10%,transparent) 40%,var(--brand-bg) 100%)}.has-hero .event-logo{margin-top:-44px;position:relative;z-index:1}.countdown{display:inline-block;background:color-mix(in srgb,var(--brand-primary) 12%,transparent);color:var(--brand-primary);border:1px solid color-mix(in srgb,var(--brand-primary) 30%,transparent);font-size:.85rem;font-weight:650;padding:.3rem 1rem;border-radius:999px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--brand-primary);color:#fff;border:1px solid var(--brand-primary);border-radius:999px;padding:.95rem 2rem;font-family:var(--font-body);font-size:1rem;font-weight:600;letter-spacing:.01em;cursor:pointer;width:100%;max-width:320px;transition:filter .15s,transform .1s}.btn:hover:not(:disabled){filter:brightness(.92)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5}.btn-secondary{background:transparent;color:var(--brand-primary);border:1.5px solid color-mix(in srgb,var(--brand-primary) 55%,transparent)}.input{width:100%;max-width:320px;padding:.9rem 1.1rem;border:1.5px solid var(--line);border-radius:14px;font-family:var(--font-body);font-size:1rem;background:#fff;color:var(--brand-text);text-align:center;transition:border-color .15s,box-shadow .15s}.input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary) 18%,transparent)}.input::placeholder{color:color-mix(in srgb,var(--brand-text) 40%,transparent)}.rgpd{font-size:.72rem;opacity:.55;max-width:420px;line-height:1.45}.error{color:#a3402f;font-size:.9rem}.page-head{display:flex;flex-direction:column;gap:.1rem;padding:.35rem 0 .9rem}.page-head .eyebrow{font-size:.68rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-primary)}.page-head h1{font-size:1.45rem}.page-banner{position:relative;margin:0 0 1.1rem;height:120px;overflow:hidden;border-radius:16px;box-shadow:0 2px 12px color-mix(in srgb,var(--brand-text) 10%,transparent)}.page-banner img{width:100%;height:100%;object-fit:cover;display:block}.banner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#120f0cb8,#120f0c0d 65%)}.banner-text{position:absolute;left:1rem;right:1rem;bottom:.7rem}.banner-text .eyebrow{font-size:.62rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:#ffffffbf}.banner-text h1{font-size:1.35rem;color:#fff;line-height:1.2}.dropzone{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%;padding:1.6rem 1rem;border:1.5px dashed color-mix(in srgb,var(--brand-primary) 50%,transparent);border-radius:18px;background:color-mix(in srgb,var(--brand-primary) 6%,transparent);color:var(--brand-primary);font-family:var(--font-body);font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.dropzone:active{background:color-mix(in srgb,var(--brand-primary) 12%,transparent)}.dropzone .icon{font-size:1.7rem;line-height:1}.dropzone .hint{font-size:.75rem;font-weight:500;opacity:.7}.upload-item{display:flex;align-items:center;gap:.8rem;padding:.65rem 0;border-bottom:1px solid var(--line-soft)}.upload-item .meta{flex:1;min-width:0}.progress{height:4px;border-radius:2px;background:var(--line);overflow:hidden;margin-top:5px}.progress>div{height:100%;background:var(--brand-primary);transition:width .2s}.mine-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:.6rem}.mine-cell{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--line-soft)}.mine-cell img{width:100%;height:100%;object-fit:cover;display:block}.mine-cell .state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:600;color:color-mix(in srgb,var(--brand-text) 60%,transparent);text-align:center;padding:.4rem}.mine-cell .delete{position:absolute;top:5px;right:5px;width:27px;height:27px;border-radius:50%;border:none;background:#1412108c;color:#fff;font-size:.8rem;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mine-cell .duration{position:absolute;bottom:5px;right:5px;background:#1412108c;color:#fff;font-size:.62rem;font-weight:600;padding:2px 7px;border-radius:8px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:.4rem}.grid .cell{position:relative;aspect-ratio:1;overflow:hidden;border-radius:8px;background:var(--line-soft);border:none;padding:0;cursor:pointer}.grid .cell img{width:100%;height:100%;object-fit:cover;display:block}.badge{position:absolute;bottom:5px;right:5px;background:#1412108c;color:#fff;font-size:.62rem;font-weight:600;padding:2px 7px;border-radius:8px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c0b0af0;display:flex;align-items:center;justify-content:center;z-index:50;animation:fade-in .18s ease}@keyframes fade-in{0%{opacity:0}}.lightbox img,.lightbox video{max-width:100vw;max-height:100dvh;object-fit:contain}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:none;background:#ffffff1f;color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding-bottom:4px}.lightbox-nav.prev{left:.75rem}.lightbox-nav.next{right:.75rem}.lightbox-caption{position:absolute;bottom:calc(1.1rem + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);color:#ffffffd9;font-size:.82rem;font-weight:550;background:#ffffff1a;padding:.35rem .9rem;border-radius:999px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap}.lightbox .close{position:absolute;top:calc(.75rem + env(safe-area-inset-top));right:.9rem;width:38px;height:38px;border-radius:50%;color:#fff;font-size:1.1rem;background:#ffffff1f;border:none;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.tabbar{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:.4rem;background:color-mix(in srgb,var(--brand-bg) 80%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line-soft);padding:.55rem 1rem calc(.55rem + env(safe-area-inset-bottom));z-index:40}.tabbar a{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:92px;padding:.45rem 1.1rem;border-radius:14px;text-decoration:none;color:color-mix(in srgb,var(--brand-text) 55%,transparent);font-size:.72rem;font-weight:600;transition:color .15s,background .15s}.tabbar a svg{width:21px;height:21px}.tabbar a.active{color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 10%,transparent)}.thanks{background:color-mix(in srgb,var(--brand-primary) 8%,transparent);border:1px solid color-mix(in srgb,var(--brand-primary) 25%,transparent);border-radius:16px;padding:1.1rem;text-align:center;margin-top:1.1rem;animation:fade-in .25s ease}.thanks strong{color:var(--brand-primary)}.provider-footer{margin-top:2.75rem;padding-top:1.4rem;border-top:1px solid var(--line-soft);text-align:center}.provider-card{display:inline-flex;align-items:center;gap:.9rem;text-align:left}.provider-logo{width:48px;height:48px;object-fit:cover;border-radius:50%;background:#fff;border:1px solid var(--line-soft)}.provider-caption{display:block;font-size:.66rem;text-transform:uppercase;letter-spacing:.09em;opacity:.55;font-weight:600}.provider-name{font-family:var(--font-display);font-size:1.05rem;font-weight:600}.provider-links{display:flex;gap:.9rem;margin-top:.15rem;font-size:.78rem}.provider-links a{color:var(--brand-primary);text-decoration:none;font-weight:600}.center{display:flex;flex-direction:column;align-items:center;gap:1rem;padding-top:18dvh;text-align:center;padding-left:1.25rem;padding-right:1.25rem}.center h1{font-size:1.6rem}h2.section{font-size:1.05rem;margin:1.4rem 0 .3rem}.skeleton{border-radius:10px;background:linear-gradient(100deg,var(--line-soft) 40%,var(--line) 50%,var(--line-soft) 60%);background-size:200% 100%;opacity:0;animation:shimmer 1.4s infinite,skeleton-appear .2s ease .25s forwards}@keyframes shimmer{to{background-position:-200% 0}}@keyframes skeleton-appear{to{opacity:1}}
