:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;color:#161616;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;-webkit-text-size-adjust:100%;width:100%;min-width:100%;min-height:100%;margin:0;padding:0;background:#fff!important}body{width:100%;min-width:100%;min-height:100%;margin:0;padding:0;overflow-x:hidden;color:#161616!important;background:#fff!important}#root{background:#fff;width:100%;min-height:100dvh;margin:0;padding:0}button,input,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}img{max-width:100%}*{box-sizing:border-box}@media (prefers-color-scheme:dark){:root,html,body,#root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;color:#161616!important;background:#fff!important}}.publicApp{color:#161616;background:#fff;width:100%;min-height:100dvh;overflow-x:hidden}.introImageWrapper{justify-content:center;align-items:center;width:min(100%,620px);height:100%;display:flex}.introImage{object-fit:contain;width:100%;max-width:620px;max-height:88dvh;animation:1s cubic-bezier(.16,1,.3,1) both introImageAppear;display:block}@keyframes introAppear{0%{opacity:0}to{opacity:1}}@keyframes introImageAppear{0%{opacity:0;transform:scale(.94)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.homeScreen{background:#fff;width:100vw;height:100dvh;animation:.9s cubic-bezier(.16,1,.3,1) both homeAppear;position:relative;overflow:hidden}.homeBackgroundImage{object-fit:cover;object-position:center center;background:#fff;width:100%;height:100%;animation:1.1s cubic-bezier(.16,1,.3,1) both homeImageAppear;display:block;position:absolute;inset:0}.homeMenuOverlay{z-index:2;padding:max(24px, env(safe-area-inset-top)) max(22px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(22px, env(safe-area-inset-left));justify-content:center;align-items:center;animation:.9s cubic-bezier(.16,1,.3,1) both menuOverlayAppear;display:flex;position:absolute;inset:0}.homeMenuActions{flex-direction:column;justify-content:center;align-items:center;gap:6px;width:min(88vw,520px);animation:.9s cubic-bezier(.16,1,.3,1) both menuButtonsAppear;display:flex;transform:translateY(40px)}.homeImageButton{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;outline:0;width:100%;margin:0;padding:0;transition:transform .25s,filter .25s;display:block}.homeImageButtonImg{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.homeInstagramLink{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-content:center;align-items:center;width:85px;height:85px;margin-top:24px;text-decoration:none;transition:transform .22s,filter .22s;animation:1.8s ease-in-out infinite instagramPulse;display:flex}@keyframes instagramPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.75;transform:scale(1.1)}}.homeInstagramLogo{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block}.homeInstagramLink:hover{filter:brightness(1.05);transform:scale(1.08)}.homeInstagramLink:active{transform:scale(.94)}.homeImageButton:hover{filter:brightness(1.04);transform:translateY(-3px)scale(1.015)}.homeImageButton:active{transform:scale(.97)}@keyframes homeAppear{0%{opacity:0}to{opacity:1}}@keyframes homeImageAppear{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes menuOverlayAppear{0%{opacity:0}to{opacity:1}}@keyframes menuButtonsAppear{0%{opacity:0;transform:translateY(64px)scale(.97)}to{opacity:1;transform:translateY(40px)scale(1)}}@media (width<=520px){.homeMenuOverlay{padding:max(18px, env(safe-area-inset-top)) 14px max(18px, env(safe-area-inset-bottom))}.homeMenuActions{gap:5px;width:min(92vw,480px)}.homeInstagramLink{width:78px;height:78px;margin-top:22px}}@media (width<=360px){.homeMenuActions{gap:9px;width:94vw}.homeInstagramLink{width:70px;height:70px;margin-top:18px}}.menuScreen{width:100%;min-height:100dvh;padding:max(32px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(32px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));background:#fff;justify-content:center;align-items:center;animation:.75s cubic-bezier(.16,1,.3,1) both screenEnter;display:flex}.menuContent{width:min(100%,520px)}.menuBrand{text-align:center;margin-bottom:clamp(36px,8vh,72px)}.menuEyebrow{color:#d66b21;letter-spacing:.2em;margin-bottom:12px;font-size:12px;font-weight:800;display:block}.menuBrand h1{color:#161616;letter-spacing:-.055em;margin:0;font-size:clamp(42px,12vw,68px);line-height:.96}.menuBrand p{color:#6c6c6c;max-width:390px;margin:22px auto 0;font-size:clamp(15px,4vw,18px);line-height:1.6}.menuActions{flex-direction:column;gap:14px;display:flex}.mainMenuButton{text-align:left;cursor:pointer;border-radius:22px;align-items:center;gap:16px;width:100%;min-height:88px;padding:18px;transition:transform .25s,box-shadow .25s;display:flex}.mainMenuButton:active{transform:scale(.98)}.mainMenuButtonPrimary{color:#fff;background:#161616;border:1px solid #161616;box-shadow:0 14px 34px #00000024}.mainMenuButtonSecondary{color:#161616;background:#fff;border:1px solid #e8e8e8;box-shadow:0 10px 30px #0000000f}.mainMenuIcon{background:#ffffff1f;border-radius:14px;flex:none;place-items:center;width:44px;height:44px;font-size:21px;display:grid}.mainMenuButtonSecondary .mainMenuIcon{background:#f4f4f4}.mainMenuButtonText{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.mainMenuButtonText strong{font-size:16px}.mainMenuButtonText small{color:inherit;opacity:.65;font-size:12px}.mainMenuArrow{flex:none;font-size:22px;transition:transform .25s}.mainMenuButton:hover .mainMenuArrow{transform:translate(4px)}.aboutScreen{width:100%;min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(40px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));background:#fff;animation:.65s cubic-bezier(.16,1,.3,1) both screenEnter;position:relative}.aboutBackButton{z-index:5;top:max(16px, env(safe-area-inset-top));color:#154c55;-webkit-backdrop-filter:blur(8px);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffffe0;border:1px solid #ffffffbf;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;font-size:22px;font-weight:800;display:grid;position:absolute;left:clamp(12px,4vw,26px);box-shadow:0 6px 18px #0000001f}.aboutContent{width:min(100%,640px);margin:clamp(50px,8vh,90px) auto 0}.aboutLogoWrapper{justify-content:center;align-items:center;width:100%;margin-bottom:18px;display:flex}.aboutLogo{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:min(42vw,220px);height:auto;display:block}.aboutContent h1{color:#161616;letter-spacing:-.05em;text-align:center;max-width:570px;margin:0 auto;font-size:clamp(38px,9vw,62px);line-height:1}.aboutLead{color:#666;text-align:center;max-width:520px;margin:24px auto 42px;font-size:17px;line-height:1.65}.aboutSteps{flex-direction:column;display:flex}.aboutStep{border-bottom:1px solid #ededed;grid-template-columns:52px 1fr;gap:16px;padding:22px 0;display:grid}.aboutStepNumber{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;place-self:start center;width:50px;max-width:none;height:50px;margin-top:0;display:block}.aboutStep h2{color:#161616;margin:0 0 6px;font-size:18px}.aboutStep p{color:#777;margin:0;font-size:14px;line-height:1.55}.aboutFooterContent{flex-direction:column;align-items:center;width:100%;margin-top:32px;display:flex}.aboutFooterImage{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:min(100%,620px);height:auto;margin:0 auto;display:block}.aboutFooterText{color:#161616;text-align:center;width:100%;margin-top:26px}.aboutFooterText p{text-align:center;margin-left:auto;margin-right:auto}.aboutFooterTextIntro{margin-top:0;margin-bottom:42px;font-size:clamp(17px,4vw,22px);font-weight:750;line-height:1.35}.aboutFooterTextMain{margin-top:0;margin-bottom:38px;font-size:clamp(17px,4vw,22px);font-weight:750;line-height:1.35}.aboutFooterTextMain strong{font-weight:900}.aboutFooterTextEnd{color:#555;margin-top:0;margin-bottom:0;font-size:clamp(15px,3.6vw,19px);font-weight:700;line-height:1.4}.aboutGalleryButton{color:#fff;cursor:pointer;background:#161616;border:0;border-radius:999px;justify-content:space-between;align-items:center;width:100%;margin-top:34px;padding:17px 20px;font-weight:750;display:flex}.galleryScreen{background-color:#fff;background-image:url(/fondo-pantalla-dos-tropi.webp);background-position:top;background-repeat:no-repeat;background-size:100%;width:100%;min-height:100dvh;animation:.65s cubic-bezier(.16,1,.3,1) both screenEnter}.galleryHeroVisual{background:0 0;width:min(100%,853px);height:min(158vw,1340px);margin:0 auto;position:relative;overflow:visible}.galleryHeroBackground{z-index:0;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block;position:absolute;top:0;left:0}.galleryBackButton{z-index:5;top:max(16px, env(safe-area-inset-top));color:#154c55;-webkit-backdrop-filter:blur(8px);cursor:pointer;background:#ffffffd1;border:1px solid #ffffffbf;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;font-size:22px;font-weight:800;display:grid;position:absolute;left:clamp(12px,4vw,26px);box-shadow:0 6px 18px #0000001f}.galleryHeroOverlay{z-index:3;flex-direction:column;align-items:center;width:100%;padding:0 clamp(14px,4vw,30px);display:flex;position:absolute;top:min(96vw,820px);left:50%;transform:translate(-50%)}.galleryHeroOverlayVideos{margin-top:16px}.galleryUploadImageButton{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;width:min(68%,520px);margin:0;padding:0;transition:transform .22s,filter .22s;display:block}.galleryUploadImageButton img.galleryUploadVideoImage{width:80%;margin-left:auto;margin-right:auto}.galleryUploadImageButton img.todoAddContentImage{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:85%;height:auto;margin-left:auto;margin-right:auto;display:block}.galleryUploadImageButton:hover{filter:brightness(1.04);transform:scale(1.025)}.galleryUploadImageButton:active{transform:scale(.96)}.galleryClosedMessage{color:#666;background:#ffffffed;border-radius:999px;padding:13px 20px;font-size:clamp(12px,3.5vw,15px);font-weight:700;box-shadow:0 8px 24px #0000001a}.galleryDecorativeHeader{justify-content:space-between;align-items:center;gap:clamp(10px,3vw,24px);width:100%;margin-top:clamp(16px,3.5vw,28px);display:flex}.galleryDecorativeTitle{object-fit:contain;object-position:left center;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:min(47%,330px);height:auto;display:block}.galleryPhotoCount{color:#fff;letter-spacing:.01em;white-space:nowrap;background:linear-gradient(135deg,#ff8a00 0%,#ff3d7f 55%,#7b2cff 100%);border:2px solid #fff;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:82px;min-height:44px;padding:10px 16px;font-size:clamp(14px,3.6vw,17px);font-weight:900;display:flex;box-shadow:0 6px 18px #ff3d7f40,0 2px 6px #00000024}.mediaTabs{-webkit-backdrop-filter:blur(8px);background:#ffffffe6;border:1px solid #ffffffd9;border-radius:999px;grid-template-columns:1fr 1fr 1.25fr;gap:6px;width:min(100%,650px);margin:0 auto 20px;padding:5px;display:grid;box-shadow:0 8px 24px #0000001a,0 2px 7px #ff3d7f1f}.todoGamesTabIcon{object-fit:contain;pointer-events:none;flex:none;width:25px;height:25px;display:block}.mediaTab{color:#154c55;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px 18px;font-size:15px;font-weight:850;transition:transform .18s,background .18s,color .18s,box-shadow .18s;display:flex}.mediaTab.isActive{color:#fff;background:linear-gradient(135deg,#ff8a00 0%,#ff3d7f 55%,#7b2cff 100%);box-shadow:0 5px 14px #ff3d7f40}.mediaTab:active{transform:scale(.97)}.mediaTabIcon{font-size:18px;line-height:1}.videoCard{aspect-ratio:3/4;background:#111;border-radius:20px;width:100%;position:relative;overflow:hidden;box-shadow:0 10px 26px #00000024}.videoThumbnailButton{cursor:pointer;-webkit-tap-highlight-color:transparent;background:#111;border:0;outline:0;width:100%;height:100%;margin:0;padding:0;display:block;position:absolute;inset:0;overflow:hidden}.galleryVideo{object-fit:cover;object-position:center center;background:#111;border:0;width:100%;height:100%;display:block}.expandVideoButton{z-index:5;color:#fff;-webkit-backdrop-filter:blur(6px);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#00000094;border:2px solid #ffffffd9;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;font-family:Arial,sans-serif;font-size:21px;font-weight:700;line-height:1;transition:transform .2s,background .2s;display:grid;position:absolute;top:12px;right:12px;box-shadow:0 5px 14px #00000038}.videoPlayPauseButton{z-index:6;-webkit-backdrop-filter:blur(8px);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#0f0f0f94;border:1.5px solid #ffffffeb;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;padding:0;transition:transform .18s,background .18s,box-shadow .18s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 20px #0000004d,inset 0 0 0 1px #ffffff14}.videoPlayIcon{pointer-events:none;border-top:9px solid #0000;border-bottom:9px solid #0000;border-left:15px solid #fff;width:0;height:0;margin-left:4px}.videoPauseIcon{pointer-events:none;justify-content:center;align-items:center;gap:5px;display:flex}.videoPauseIcon span{background:#fff;border-radius:2px;width:5px;height:18px}.videoPlayPauseButton:hover{background:#0a0a0ac2;box-shadow:0 8px 24px #00000057,inset 0 0 0 1px #ffffff1a}.videoThumbnailButton:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#00000008,#0000001a);position:absolute;inset:0}.videoPlayPauseButton:active{background:#0a0a0ad1;transform:translate(-50%,-50%)scale(.91)}.expandVideoButton:hover{background:#000000c7;transform:scale(1.08)}.expandVideoButton:active{transform:scale(.92)}.previewVideo{background:#000}.videoUploadInfo{color:#777;text-align:right;margin-top:7px;font-size:12px;font-weight:600}.gallerySection{z-index:5;width:min(1180px,100% - 32px);padding:22px 0 max(72px, env(safe-area-inset-bottom));background:0 0;margin:10px auto 0;position:relative}.gallery{background:0 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.galleryStateMessage{color:#777;text-align:center;grid-column:1/-1;margin:20px 0}@keyframes screenEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=800px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}@media (width<=520px){.menuScreen{align-items:stretch}.menuContent{min-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 64px);flex-direction:column;justify-content:center;display:flex}.menuBrand{margin-bottom:40px}.mainMenuButton{border-radius:20px;min-height:82px}.galleryTopBar{width:calc(100% - 28px)}.galleryHeroVisual{height:145vw}.gallerySection{background:0 0;width:calc(100% - 20px);padding-top:14px}.gallery{gap:9px}.galleryUploadImageButton{width:min(72%,430px)}.galleryDecorativeHeader{margin-top:16px}.galleryDecorativeTitle{width:48%}.galleryPhotoCount{min-width:76px;min-height:40px;padding:8px 13px;font-size:14px}.flipCardFront,.flipCardBack{border-radius:15px}.flipHint{padding:6px 9px;font-size:10px;bottom:9px}.modalOverlay{width:100%;height:100%;padding:max(16px, env(safe-area-inset-top)) 12px max(16px, env(safe-area-inset-bottom)) 12px;overscroll-behavior:none;touch-action:auto;justify-content:center;align-items:center;overflow:hidden}.sourceModal,.uploadModal{border-radius:22px;width:min(92vw,480px)}.expandPhotoButton{width:34px;height:34px;font-size:19px;top:8px;right:8px}.photoViewerOverlay{width:100%;height:100%;padding:max(10px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left));overscroll-behavior:none;touch-action:none;overflow:hidden}.photoViewerImage{border-radius:4px;max-width:100%;max-height:100%}.uploadModal{max-height:calc(100dvh - max(16px, env(safe-area-inset-top)) - max(16px, env(safe-area-inset-bottom)));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px;overflow:hidden auto}.previewImage{max-height:38dvh}.descriptionInput{resize:vertical;min-height:86px}.confirmUploadButton{padding:13px 18px}.aboutContent{width:100%;margin-top:62px}.aboutLogo{width:min(46vw,180px)}.aboutContent h1{font-size:clamp(36px,10vw,48px)}.aboutLead{margin-top:18px;margin-bottom:30px;font-size:15px}.aboutStep{grid-template-columns:52px 1fr;gap:12px;padding:18px 0}.aboutStepNumber{width:50px;max-width:none;height:50px}.aboutStep h2{font-size:17px}.aboutStep p{font-size:13px}.memoryDescription,.memoryDivider{display:none}.flipCardBack{padding:18px}.memoryDate{text-align:center;font-size:14px}.flipBackHint{bottom:14px}.photoViewerDescription{left:50%;right:auto;bottom:max(12px, env(safe-area-inset-bottom));z-index:5001;color:#fff;-webkit-backdrop-filter:blur(10px);text-align:center;background:#000000ad;border-radius:0 0 18px 18px;width:min(92%,520px);max-width:520px;max-height:none;padding:14px 18px 18px;position:absolute;overflow:hidden;transform:translate(-50%)}.photoViewerDescriptionText{text-align:left;overflow-wrap:anywhere;word-break:break-word;width:100%;font-size:15px;line-height:1.55}.photoViewerDescriptionToggle{color:#fff;-webkit-backdrop-filter:blur(8px);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#141414b8;border:1px solid #ffffff8c;border-radius:999px;font-size:12px;font-weight:700}.photoViewerDescriptionToggle.isOpen{width:fit-content;margin:0 auto 8px;padding:7px 16px;display:block;position:relative;top:auto;right:auto}.photoViewerDescriptionToggle.isClosed{z-index:5002;right:max(14px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));padding:10px 15px;position:absolute;box-shadow:0 5px 16px #0000003d}.mediaTabs{width:100%;margin-bottom:14px}.mediaTab{min-height:44px;padding:9px 12px;font-size:14px}.videoCard{border-radius:16px}.expandVideoButton{width:34px;height:34px;font-size:19px;top:8px;right:8px}.videoPlayPauseButton{width:54px;height:54px}.videoPlayIcon{border-top-width:8px;border-bottom-width:8px;border-left-width:13px;margin-left:3px}.videoPauseIcon{gap:4px}.videoPauseIcon span{width:4px;height:16px}.todoGamesTabIcon{width:21px;height:21px}.videoRecorderModal{width:100%;max-height:calc(100dvh - max(24px, env(safe-area-inset-top)) - max(24px, env(safe-area-inset-bottom)));border-radius:20px}.videoRecorderPreview{object-fit:cover;width:100%;height:min(72dvh,560px)}.videoRecorderTime{bottom:calc(86px + env(safe-area-inset-bottom));font-size:13px}.videoRecordButton{bottom:calc(18px + env(safe-area-inset-bottom));min-width:128px;height:52px;font-size:15px}}@media (width<=360px){.mainMenuButton{padding:14px}.mainMenuIcon{width:38px;height:38px}.mainMenuButtonText strong{font-size:14px}.galleryHeroVisual{height:140vw}.gallerySection{background:0 0;width:calc(100% - 16px);padding-top:10px}.galleryHeroOverlay{padding-left:10px;padding-right:10px}.galleryUploadImageButton{width:76%}.galleryDecorativeTitle{width:48%}.galleryDecorativeHeader{gap:7px}.galleryPhotoCount{min-width:68px;min-height:36px;padding:7px 10px;font-size:12px}.memoryDate{font-size:12px}.photoViewerDescription{border-radius:0 0 16px 16px;width:94%;max-height:none;padding:12px 14px 14px;left:50%;right:auto;overflow:hidden;transform:translate(-50%)}.photoViewerDescriptionText{text-align:center;margin-top:8px;font-size:13px;line-height:1.45}.photoViewerDescriptionToggle.isOpen{margin:0 auto 7px;padding:6px 12px;font-size:11px;top:auto;right:auto}.photoViewerDescriptionToggle.isClosed{padding:9px 12px;font-size:11px;right:10px}.uploadModal{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:14px;overflow:hidden auto}.previewImage{max-height:38dvh}.descriptionInput{resize:vertical;min-height:86px}.mediaTabs{gap:4px;width:100%;margin-bottom:12px;padding:4px}.mediaTab{gap:5px;min-height:40px;padding:8px;font-size:12px}.mediaTabIcon{font-size:15px}.videoCard{border-radius:14px}.expandVideoButton{width:32px;height:32px;font-size:18px;top:7px;right:7px}.videoPlayPauseButton{width:48px;height:48px}.videoPlayIcon{border-top-width:7px;border-bottom-width:7px;border-left-width:12px;margin-left:3px}.videoPauseIcon{gap:4px}.videoPauseIcon span{width:4px;height:14px}.todoGamesTabIcon{width:18px;height:18px}.mediaTab{font-size:11px}.videoRecorderModal{border-radius:16px}.videoRecorderPreview{height:70dvh}.videoRecorderTime{bottom:calc(78px + env(safe-area-inset-bottom));padding:6px 11px;font-size:12px}.videoRecordButton{bottom:calc(14px + env(safe-area-inset-bottom));min-width:118px;height:48px;padding:0 16px;font-size:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.photoCard{position:relative}.flipCard{aspect-ratio:3/4;perspective:1200px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;outline:0;width:100%;padding:0;position:relative}.flipCardInner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.7,.2,1);position:relative}.flipCard.isFlipped .flipCardInner{transform:rotateY(180deg)}.flipCardFront,.flipCardBack{backface-visibility:hidden;border-radius:22px;position:absolute;inset:0;overflow:hidden;box-shadow:0 12px 30px #00000014}.flipCardFront{background:#fff}.flipCardFront img{object-fit:cover;width:100%;height:100%;display:block}.expandPhotoButton{z-index:5;color:#fff;-webkit-backdrop-filter:blur(6px);cursor:pointer;background:#00000094;border:2px solid #ffffffd9;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;font-family:Arial,sans-serif;font-size:21px;font-weight:700;line-height:1;transition:transform .2s,background .2s;display:grid;position:absolute;top:12px;right:12px;box-shadow:0 5px 14px #00000038}.expandPhotoButton:hover{background:#000000c7;transform:scale(1.08)}.expandPhotoButton:active{transform:scale(.92)}.flipHint{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000094;border-radius:999px;width:max-content;max-width:calc(100% - 24px);padding:8px 12px;font-size:12px;font-weight:700;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.flipCardBack{color:#161616;text-align:center;background:radial-gradient(circle at top,#ffc75f33,#0000 42%),#fffaf0;flex-direction:column;justify-content:center;align-items:center;padding:26px;display:flex;transform:rotateY(180deg)}.memoryDate{letter-spacing:.03em;font-size:16px;font-weight:800}.memoryDivider{background:#d66b21;border-radius:999px;width:42px;height:2px;margin:18px 0}.memoryDescription{margin:0;font-size:18px;line-height:1.5}.memoryDescription.empty{color:#999;font-style:italic}.flipBackHint{color:#999;font-size:12px;position:absolute;bottom:18px}.modalOverlay{z-index:1000;-webkit-backdrop-filter:blur(5px);overscroll-behavior:none;touch-action:auto;background:#000000b8;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;display:flex;position:fixed;inset:0;overflow:hidden}.videoRecorderModal{background:#111;border-radius:24px;flex-direction:column;align-items:center;width:min(100%,520px);max-height:calc(100dvh - 32px);display:flex;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000061}.videoRecorderPreview{object-fit:cover;background:#000;width:100%;height:min(68dvh,620px);display:block}.videoRecorderTime{z-index:5;color:#fff;white-space:nowrap;-webkit-backdrop-filter:blur(7px);background:#0000009e;border-radius:999px;padding:7px 13px;font-size:14px;font-weight:800;position:absolute;bottom:88px;left:50%;transform:translate(-50%)}.videoRecordButton{z-index:6;color:#fff;-webkit-backdrop-filter:blur(8px);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#000000ad;border:2px solid #fffffff2;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-width:132px;height:54px;padding:0 20px;font-size:16px;font-weight:850;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 7px 22px #00000052}.videoRecordButton:active{transform:translate(-50%)scale(.94)}.videoRecorderModal .closeButton{z-index:10;color:#fff;-webkit-backdrop-filter:blur(7px);background:#0000009e;border:1px solid #ffffffb3;top:12px;right:12px}.uploadModal{width:min(92vw,480px);max-height:calc(100dvh - max(24px, env(safe-area-inset-top)) - max(24px, env(safe-area-inset-bottom)));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;background:#fff;border-radius:24px;padding:24px;position:relative;overflow:hidden auto;box-shadow:0 30px 80px #00000040}.uploadModal h2{margin-top:0;margin-bottom:18px}.closeButton{cursor:pointer;background:#efefef;border:0;border-radius:50%;width:36px;height:36px;font-size:24px;position:absolute;top:14px;right:16px}.previewImage{object-fit:cover;border-radius:18px;width:100%;max-height:min(42dvh,420px);display:block}.descriptionLabel{justify-content:space-between;margin-top:20px;margin-bottom:8px;font-weight:700;display:flex}.descriptionLabel span{color:#999;font-size:13px;font-weight:500}.descriptionInput{resize:vertical;width:100%;min-height:100px;font:inherit;border:1px solid #ddd;border-radius:14px;padding:14px}.characterCount{text-align:right;color:#999;margin-top:5px;font-size:12px}.confirmUploadButton{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff8a00 0%,#ff3d7f 55%,#7b2cff 100%);border:2px solid #fff;border-radius:999px;width:100%;margin-top:18px;padding:15px 20px;font-family:Pacifico,cursive;font-size:17px;font-weight:400;transition:transform .2s,filter .2s;box-shadow:0 7px 20px #ff3d7f47,0 2px 7px #00000026}.confirmUploadButton:hover{filter:brightness(1.05)}.confirmUploadButton:active{transform:scale(.97)}.sourceModal{background:#fff;border-radius:24px;width:min(100%,420px);padding:28px;box-shadow:0 30px 80px #00000040}.sourceModal h2{margin:0;font-size:26px}.sourceSubtitle{color:#777;margin:8px 0 24px}.sourceButton{color:#161616;text-align:left;cursor:pointer;background:#fafafa;border:1px solid #e5e5e5;border-radius:16px;align-items:center;gap:16px;width:100%;margin-bottom:12px;padding:17px;transition:transform .2s,background .2s;display:flex}.sourceButton:hover{background:#f3f3f3;transform:translateY(-2px)}.sourceIcon{font-size:28px}.sourceButton span:last-child{flex-direction:column;gap:3px;display:flex}.sourceButton strong{font-size:15px}.sourceButton small{color:#888;font-size:13px}.cancelSourceButton{color:#777;cursor:pointer;background:0 0;border:0;width:100%;margin-top:8px;padding:13px;font-weight:600}.loadMoreContainer{justify-content:center;margin-top:32px;display:flex}.loadMoreButton{color:#fff;cursor:pointer;background:#161616;border:0;border-radius:999px;padding:14px 24px;font-weight:700}.loadMoreButton:disabled{opacity:.5;cursor:default}.eventClosedMessage{color:#666;background:#ececec;border-radius:999px;margin-top:30px;padding:14px 20px;font-weight:700;display:inline-block}.adminLoginCard button{color:#fff;background:#161616;border:0;border-radius:999px;width:100%;padding:14px;font-weight:700}.adminStatus{background:#fff;border-radius:14px;margin:25px 0;padding:16px}.adminPhoto img{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}@media (width<=650px){.adminHeader{flex-direction:column;align-items:flex-start}}.adminLogin{background:#f5f4f1;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.adminLoginCard{background:#fff;border-radius:24px;width:min(100%,420px);padding:32px;box-shadow:0 20px 60px #0000001f}.adminLoginCard h1{margin-top:0}.adminLoginCard input{border:1px solid #ddd;border-radius:12px;width:100%;margin:20px 0 12px;padding:14px}.adminLoginCard button{color:#fff;cursor:pointer;background:#161616;border:0;border-radius:999px;width:100%;padding:14px;font-weight:700}.adminPage{width:min(1200px,100% - 32px);margin:0 auto;padding:40px 0 80px}.adminHeader{justify-content:space-between;align-items:center;gap:20px;display:flex}.adminHeader h1{margin:0}.adminLogoutButton{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:999px;padding:11px 18px}.adminStatusCard{background:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin:32px 0;padding:22px;display:flex}.adminStatusCard>div{flex-direction:column;gap:5px;display:flex}.adminStatusCard span{color:#777;font-size:13px}.adminStatusCard strong{font-size:20px}.closeEventButton,.openEventButton{cursor:pointer;border:0;border-radius:999px;padding:13px 20px;font-weight:700}.closeEventButton{color:#9d2020;background:#ffe5e5}.openEventButton{color:#237231;background:#e2f6e7}.adminPhotosHeader{justify-content:space-between;align-items:end;margin-bottom:18px;display:flex}.adminPhotosHeader h2{margin:0}.adminPhotosHeader span{color:#777}.adminGallery{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;display:grid}.adminPhoto{background:#fff;border-radius:18px;overflow:hidden}.adminPhoto img,.adminPhoto video{aspect-ratio:3/4;object-fit:cover;background:#000;width:100%;display:block}.adminStatusActions{flex-direction:column;align-items:stretch;gap:10px;display:flex}.adminTodoUploadButton{color:#fff;cursor:pointer;background:#161616;border:0;border-radius:999px;padding:13px 20px;font-weight:700}.adminTodoUploadButton:hover{opacity:.9}.adminTodoUploadButton:disabled{opacity:.55;cursor:not-allowed}.adminSection{margin-top:42px}.adminPhotoInfo{padding:14px}.adminPhotoInfo span{color:#777;font-size:12px}.adminPhotoInfo p{margin:8px 0}.adminPhotoInfo button{color:#9d2020;cursor:pointer;background:#ffeaea;border:0;border-radius:10px;width:100%;margin-top:10px;padding:10px}@media (width<=650px){.adminHeader,.adminStatusCard{flex-direction:column;align-items:flex-start}}.photoViewerOverlay{z-index:5000;width:100%;height:100%;padding:max(18px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));overscroll-behavior:none;touch-action:none;background:#000000f5;justify-content:center;align-items:center;animation:.25s both photoViewerAppear;display:flex;position:fixed;inset:0;overflow:hidden}.photoViewerImage{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.photoViewerClose{top:max(14px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));z-index:5002;color:#fff;-webkit-backdrop-filter:blur(8px);cursor:pointer;background:#141414b3;border:1px solid #ffffff73;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;font-size:30px;font-weight:300;line-height:1;display:grid;position:absolute}.photoViewerDescription{left:50%;bottom:max(12px, env(safe-area-inset-bottom));z-index:5001;color:#fff;-webkit-backdrop-filter:blur(10px);text-align:center;background:#000000ad;border-radius:0 0 18px 18px;width:min(92%,520px);max-width:520px;max-height:none;padding:14px 18px 18px;position:absolute;overflow:hidden;transform:translate(-50%)}.photoViewerDescriptionText{text-align:center;overflow-wrap:anywhere;word-break:break-word;width:100%;margin:10px 0 0;font-size:15px;line-height:1.5}@keyframes photoViewerAppear{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.sourceModalImage{background:0 0;border-radius:28px;width:min(92vw,430px);animation:.3s modalAppear;position:relative;overflow:hidden}.sourceModalBackground{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.sourceModalImageActions{flex-direction:column;align-items:center;gap:5px;width:78%;display:flex;position:absolute;top:34%;left:50%;transform:translate(-50%)}.sourceModalVideoActions{top:45%}.sourceImageButton img.sourceVideoCameraImage{width:97%;margin-left:auto;margin-right:auto}.sourceImageButton{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;outline:0;width:100%;margin:0;padding:0;transition:transform .2s,filter .2s;display:block}.sourceImageButton img{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.sourceImageButton:hover{filter:brightness(1.03);transform:scale(1.02)}.sourceImageButton:active{transform:scale(.97)}.sourceImageCancelButton{z-index:4;color:#777;cursor:pointer;background:0 0;border:0;width:78%;margin-top:8px;padding:13px;font-weight:600;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.sourceModalVideoCancelButton{bottom:14px}.videoViewerOverlay{z-index:5000;background:#000;justify-content:center;align-items:center;width:100%;height:100dvh;display:flex;position:fixed;inset:0;overflow:hidden}.videoViewerVideo{object-fit:contain;background:#000;width:100%;height:100%;display:block}.videoViewerClose{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));z-index:5001;color:#fff;cursor:pointer;background:#0009;border:1px solid #ffffffb3;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;font-size:30px;line-height:1;display:grid;position:absolute}.todoInstagramLink{cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;width:min(65%,240px);margin:0;text-decoration:none;animation:none;display:flex}.todoInstagramLogo{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;width:100%;height:auto;display:block}.aboutClickAndKeepBeis{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:min(45%,240px);height:auto;margin:0 auto 12px;display:block}
