:root{--ivory:#faf7f2;--paper:#fffdf9;--sand:#e9e0d4;--gold:#b89b72;--gold-deep:#8d7048;--rose:#efdcd6;--sage:#dfe5dc;--lilac:#e8e1e8;--ink:#292624;--muted:#7b7169;--faint:#a99c8e;--line:#342a2221;--serif:Georgia, "Times New Roman", serif;--sans:Arial, Helvetica, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--ink);font-family:var(--sans);margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit;text-decoration:none}:is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible){outline:2px solid var(--gold-deep);outline-offset:3px}h1,h2,h3,p{margin-top:0}.wedding-app{background:var(--ivory);min-height:100vh}.app-topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:82px;padding:0 clamp(20px,5vw,76px);display:flex}.brand-button{text-align:left;background:0 0;border:0;align-items:center;gap:15px;padding:0;display:flex}.brand-button>span:last-child{flex-direction:column;gap:4px;display:flex}.brand-button strong{font-family:var(--serif);font-size:14px;font-weight:500}.brand-button small{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;font-size:9px}.app-logo{color:var(--gold-deep);font-family:var(--serif);letter-spacing:-.2em;align-items:center;font-size:27px;line-height:1;display:inline-flex}.app-logo i{color:var(--gold);margin:0 3px;padding-bottom:8px;font-size:16px;font-style:italic}.app-logo.compact i{padding-bottom:4px;font-size:11px}.app-topbar-actions{align-items:center;gap:25px;display:flex}.demo-notice{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:7px;font-size:9px;display:flex}.demo-pulse{background:#96aa91;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 3px #96aa9126}.guest-chip{border:1px solid var(--line);color:var(--ink);background:0 0;align-items:center;gap:9px;min-height:35px;padding:0 12px;font-size:10px;display:flex}.guest-chip>span:last-child{color:var(--muted);font-size:13px}.guest-avatar{background:var(--sand);color:var(--gold-deep);font-family:var(--serif);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:50%;flex:0 0 28px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;overflow:hidden}.guest-avatar.has-image{border:.5px solid #ffffffd1;box-shadow:0 3px 9px #1f2b4124}.guest-avatar,.mobile-profile-avatar,.profile-avatar,.personal-library-avatar,.people-directory-avatar{position:relative}.avatar-fallback{justify-content:center;align-items:center;width:100%;height:100%;display:inline-flex}.avatar-image{border-radius:inherit;object-fit:cover;z-index:1;width:100%;height:100%;display:block;position:absolute;inset:0}.mobile-back{display:none}.app-layout{grid-template-columns:247px minmax(0,1fr);min-height:calc(100vh - 82px);display:grid}.app-sidebar{border-right:1px solid var(--line);flex-direction:column;padding:76px 35px 35px;display:flex}.sidebar-label{color:var(--gold-deep);letter-spacing:.19em;text-transform:uppercase;margin-bottom:31px;font-size:9px;font-weight:700}.app-sidebar nav{flex-direction:column;gap:4px;display:flex}.side-link{color:var(--muted);text-align:left;background:0 0;border:0;align-items:center;gap:13px;width:100%;padding:10px 0;font-size:11px;transition:color .2s;display:flex}.side-link span{color:var(--faint);font-family:var(--serif);width:21px;font-size:19px;line-height:1}.side-link.active,.side-link:hover{color:var(--ink)}.side-link.active span{color:var(--gold-deep)}.app-content{width:100%;max-width:1120px;padding:0 clamp(24px,7vw,112px) 38px}.app-content>.demo-notice,.mobile-page-title,.mobile-bottom-nav{display:none}.eyebrow{color:var(--gold-deep);letter-spacing:.19em;text-transform:uppercase;align-items:center;gap:9px;font-size:9px;font-weight:700;display:flex}.eyebrow:before{background:var(--gold);content:"";width:22px;height:1px;display:inline-block}.button{letter-spacing:.04em;border:0;justify-content:space-between;align-items:center;gap:24px;min-height:48px;padding:0 19px;font-size:11px;font-weight:700;transition:transform .2s,box-shadow .2s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 10px 22px #8d704826}.button-outline{border:1px solid var(--line);color:var(--gold-deep);background:0 0}.button-outline:hover{background:var(--paper)}.button.small{min-height:34px;padding:0 12px}.inline-link,.back-link{color:var(--gold-deep);background:0 0;border:0;padding:0;font-size:11px}.inline-link{border-bottom:1px solid #8d704866;padding-bottom:5px}.inline-link span,.back-link span{margin-left:11px;font-size:15px}.back-link{color:var(--muted);margin-bottom:45px}.back-link:hover{color:var(--ink)}.content-page{padding:76px 0 60px}.page-intro{max-width:650px}.page-intro.compact{max-width:600px}.page-intro h1,.form-heading h1,.required-page h1{font-family:var(--serif);letter-spacing:-.07em;margin:27px 0 25px;font-size:clamp(48px,6vw,78px);font-weight:400;line-height:.9}.page-intro h1 em,.form-heading h1 em,.required-page h1 em,.content-page h1 em,.admin-page h1 em{color:var(--gold-deep);font-style:italic}.page-intro p,.form-heading>p,.required-page>p{color:var(--muted);max-width:410px;font-size:14px;line-height:1.65}.welcome-hero{justify-content:space-between;padding:78px 0 0;display:flex}.hero-copy-block{max-width:650px}.hero-copy-block h1{font-family:var(--serif);letter-spacing:-.08em;margin:29px 0 27px;font-size:clamp(55px,7.5vw,97px);font-weight:400;line-height:.88}.hero-copy-block h1 em,.memory-copy h2 em,.home-ranking h2 em,.event-banner em{color:var(--gold-deep);font-style:italic}.hero-copy-block>p{color:var(--muted);max-width:390px;font-size:14px;line-height:1.65}.hero-cta{align-items:center;gap:27px;margin-top:34px;display:flex}.hero-side{flex-direction:column;justify-content:space-between;align-items:flex-end;padding:12px 9px 3px 20px;display:flex}.monogram-orbit{color:var(--gold-deep);font-family:var(--serif);letter-spacing:-.12em;border:1px solid #8d704845;border-radius:50%;justify-content:center;align-items:center;gap:6px;width:172px;height:172px;font-size:35px;display:flex;position:relative;transform:rotate(-9deg)}.monogram-orbit:before,.monogram-orbit:after{content:"";border:1px solid #8d704833;border-radius:50%;position:absolute;inset:13px}.monogram-orbit:after{inset:27px}.monogram-orbit i{color:var(--gold);padding-bottom:12px;font-size:22px;font-style:italic}.monogram-orbit small{font-family:var(--sans);letter-spacing:.22em;font-size:7px;position:absolute;bottom:28px;transform:rotate(9deg)}.hero-caption{border-left:1px solid var(--gold);flex-direction:column;gap:8px;padding-left:14px;display:flex}.hero-caption span{color:var(--gold-deep);letter-spacing:.15em;text-transform:uppercase;font-size:9px}.hero-caption strong{font-family:var(--serif);font-size:14px;font-weight:400;line-height:1.35}.event-banner{background:var(--sand);justify-content:space-between;align-items:center;max-width:760px;margin:88px 0 112px;padding:21px 26px;display:flex}.event-banner strong{font-family:var(--serif);margin-top:8px;font-size:18px;font-weight:400;display:block}.countdown-large{align-items:center;gap:11px;display:flex}.countdown-large span{flex-direction:column;align-items:center;display:flex}.countdown-large b{font-family:var(--serif);font-size:25px;font-weight:400}.countdown-large small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:4px;font-size:8px}.countdown-large i{color:var(--gold-deep);font-family:var(--serif);padding-bottom:13px;font-size:21px;font-style:normal}.section-block{max-width:760px}.section-title-row{justify-content:space-between;align-items:flex-end;margin-bottom:28px;display:flex}.section-title-row h2{font-family:var(--serif);letter-spacing:-.05em;margin:13px 0 0;font-size:clamp(28px,3vw,38px);font-weight:400;line-height:1}.section-count,.queue-count{color:var(--faint);font-family:var(--serif);font-size:12px}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.feature-card{text-align:left;border:0;flex-direction:column;min-height:236px;padding:21px;transition:box-shadow .2s,transform .2s;display:flex;position:relative}.feature-card:hover{transform:translateY(-3px);box-shadow:0 15px 25px #322a2317}.feature-card.rose{background:var(--rose)}.feature-card.gold{background:#eee5d3}.feature-card.sage{background:var(--sage)}.feature-card.lilac{background:var(--lilac)}.feature-number{color:#29262480;font-family:var(--serif);font-size:11px}.feature-icon{color:#8d7048c7;font-family:var(--serif);margin:22px 0 15px;font-size:31px}.feature-text{flex-direction:column;gap:6px;max-width:220px;display:flex}.feature-text small{color:var(--gold-deep);letter-spacing:.15em;text-transform:uppercase;font-size:9px;font-weight:700}.feature-text strong{font-family:var(--serif);font-size:22px;font-weight:400}.feature-text>span{color:#292624b3;font-size:11px;line-height:1.4}.feature-arrow{color:var(--gold-deep);font-size:21px;position:absolute;bottom:18px;right:19px}.memory-preview{background:#e5ddd4;justify-content:space-between;align-items:center;max-width:760px;min-height:324px;margin-top:126px;padding:40px 35px 40px 45px;display:flex;overflow:hidden}.memory-copy{max-width:280px}.memory-copy h2,.home-ranking h2{font-family:var(--serif);letter-spacing:-.06em;margin:19px 0 18px;font-size:clamp(33px,4vw,50px);font-weight:400;line-height:.94}.memory-copy p{color:var(--muted);margin-bottom:23px;font-size:11px;line-height:1.5}.memory-collage{width:43%;height:270px;position:relative}.collage-card{font-family:var(--serif);justify-content:center;align-items:center;display:flex;position:absolute;box-shadow:0 10px 24px #32281e1f}.collage-one{color:#f6e5dd;background:#c89d8a;width:110px;height:155px;font-size:23px;top:55px;left:2%;transform:rotate(-10deg)}.collage-two{color:#f0ece6;background:#aebba4;width:103px;height:135px;font-size:29px;top:11px;right:4%;transform:rotate(8deg)}.collage-three{color:#fff8ef;background:#bc9c6d;width:110px;height:130px;font-size:16px;top:122px;left:25%;transform:rotate(5deg)}.collage-four{color:#fff8ef;background:#d1bbc1;width:95px;height:88px;font-size:41px;top:163px;right:17%;transform:rotate(-8deg)}.home-ranking{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;max-width:760px;padding:120px 20px 48px 0;display:flex}.home-ranking button{text-align:left;background:0 0;border:0;align-items:center;gap:13px;padding:0;display:flex}.home-ranking button strong{color:var(--gold-deep);font-family:var(--serif);font-size:45px;font-weight:400}.home-ranking button span{color:var(--muted);text-transform:uppercase;font-size:9px;line-height:1.45}.home-ranking button b{color:var(--gold-deep);font-size:19px;font-weight:400}.app-footer{color:var(--muted);justify-content:space-between;align-items:center;gap:24px;max-width:760px;padding:28px 0 15px;font-size:10px;display:flex}.app-footer>span:first-child{margin-right:auto}.app-footer button{color:var(--gold-deep);background:0 0;border:0;padding:0;font-size:10px}.form-page{max-width:820px;padding-top:86px}.form-heading{max-width:570px}.simple-form{flex-direction:column;gap:10px;max-width:500px;margin-top:56px;display:flex}.field-label{color:var(--ink);letter-spacing:.04em;justify-content:space-between;margin-top:17px;font-size:10px;font-weight:700;display:flex}.field-label span{color:var(--faint);font-size:9px;font-weight:400}.text-input{background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:0;width:100%;min-height:48px;padding:0 14px}.text-input::placeholder{color:#b3aaa0}.text-input:focus{border-color:var(--gold-deep);outline:none}.check-row{color:var(--muted);align-items:flex-start;gap:10px;margin-top:12px;font-size:11px;line-height:1.45;display:flex}.check-row input{accent-color:var(--gold-deep);margin-top:2px}.check-row.required{color:var(--ink)}.inline-error{color:#9d5a53;background:#9d5a5314;border-left:2px solid #b56d64;padding:10px 12px;font-size:10px;line-height:1.4}.success-box{color:#51614d;background:#8ea78b24;border-left:2px solid #8ea78b;justify-content:space-between;align-items:center;padding:11px 13px;font-size:11px;line-height:1.45;display:flex}.success-box button{color:inherit;background:0 0;border:0;font-size:17px}.session-badge{background:var(--sand);color:var(--gold-deep);margin-top:18px;padding:8px 10px;font-size:10px;display:inline-block}.upload-layout{grid-template-columns:minmax(0,1fr) 230px;gap:28px;max-width:820px;margin-top:55px;display:grid}.upload-dropzone{background:var(--paper);text-align:center;border:1px dashed #8d704875;flex-direction:column;justify-content:center;align-items:center;min-height:274px;padding:28px;transition:background .2s;display:flex}.upload-dropzone:hover{background:#fffaf1}.upload-dropzone input{opacity:0;width:1px;height:1px;position:absolute}.upload-plus{color:var(--gold-deep);font-family:var(--serif);font-size:40px;line-height:1}.upload-dropzone strong{font-family:var(--serif);margin-top:17px;font-size:20px;font-weight:400}.upload-dropzone>span:not(.upload-plus){color:var(--muted);max-width:300px;margin-top:9px;font-size:11px;line-height:1.5}.upload-dropzone small{color:var(--faint);letter-spacing:.12em;text-transform:uppercase;margin-top:17px;font-size:8px}.upload-options{flex-direction:column;margin-top:20px;display:flex}.upload-aside{flex-direction:column;gap:12px;display:flex}.aside-card{background:var(--paper);border:1px solid var(--line);padding:22px 19px}.aside-card.soft{background:var(--sand);border-color:#0000}.aside-card ul{color:var(--muted);margin:17px 0 0;padding:0;font-size:11px;line-height:1.65;list-style:none}.aside-card li{border-top:1px solid var(--line);padding:9px 0}.aside-card li:before{color:var(--gold-deep);content:"·";margin-right:7px}.aside-icon{color:var(--gold-deep);font-family:var(--serif);font-size:29px}.aside-card strong{font-family:var(--serif);margin:13px 0 7px;font-size:18px;font-weight:400;display:block}.aside-card p{color:var(--muted);font-size:11px;line-height:1.5}.upload-queue{max-width:820px;margin-top:75px}.upload-list{flex-direction:column;gap:9px;display:flex}.upload-item{background:var(--paper);border:1px solid var(--line);align-items:center;gap:13px;padding:12px;display:flex}.upload-thumb{background:var(--rose);color:var(--gold-deep);font-family:var(--serif);flex:0 0 48px;justify-content:center;align-items:center;height:48px;font-size:20px;display:flex}.upload-thumb.video{background:var(--lilac)}.upload-item-main{flex:1;min-width:0}.upload-item-top{justify-content:space-between;gap:12px;font-size:11px;display:flex}.upload-item-top strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-item-top span{color:var(--gold-deep);font-size:9px}.progress-track{background:var(--sand);height:4px;margin:9px 0 6px;overflow:hidden}.progress-track span{background:var(--gold-deep);height:100%;transition:width .2s;display:block}.upload-item-main>small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;display:block;overflow:hidden}.upload-item-main code{color:var(--gold-deep);font-family:var(--sans);margin-top:5px;font-size:9px;display:block}.upload-item-actions{gap:3px;display:flex}.upload-item-actions button,.moderation-actions button{color:var(--muted);background:0 0;border:0;padding:4px 6px;font-size:18px}.upload-item-actions button:hover{color:var(--ink)}.success-note{background:var(--sage);align-items:flex-start;gap:12px;max-width:820px;margin-top:25px;padding:15px 17px;display:flex}.success-note>span{color:#678062;font-size:17px}.success-note p{color:var(--muted);margin:0;font-size:10px;line-height:1.5}.success-note strong{color:var(--ink);margin-bottom:3px;font-size:11px;display:block}.filter-row{gap:9px;margin:52px 0 25px;padding-bottom:4px;display:flex;overflow-x:auto}.filter{border:1px solid var(--line);color:var(--muted);white-space:nowrap;background:0 0;min-height:34px;padding:0 12px;font-size:10px}.filter span{color:var(--gold-deep);margin-left:4px}.filter.active,.filter:hover{background:var(--ink);border-color:var(--ink);color:#fffdf8}.challenge-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.challenge-card{background:var(--paper);border:1px solid var(--line);text-align:left;flex-direction:column;min-height:240px;padding:17px;transition:box-shadow .2s,transform .2s;display:flex;position:relative}.challenge-top{justify-content:space-between;align-items:flex-start;margin-bottom:26px;display:flex}.challenge-icon{background:var(--sand);color:var(--gold-deep);font-family:var(--serif);justify-content:center;align-items:center;width:43px;height:43px;font-size:24px;display:flex}.points-badge{background:var(--rose);color:var(--gold-deep);padding:6px 8px;font-size:9px}.challenge-card .eyebrow{font-size:8px}.challenge-card .eyebrow:before{display:none}.challenge-card h3{font-family:var(--serif);margin:9px 0 8px;font-size:21px;font-weight:400;line-height:1.05}.challenge-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.5}.challenge-footer{border-top:1px solid var(--line);color:var(--faint);justify-content:space-between;align-items:center;margin-top:auto;padding-top:13px;font-size:9px;display:flex}.challenge-footer b{color:var(--gold-deep);font-size:17px;font-weight:400}.empty-state{background:var(--paper);border:1px solid var(--line);text-align:center;flex-direction:column;align-items:center;max-width:620px;margin-top:35px;padding:58px 25px;display:flex}.empty-icon{color:var(--gold);font-family:var(--serif);font-size:37px}.empty-state h3{font-family:var(--serif);margin:14px 0 7px;font-size:24px;font-weight:400}.empty-state p{color:var(--muted);max-width:330px;margin:0 0 20px;font-size:11px;line-height:1.5}.detail-hero{background:var(--sand);max-width:760px;padding:36px 40px 40px;position:relative}.detail-icon{color:var(--gold-deep);font-family:var(--serif);margin-bottom:28px;font-size:37px;display:block}.detail-hero .eyebrow:before{display:none}.detail-hero h1{font-family:var(--serif);letter-spacing:-.06em;margin:17px 0 12px;font-size:clamp(43px,5vw,67px);font-weight:400;line-height:.95}.detail-hero p{color:var(--muted);max-width:420px;font-size:13px;line-height:1.5}.point-pill{background:var(--ink);color:#fffdf8;margin-top:15px;padding:8px 10px;font-size:10px;display:inline-block}.detail-grid{grid-template-columns:1.3fr 1fr;gap:12px;margin-top:12px;display:grid}.detail-card{background:var(--paper);border:1px solid var(--line);padding:28px 25px}.detail-card.pale{background:var(--lilac);border:0}.detail-card h2{font-family:var(--serif);margin:15px 0 19px;font-size:29px;font-weight:400}.detail-card ol{color:var(--muted);margin:0 0 25px;padding-left:18px;font-size:11px;line-height:1.55}.detail-card li{margin-bottom:10px;padding-left:4px}.rule-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:13px 0;font-size:10px;display:flex}.rule-row span{color:var(--muted)}.rule-row strong{text-align:right;max-width:60%;font-weight:400}.quiz-landing{max-width:760px}.quiz-cover{background:var(--rose);padding:43px 42px 38px}.quiz-symbol{color:var(--gold-deep);font-family:var(--serif);margin-bottom:25px;font-size:41px;display:block}.quiz-cover .eyebrow:before{display:none}.quiz-cover h1{font-family:var(--serif);letter-spacing:-.07em;margin:19px 0 22px;font-size:clamp(47px,6vw,72px);font-weight:400;line-height:.9}.quiz-cover h1 em{color:var(--gold-deep);font-style:italic}.quiz-cover>p{color:var(--muted);max-width:430px;font-size:13px;line-height:1.6}.quiz-facts{border-top:1px solid #8d704840;border-bottom:1px solid #8d704840;gap:45px;max-width:430px;margin:30px 0;padding:14px 0;display:flex}.quiz-facts span{flex-direction:column;gap:4px;display:flex}.quiz-facts b{color:var(--gold-deep);font-family:var(--serif);font-size:22px;font-weight:400}.quiz-facts small{color:var(--muted);text-transform:uppercase;font-size:8px}.quiz-warning,.placeholder-note,.ranking-note{background:#e9e0d48c;align-items:flex-start;gap:10px;max-width:760px;margin-top:13px;padding:13px 15px;display:flex}.quiz-warning>span,.placeholder-note>span,.ranking-note>span{border:1px solid var(--gold);color:var(--gold-deep);font-family:var(--serif);border-radius:50%;flex:0 0 17px;justify-content:center;align-items:center;height:17px;font-size:11px;display:flex}.quiz-warning p,.placeholder-note p,.ranking-note p{color:var(--muted);margin:0;font-size:10px;line-height:1.5}.quiz-warning strong,.placeholder-note strong,.ranking-note strong{color:var(--ink)}.quiz-playing{max-width:780px}.quiz-topline{color:var(--muted);justify-content:space-between;align-items:center;font-size:10px;display:flex}.quiz-topline .back-link{margin:0}.quiz-time{color:var(--gold-deep);font-family:var(--serif);font-size:17px}.quiz-progress{background:var(--sand);height:4px;margin:20px 0 40px}.quiz-progress span{background:var(--gold-deep);height:100%;transition:width .3s;display:block}.question-card{background:var(--paper);border:1px solid var(--line);padding:43px}.question-number{color:var(--gold-deep);letter-spacing:.15em;text-transform:uppercase;font-size:9px}.question-card h1{font-family:var(--serif);letter-spacing:-.06em;max-width:590px;margin:23px 0 34px;font-size:clamp(35px,5vw,56px);font-weight:400;line-height:.98}.answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.answer-option{background:var(--ivory);border:1px solid var(--line);color:var(--ink);text-align:left;align-items:center;gap:12px;min-height:60px;padding:10px 14px;font-size:12px;transition:transform .2s,border-color .2s;display:flex}.answer-option:hover{border-color:var(--gold-deep);transform:translateY(-2px)}.answer-option>span{border:1px solid var(--line);color:var(--gold-deep);font-family:var(--serif);flex:0 0 27px;justify-content:center;align-items:center;height:27px;display:flex}.answer-2{background:var(--rose)}.answer-3{background:var(--sage)}.answer-4{background:var(--lilac)}.result-page{text-align:center;max-width:760px}.result-orb{background:var(--rose);color:var(--gold-deep);font-family:var(--serif);border-radius:50%;justify-content:center;align-items:center;width:92px;height:92px;margin:0 auto 23px;font-size:33px;display:flex}.result-page .eyebrow{justify-content:center}.result-page .eyebrow:before{display:none}.result-page h1{font-family:var(--serif);letter-spacing:-.08em;margin:24px 0 19px;font-size:clamp(55px,7vw,84px);font-weight:400;line-height:.86}.result-message{color:var(--muted);font-family:var(--serif);font-size:17px}.result-stats{text-align:left;grid-template-columns:repeat(3,1fr);gap:10px;max-width:560px;margin:35px auto 15px;display:grid}.stat-card{padding:19px}.stat-card strong{font-family:var(--serif);font-size:29px;font-weight:400;display:block}.stat-card span{color:var(--muted);text-transform:uppercase;margin-top:7px;font-size:9px;display:block}.stat-card.rose{background:var(--rose)}.stat-card.sand{background:var(--sand)}.stat-card.sage{background:var(--sage)}.stat-card.lilac{background:var(--lilac)}.result-page .placeholder-note{text-align:left;max-width:560px;margin:16px auto 0}.result-actions{justify-content:center;align-items:center;gap:26px;margin-top:27px;display:flex}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.media-tile{text-align:left;background:0 0;border:0;min-width:0;padding:0}.media-art{aspect-ratio:1/1.12;overflow:hidden}.media-placeholder{flex-direction:column;justify-content:center;align-items:center;height:100%;transition:transform .3s;display:flex}.media-tile:hover .media-placeholder{transform:scale(1.04)}.media-placeholder span{color:#fffdf9cc;font-family:var(--serif);font-size:37px}.media-placeholder small{color:#fffdf9c4;letter-spacing:.12em;text-transform:uppercase;margin-top:10px;font-size:8px}.media-placeholder img,.media-placeholder video,.media-art>img,.media-art>video{object-fit:cover;width:100%;height:100%;display:block}.media-gradient-a{background:linear-gradient(135deg,#9f7f6c,#dfb8a4 47%,#f0ddd1)}.media-gradient-b{background:linear-gradient(135deg,#c5a06f,#eee4ca 52%,#947655)}.media-gradient-c{background:linear-gradient(135deg,#a5b19d,#dce1d5 51%,#798c79)}.media-gradient-d{background:linear-gradient(135deg,#87768c,#d0b9cc 48%,#614e68)}.media-gradient-e{background:linear-gradient(135deg,#e0c5b8,#f5e9dc 50%,#bd8f78)}.media-meta{flex-wrap:wrap;gap:5px 10px;padding:12px 2px 7px;display:flex}.media-meta span,.media-meta b{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:8px}.media-meta b{color:var(--gold-deep)}.media-meta strong{font-family:var(--serif);flex-basis:100%;font-size:15px;font-weight:400}.lightbox{z-index:50;background:#231d19bf;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.lightbox-card{background:var(--paper);width:100%;max-width:550px;padding:14px;position:relative}.lightbox-card .modal-close{top:4px}.lightbox-art{aspect-ratio:1.2;overflow:hidden}.lightbox-card p{font-family:var(--serif);margin:17px 3px 4px;font-size:19px}.lightbox-card>small{color:var(--muted);margin-left:3px;font-size:9px}.ranking-note{max-width:650px;margin:42px 0 18px}.leaderboard-card{background:var(--paper);border:1px solid var(--line)}.leaderboard-head,.leaderboard-row{grid-template-columns:74px minmax(0,1fr) 85px 100px;display:grid}.leaderboard-head{border-bottom:1px solid var(--line);color:var(--faint);letter-spacing:.14em;text-transform:uppercase;padding:12px 18px;font-size:8px}.leaderboard-row{border-bottom:1px solid var(--line);align-items:center;min-height:71px;padding:9px 18px}.leaderboard-row:last-child{border-bottom:0}.leader-position{color:var(--gold-deep);font-family:var(--serif);font-size:16px}.leaderboard-row:not(.top-three) .leader-position{color:var(--faint);font-size:12px}.leader-name strong,.leader-name small{display:block}.leader-name strong{font-family:var(--serif);font-size:16px;font-weight:400}.leader-name small{color:var(--muted);margin-top:4px;font-size:9px}.leader-points{color:var(--gold-deep);font-family:var(--serif);font-size:21px}.leader-points small{font-family:var(--sans);text-transform:uppercase;margin-left:4px;font-size:8px}.leader-challenges{color:var(--muted);font-size:9px}.demo-caption{color:var(--faint);margin-top:12px;font-size:9px}.legal-page{max-width:820px}.legal-sections{border-top:1px solid var(--line);margin-top:70px}.legal-sections article{border-bottom:1px solid var(--line);grid-template-columns:35px minmax(0,530px);gap:35px;padding:26px 0;display:grid}.legal-sections article>span{color:var(--gold-deep);font-family:var(--serif);font-size:12px}.legal-sections h2{font-family:var(--serif);margin:0 0 10px;font-size:24px;font-weight:400}.legal-sections p{color:var(--muted);margin:0;font-size:12px;line-height:1.65}.required-page{max-width:600px;padding-top:120px}.required-symbol{color:var(--gold-deep);font-family:var(--serif);margin-bottom:55px;font-size:24px;display:block}.required-page .button{margin-top:28px}.narrow{max-width:650px}.simple-form{margin-top:35px}.simple-form .success-box{margin:9px 0}.qr-page{max-width:850px}.qr-layout{grid-template-columns:minmax(280px,1fr) minmax(210px,.7fr);gap:35px;margin-top:57px;display:grid}.qr-card{background:var(--paper);border:1px solid var(--line);text-align:center;flex-direction:column;align-items:center;padding:28px 25px 31px;display:flex}.qr-preview{background:var(--paper);justify-content:center;align-items:center;width:245px;height:245px;display:flex}.qr-preview img{object-fit:contain;width:100%;height:100%}.fake-qr{grid-template-columns:repeat(9,1fr);gap:3px;width:215px;height:215px;padding:4px;display:grid}.fake-qr span{background:#f5efe6}.fake-qr span.on,.fake-qr span:first-child,.fake-qr span:nth-child(2),.fake-qr span:nth-child(3),.fake-qr span:nth-child(10),.fake-qr span:nth-child(12),.fake-qr span:nth-child(19),.fake-qr span:nth-child(20),.fake-qr span:nth-child(21),.fake-qr span:nth-child(61),.fake-qr span:nth-child(62),.fake-qr span:nth-child(63),.fake-qr span:nth-child(70),.fake-qr span:nth-child(72),.fake-qr span:nth-child(79),.fake-qr span:nth-child(80),.fake-qr span:nth-child(81){background:var(--ink)}.qr-under{color:var(--gold-deep);letter-spacing:.1em;margin:14px 0 18px;font-size:9px}.qr-card strong{font-family:var(--serif);font-size:22px;font-weight:400}.qr-card small{color:var(--muted);max-width:300px;margin-top:9px;font-size:10px;line-height:1.5}.qr-actions{flex-direction:column;gap:15px;display:flex}.download-row{flex-wrap:wrap;gap:8px;display:flex}.download-row .button{flex:1;min-width:105px}.print-copy{display:none}.tv-page{color:#fffdf8;background:#171514;min-height:100vh;padding:0 34px 34px}.tv-control-bar{border-bottom:1px solid #fffdf829;justify-content:space-between;align-items:center;min-height:68px;display:flex}.tv-control-bar>div:first-child{color:#bdb2a6;align-items:center;gap:14px;font-size:10px;display:flex}.tv-controls{align-items:center;gap:19px;display:flex}.tv-controls label{color:#bdb2a6;font-size:9px}.tv-controls input{accent-color:var(--gold)}.tv-controls button{color:#fffdf8;background:0 0;border:1px solid #fffdf833;padding:8px 10px;font-size:9px}.tv-stage{grid-template-columns:minmax(0,1fr) 265px;gap:25px;max-width:1250px;margin:37px auto 0;display:grid}.tv-content{background:#292624;justify-content:center;align-items:center;min-height:calc(100vh - 180px);padding:45px;display:flex}.tv-media-card{text-align:center;width:100%;max-width:680px}.tv-art{aspect-ratio:16/10;flex-direction:column;justify-content:center;align-items:center;display:flex}.tv-art span{color:#fffdf9d4;font-family:var(--serif);font-size:80px}.tv-art small{color:#fffdf9bd;letter-spacing:.2em;text-transform:uppercase;margin-top:15px;font-size:9px}.tv-media-card p{font-family:var(--serif);margin:23px 0 5px;font-size:22px}.tv-media-card>small{color:#a89d92;font-size:9px}.tv-side-panel{background:var(--sand);color:var(--ink);flex-direction:column;justify-content:space-between;min-height:calc(100vh - 180px);padding:30px 24px;display:flex}.tv-monogram{flex-direction:column;align-items:center;display:flex}.tv-monogram .app-logo{font-size:44px}.tv-monogram .app-logo i{font-size:22px}.tv-monogram>span{font-family:var(--serif);margin-top:15px;font-size:20px}.tv-monogram small{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin-top:7px;font-size:8px}.tv-qr-placeholder{background:var(--paper);text-align:center;flex-direction:column;align-items:center;padding:22px 10px;display:flex}.tv-qr-placeholder>span{color:var(--gold-deep);font-size:53px;line-height:1}.tv-qr-placeholder strong{font-family:var(--serif);margin-top:13px;font-size:16px;font-weight:400}.tv-qr-placeholder small{color:var(--muted);margin-top:7px;font-size:8px}.tv-live{color:var(--gold-deep);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;font-size:9px;display:flex}.tv-empty{color:#a89d92;font-family:var(--serif);font-size:22px}.admin-content{max-width:1260px;padding-left:clamp(24px,4vw,65px);padding-right:clamp(24px,4vw,65px)}.admin-login-page{justify-content:center;align-items:flex-start;padding-top:100px;display:flex}.admin-login-card{background:var(--paper);border:1px solid var(--line);width:100%;max-width:510px;padding:39px 41px}.admin-login-card>.app-logo{margin-bottom:60px}.admin-login-card h1{font-family:var(--serif);letter-spacing:-.07em;margin:19px 0 17px;font-size:49px;font-weight:400;line-height:.9}.admin-login-card h1 em{color:var(--gold-deep);font-style:italic}.admin-login-card>p{color:var(--muted);margin-bottom:23px;font-size:11px;line-height:1.6}.admin-login-card .text-input{margin-bottom:5px}.admin-login-card .button{width:100%;margin-top:19px}.demo-credentials{background:var(--sand);flex-direction:column;gap:4px;margin-top:18px;padding:13px;display:flex}.demo-credentials small{color:var(--gold-deep);letter-spacing:.12em;text-transform:uppercase;font-size:8px}.demo-credentials strong{font-family:var(--serif);font-size:13px;font-weight:400}.admin-page{padding:58px 0 60px}.admin-heading{justify-content:space-between;align-items:flex-end;display:flex}.admin-heading h1{font-family:var(--serif);letter-spacing:-.07em;margin:20px 0 0;font-size:clamp(44px,5vw,65px);font-weight:400;line-height:.9}.admin-heading>div:last-child{color:var(--muted);align-items:center;gap:9px;font-size:10px;display:flex}.admin-heading .button{margin-left:16px}.admin-phase-dot{background:#96aa91;border-radius:50%;width:7px;height:7px}.admin-layout{grid-template-columns:190px minmax(0,1fr);gap:35px;margin-top:72px;display:grid}.admin-side-nav{flex-direction:column;gap:4px;display:flex}.admin-side-nav>button{color:var(--muted);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:10px 0;font-size:10px;display:flex}.admin-side-nav>button.active,.admin-side-nav>button:hover{color:var(--ink)}.admin-side-foot{border-top:1px solid var(--line);flex-direction:column;gap:9px;margin-top:45px;padding-top:17px;display:flex}.admin-side-foot>span{color:var(--gold-deep);letter-spacing:.16em;text-transform:uppercase;font-size:8px}.admin-side-foot strong{font-size:9px;font-weight:400}.integration-off{color:#a06e66}.admin-main{min-width:0}.admin-main>.success-box{margin-bottom:14px}.admin-welcome{background:var(--sand);justify-content:space-between;align-items:flex-end;padding:28px 30px 30px;display:flex}.admin-welcome h2{font-family:var(--serif);letter-spacing:-.07em;margin:16px 0 0;font-size:42px;font-weight:400;line-height:.88}.admin-date{color:var(--gold-deep);letter-spacing:.1em;text-transform:uppercase;font-size:9px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:9px;margin:12px 0;display:grid}.admin-two-col{grid-template-columns:1.35fr 1fr;gap:12px;display:grid}.admin-panel{background:var(--paper);border:1px solid var(--line);padding:23px 20px}.admin-panel.pale{background:var(--lilac);border:0}.panel-heading{justify-content:space-between;align-items:flex-start;margin-bottom:21px;display:flex}.panel-heading h2,.panel-heading h3{font-family:var(--serif);letter-spacing:-.04em;margin:11px 0 0;font-size:25px;font-weight:400}.moderation-row{border-top:1px solid var(--line);align-items:center;gap:11px;padding:11px 0;display:flex}.moderation-row.detailed{padding:14px 0}.moderation-thumb{color:#fffdf9cc;font-family:var(--serif);flex:0 0 44px;justify-content:center;align-items:center;height:44px;font-size:18px;display:flex}.moderation-copy{flex:1;min-width:0}.moderation-copy strong,.moderation-copy span,.moderation-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.moderation-copy strong{font-family:var(--serif);font-size:14px;font-weight:400}.moderation-copy span,.moderation-copy small{color:var(--muted);margin-top:4px;font-size:9px}.moderation-status{letter-spacing:.07em;text-transform:uppercase;font-size:8px}.status-pending{color:var(--gold-deep)}.status-approved{color:#688162}.status-rejected{color:#a06e66}.status-archived{color:var(--faint)}.moderation-actions{display:flex}.moderation-actions button:first-child{color:#688162}.moderation-actions button:last-child{color:#a06e66}.mini-stat{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:13px 0;display:flex}.admin-list{border-top:1px solid var(--line)}.admin-list-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:63px;display:flex}.list-icon,.list-number{color:var(--gold-deep);font-family:var(--serif);width:27px;font-size:19px}.list-number{font-size:12px}.admin-list-row>div{flex:1;min-width:0}.admin-list-row strong,.admin-list-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-list-row strong{font-family:var(--serif);font-size:14px;font-weight:400}.admin-list-row small{color:var(--muted);margin-top:5px;font-size:9px}.active-tag,.draft-tag{background:var(--sage);color:#688162;text-transform:uppercase;padding:5px 7px;font-size:8px}.draft-tag{background:var(--rose);color:var(--gold-deep)}.icon-button{color:var(--muted);background:0 0;border:0;padding:3px 6px;font-size:18px}.settings-list{border-top:1px solid var(--line)}.setting-toggle{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:72px;display:flex}.setting-toggle>span{flex-direction:column;gap:5px;display:flex}.setting-toggle strong{font-family:var(--serif);font-size:16px;font-weight:400}.setting-toggle input{opacity:0;position:absolute}.setting-toggle i{background:#cfc7bd;border-radius:20px;width:39px;height:22px;display:block;position:relative}.setting-toggle i:after{background:var(--paper);content:"";border-radius:50%;width:16px;height:16px;transition:left .2s;position:absolute;top:3px;left:3px}.setting-toggle input:checked+i:after{left:20px}.phase-settings{border-top:1px solid var(--line);margin-top:33px;padding-top:22px}.phase-settings>div{gap:8px;margin-top:15px;display:flex}.phase-button{border:1px solid var(--line);color:var(--muted);background:0 0;min-height:34px;padding:0 13px;font-size:10px}.phase-button.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.config-table{margin-top:35px}.config-table>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:13px 0;font-size:10px;display:flex}.config-table strong{text-align:right;max-width:62%;font-weight:400}.status-page{background:var(--ivory);flex-direction:column;align-items:flex-start;min-height:100vh;padding:85px clamp(25px,9vw,140px);display:flex}.status-monogram{color:var(--gold-deep);font-family:var(--serif);margin-bottom:100px;font-size:24px}.status-page h1{font-family:var(--serif);letter-spacing:-.08em;margin:25px 0;font-size:clamp(54px,8vw,100px);font-weight:400;line-height:.86}.status-page h1 em{color:var(--gold-deep);font-style:italic}.status-page p{color:var(--muted);margin-bottom:29px;font-size:13px;line-height:1.5}.status-actions{align-items:center;gap:23px;display:flex}.remote-media-image{background-position:50%;background-size:cover;width:100%;height:100%}.qr-image{background-position:50%;background-repeat:no-repeat;background-size:contain;width:100%;height:100%}@media (max-width:980px){.app-layout{grid-template-columns:190px minmax(0,1fr)}.app-sidebar{padding-left:24px;padding-right:24px}.app-content{padding-left:clamp(23px,5vw,65px);padding-right:clamp(23px,5vw,65px)}.challenge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-layout{grid-template-columns:minmax(0,1fr) 200px}.tv-stage{grid-template-columns:minmax(0,1fr) 220px}.tv-controls{gap:10px}.tv-controls label{font-size:8px}.admin-layout{grid-template-columns:150px minmax(0,1fr);gap:24px}}@media (max-width:720px){html{scroll-behavior:auto}.app-topbar{height:67px;padding:0 18px}.app-topbar-actions{gap:0}.app-topbar-actions>.demo-notice{display:none}.brand-button{gap:10px}.brand-button strong{font-size:12px}.brand-button small{font-size:8px}.app-logo{font-size:23px}.mobile-back{color:var(--gold-deep);background:0 0;border:0;margin-right:2px;padding:0;font-size:19px;display:block}.brand-button{margin-right:auto}.app-layout{min-height:calc(100vh - 67px);display:block}.app-sidebar{display:none}.app-content{padding:0 20px 93px}.app-content>.demo-notice{padding:15px 0 0;font-size:8px;display:flex}.mobile-page-title{color:var(--gold-deep);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:19px 0 0;font-size:9px;display:flex}.mobile-page-title button{color:var(--muted);background:0 0;border:0;padding:0;font-size:9px}.content-page{padding:51px 0 35px}.page-intro h1,.form-heading h1,.required-page h1{font-size:clamp(46px,13vw,66px)}.page-intro p,.form-heading>p,.required-page>p{font-size:13px}.welcome-hero{padding:61px 0 0;display:block}.hero-copy-block h1{font-size:clamp(54px,14vw,79px)}.hero-copy-block>p{max-width:330px;font-size:13px}.hero-cta{flex-direction:column;align-items:flex-start;gap:19px;margin-top:27px}.hero-side{flex-direction:row;align-items:flex-end;margin-top:47px;padding:0}.monogram-orbit{width:124px;height:124px;font-size:27px}.monogram-orbit:before{inset:10px}.monogram-orbit:after{inset:20px}.monogram-orbit small{font-size:6px;bottom:19px}.hero-caption{margin:0 5px 7px 0}.event-banner{flex-direction:column;align-items:flex-start;gap:21px;margin:55px 0 74px;padding:18px}.countdown-large{align-self:flex-end}.section-title-row{margin-bottom:20px}.section-title-row h2{font-size:28px}.feature-grid{gap:8px}.feature-card{min-height:207px;padding:15px}.feature-icon{margin:18px 0 14px}.feature-text strong{font-size:18px}.feature-text>span{font-size:10px}.feature-arrow{bottom:13px;right:13px}.memory-preview{flex-direction:column;align-items:flex-start;gap:20px;min-height:370px;margin-top:80px;padding:28px 20px 19px}.memory-copy h2,.home-ranking h2{font-size:37px}.memory-collage{align-self:flex-end;width:95%;height:205px}.collage-one{width:85px;height:121px}.collage-two{width:80px;height:105px}.collage-three{width:88px;height:103px}.collage-four{width:75px;height:72px}.home-ranking{padding:82px 5px 32px 0}.home-ranking button strong{font-size:39px}.app-footer{flex-wrap:wrap;gap:13px;font-size:9px}.mobile-bottom-nav{border-top:1px solid var(--line);z-index:20;background:#fffdf9f7;justify-content:space-around;align-items:stretch;padding:9px 3px 8px;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav button{color:var(--muted);letter-spacing:.03em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:4px;max-width:95px;font-size:7px;display:flex;overflow:hidden}.mobile-bottom-nav button span{font-family:var(--serif);font-size:17px;line-height:16px}.form-page{padding-top:58px}.guest-form,.simple-form{margin-top:37px}.upload-layout{margin-top:38px;display:block}.upload-aside{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px;display:grid}.upload-dropzone{min-height:240px}.upload-queue{margin-top:56px}.upload-item{align-items:flex-start}.upload-thumb{flex-basis:39px;height:39px}.upload-item-top{display:block}.upload-item-top span{margin-top:5px;display:block}.upload-item-actions{margin-left:auto}.challenge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.challenge-card{min-height:220px;padding:14px}.challenge-card h3{font-size:18px}.detail-hero{padding:27px 22px 29px}.detail-grid{grid-template-columns:1fr}.quiz-cover{padding:31px 23px 28px}.quiz-facts{gap:25px}.question-card{padding:25px 18px}.answer-grid{grid-template-columns:1fr}.result-stats{gap:7px}.stat-card{padding:13px 11px}.stat-card strong{font-size:23px}.stat-card span{font-size:8px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:8px}.media-meta strong{font-size:14px}.leaderboard-head,.leaderboard-row{grid-template-columns:50px minmax(0,1fr) 66px}.leaderboard-head span:last-child,.leaderboard-row .leader-challenges{display:none}.leaderboard-head{padding:11px 13px}.leaderboard-row{min-height:65px;padding:8px 13px}.leader-name strong{font-size:14px}.legal-sections{margin-top:47px}.legal-sections article{grid-template-columns:25px minmax(0,1fr);gap:17px}.legal-sections h2{font-size:22px}.qr-layout{margin-top:37px;display:block}.qr-actions{margin-top:13px}.qr-preview{width:220px;height:220px}.qr-card{padding:22px 15px 27px}.print-copy{display:none}.tv-page{padding:0 16px 17px}.tv-control-bar{flex-direction:column;align-items:flex-start;gap:13px;padding:17px 0}.tv-controls{flex-wrap:wrap}.tv-stage{margin-top:17px;display:block}.tv-content,.tv-side-panel{min-height:auto}.tv-content{padding:18px}.tv-side-panel{gap:22px;margin-top:10px;padding:24px 17px}.tv-qr-placeholder{width:100%;max-width:300px}.tv-live{justify-content:center}.tv-art span{font-size:59px}.tv-media-card p{font-size:17px}.admin-content{padding-left:20px;padding-right:20px}.admin-login-page{padding-top:62px}.admin-login-card{padding:28px 22px}.admin-login-card>.app-logo{margin-bottom:45px}.admin-login-card h1{font-size:43px}.admin-page{padding-top:47px}.admin-heading{flex-direction:column;align-items:flex-start;gap:18px}.admin-heading>div:last-child{flex-wrap:wrap}.admin-layout{margin-top:40px;display:block}.admin-side-nav{border-bottom:1px solid var(--line);flex-direction:row;gap:17px;margin-bottom:17px;padding-bottom:10px;overflow-x:auto}.admin-side-nav>button{flex:none;padding:5px 0}.admin-side-foot{display:none}.admin-welcome{padding:22px 18px 23px}.admin-welcome h2{font-size:34px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:7px}.admin-two-col{grid-template-columns:1fr}.admin-panel{padding:18px 15px}.panel-heading h2{font-size:29px}.admin-list-row{gap:7px}.active-tag,.draft-tag{display:none}.config-table>div{flex-direction:column;align-items:flex-start;gap:6px}.config-table strong{text-align:left;max-width:100%}.status-page{padding:53px 22px}.status-monogram{margin-bottom:95px}.status-actions{flex-direction:column;align-items:flex-start}.mobile-bottom-nav button{color:#6e5962}.mobile-bottom-nav button.active{color:#a6455f}.theme-dark .mobile-bottom-nav button{color:#ebebf5b8}.theme-dark .mobile-bottom-nav button.active{color:#6fb2ff}}.app-logo{flex:none;align-items:center;font-size:27px;line-height:1;display:inline-flex}.app-logo-image{object-fit:contain;width:2.65em;height:1.45em;display:block}.app-logo.compact{font-size:17px}.live-stage-monogram>.app-logo,.admin-live-preview-top>.app-logo,.live-game-waiting-mark>.app-logo,.live-game-waiting-monogram>.app-logo{font-size:15px}.theme-dark .app-logo-image,.live-stage-monogram .app-logo-image,.admin-live-preview-top .app-logo-image,.live-game-waiting-mark .app-logo-image,.live-game-waiting-monogram .app-logo-image{filter:drop-shadow(0 0 1px #ffffffd1)drop-shadow(0 2px 5px #ffffff2e)}.status-monogram.app-logo{display:inline-flex}html,body{max-width:100%;overflow-x:hidden}.wedding-app,.app-layout,.app-content,.view-stage,.content-page,.admin-page,.admin-layout,.admin-main{min-width:0;max-width:100%}.wedding-app[data-view=home] .app-layout{min-height:calc(100svh - 74px);display:block}.wedding-app[data-view=home] .app-sidebar{display:none}.wedding-app[data-view=home] .app-content{max-width:none;padding:0}.home-menu-screen{grid-template-columns:minmax(0,1fr);align-items:center;min-height:calc(100svh - 74px);margin:0 auto;padding:clamp(44px,8vw,105px) clamp(22px,6vw,86px);display:grid;position:relative;max-width:920px!important}.home-menu-intro{animation:home-menu-in .65s var(--ease-apple) both;max-width:430px}.home-menu-intro h1{color:#fff7f8;font-family:var(--font-stack);letter-spacing:-.075em;margin:22px 0 23px;font-size:clamp(48px,6.6vw,82px);font-weight:700;line-height:.93}.home-menu-intro h1 em{color:var(--wedding-peach);font-style:normal}.home-menu-intro p,.home-menu-note{color:#fff7f89e;margin:0;font-size:13px;line-height:1.5}.home-menu-note{position:absolute;bottom:clamp(22px,4vw,48px);left:clamp(22px,6vw,86px)}.home-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;margin:0 auto;display:grid}.home-menu-card{animation:home-menu-card-in .65s var(--ease-apple) both;animation-delay:calc(var(--home-card-index,0) * 70ms);color:#fff7f8;text-align:left;min-height:178px;transition:background .25s var(--ease-apple), border-color .25s var(--ease-apple), transform .25s var(--ease-apple);background:#ffffff13;border:1px solid #ffebef33;border-radius:24px;flex-direction:column;align-items:flex-start;padding:20px;display:flex;position:relative;box-shadow:inset 0 1px #ffffff1a,0 18px 35px #00000024}.home-menu-card:nth-child(2){animation-delay:70ms}.home-menu-card:nth-child(3){animation-delay:.14s}.home-menu-card:nth-child(4){animation-delay:.21s}.home-menu-card:hover{background:#ffffff24;border-color:#ffebef6b;transform:translateY(-4px)}.home-menu-card:active{transform:scale(.98)}.home-menu-card.rose{background:linear-gradient(145deg,#c45d7499,#5c253680)}.home-menu-card.blue{background:linear-gradient(145deg,#4a70b17a,#2524438a)}.home-menu-card.gold{background:linear-gradient(145deg,#bb915480,#4429238a)}.home-menu-card.dark{background:linear-gradient(145deg,#ffffff21,#29161fa3)}.home-menu-icon{color:var(--wedding-tea);background:#ffffff24;border:1px solid #ffffff2e;border-radius:13px;justify-content:center;align-items:center;width:45px;height:45px;display:inline-flex}.home-menu-card-copy{flex-direction:column;gap:6px;margin-top:auto;padding-top:26px;display:flex}.home-menu-card-copy strong{letter-spacing:-.03em;font-size:19px;font-weight:650}.home-menu-card-copy small{color:#fff7f8ad;font-size:11px;line-height:1.35}.home-menu-arrow{color:var(--wedding-peach);font-size:24px;position:absolute;top:18px;right:19px}@keyframes home-menu-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes home-menu-card-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.gallery-photo-only .gallery-only-grid .remote-media-image,.gallery-photo-only .gallery-only-grid .media-tile:hover .remote-media-image{background-color:var(--bg-2);background-repeat:no-repeat;background-size:contain;transform:none}.photo-viewer-top,.photo-viewer-menu,.photo-viewer-bottom,.photo-viewer-details{z-index:3}.photo-viewer-art .photo-viewer-image{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:min(66vh,690px)}.admin-open-badge{color:#319364;background:#63c38b24;border:.5px solid #63c38b47;border-radius:999px;flex:none;padding:7px 10px;font-size:10px;font-weight:650}.admin-content,.admin-page,.admin-layout,.admin-main,.admin-panel,.admin-two-col{overflow-x:clip}.theme-dark .admin-login-card{background:var(--glass-regular);border-color:var(--glass-border);color:var(--label)}.theme-dark .admin-login-card .field-label{color:var(--label)}.theme-dark .admin-login-card .text-input{background:var(--bg-cell);border-color:var(--glass-border);color:var(--label)}.theme-dark .admin-login-card .text-input::placeholder{color:var(--label-3)}@media (max-width:760px){.home-menu-screen{min-height:calc(100svh - 64px);padding:48px 18px 72px;display:block}.home-menu-intro h1{margin-bottom:17px;font-size:clamp(46px,14vw,66px)}.home-menu-intro p{font-size:12px}.home-menu-grid{gap:9px;margin-top:0}.home-menu-card{border-radius:19px;min-height:153px;padding:15px}.home-menu-card-copy{padding-top:18px}.home-menu-card-copy strong{font-size:16px}.home-menu-card-copy small{max-width:130px;font-size:10px}.home-menu-arrow{font-size:20px;top:14px;right:14px}.home-menu-note{font-size:11px;bottom:24px;left:18px}.admin-open-badge{padding:6px 8px;font-size:9px}.photo-viewer-art .photo-viewer-image{max-height:min(65vh,600px)}}@media (max-width:390px){.home-menu-screen{padding-left:14px;padding-right:14px}.home-menu-grid{grid-template-columns:1fr}.home-menu-card{min-height:112px}.home-menu-card-copy{padding-top:13px}.home-menu-icon{width:38px;height:38px}}@media (prefers-reduced-motion:reduce){.home-menu-intro,.home-menu-card{transition:none!important;animation:none!important}}.live-room{max-width:1220px;margin:0 auto;padding-bottom:86px}.live-room-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px;display:flex}.live-room-heading h1{margin:16px 0 13px;font-size:clamp(46px,6vw,78px)}.live-room-heading p{max-width:510px;margin:0}.live-eyebrow{align-items:center;gap:8px;display:inline-flex}.live-eyebrow:before{display:none}.live-eyebrow-dot,.live-room-state span,.live-badge>span,.admin-live-status>span{background:var(--tint);border-radius:50%;width:7px;height:7px;display:inline-block}.live-eyebrow-dot{box-shadow:0 0 0 5px var(--tint-soft);animation:1.8s ease-in-out infinite live-room-pulse}.live-room-state,.admin-live-status{background:var(--glass-regular);border:.5px solid var(--glass-border);color:var(--label-2);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:9px;min-height:38px;padding:0 14px;font-size:11px;display:inline-flex}.live-room-state span{background:var(--label-3);box-shadow:none}.live-room-state.is-live,.admin-live-status.is-live{color:var(--tint)}.live-room-state.is-live span,.admin-live-status.is-live>span{box-shadow:0 0 0 5px var(--tint-soft)}.live-room-state.is-paused,.admin-live-status.is-paused{color:#e5b26f}.live-room-state.is-paused span,.admin-live-status.is-paused>span{background:#e5b26f;box-shadow:0 0 0 5px #e5b26f29}.live-room-layout{grid-template-columns:minmax(0,1.6fr) minmax(300px,.82fr);align-items:stretch;gap:14px;min-width:0;display:grid}.live-stage-card,.live-comments-panel{background:var(--glass-regular);border:.5px solid var(--glass-border);box-shadow:var(--glass-shadow);min-width:0}.live-stage-card{color:#fff;background:linear-gradient(145deg,#1c1b22fa,#371d28f0);border-color:#ffffff2e;border-radius:30px;padding:12px;overflow:hidden}.live-stage-top{justify-content:space-between;align-items:center;min-height:38px;padding:0 7px;display:flex}.live-badge{color:#ffd8dd;letter-spacing:.13em;background:#dc5b7429;border:1px solid #f4bbc442;border-radius:999px;align-items:center;gap:7px;min-height:27px;padding:0 10px;font-size:9px;display:inline-flex}.live-badge>span{background:#f08fa3;width:6px;height:6px;box-shadow:0 0 0 4px #f08fa321}.live-badge.is-muted{color:#ffffff9e;background:#ffffff14;border-color:#ffffff24}.live-badge.is-muted>span{box-shadow:none;background:#ffffff80}.live-stage-time{color:#ffffff85;font-size:10px}.live-player{aspect-ratio:16/9;background:radial-gradient(circle at 50% 34%,#cd809133,#0000 30%),linear-gradient(145deg,#171923,#28151f 72%,#120f15);border:1px solid #ffffff1a;border-radius:22px;min-height:250px;position:relative;overflow:hidden}.live-player:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 35%,#ffffff14 50%,#0000 65%);animation:8s ease-in-out infinite live-room-sheen;position:absolute;inset:0;transform:translate(-100%)}.live-player-frame,.live-player-video{object-fit:cover;z-index:1;border:0;width:100%;height:100%;display:block;position:relative}.live-player-empty{color:#fffaf8;text-align:center;z-index:1;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:250px;padding:40px 20px;display:flex;position:relative}.live-player-empty strong{letter-spacing:-.025em;margin-top:22px;font-size:19px;font-weight:650}.live-player-empty small{color:#fffaf894;max-width:300px;margin-top:8px;font-size:11px;line-height:1.45}.live-player-orb{background:radial-gradient(circle at 35% 25%,#ffc9bc,#aa586e 42%,#31202c 75%);border:1px solid #ffffff54;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;display:flex;box-shadow:0 0 0 10px #ef91a00f,0 22px 50px #00000059}.live-player-orb:before,.live-player-orb:after,.live-player-orb>span{content:"";border:1px solid #ffffff38;border-radius:50%;position:absolute}.live-player-orb:before{width:112px;height:112px}.live-player-orb:after{opacity:.45;width:144px;height:144px}.live-player-orb>span{background:#fff5f2;border:0;width:10px;height:10px;box-shadow:0 0 21px #ffcac1db}.live-player-empty.is-ready .live-player-orb{animation:2.3s ease-in-out infinite live-room-pulse}.live-stage-caption{justify-content:space-between;align-items:center;gap:18px;padding:17px 8px 5px;display:flex}.live-stage-caption strong,.live-stage-caption small{display:block}.live-stage-caption strong{font-size:14px;font-weight:600}.live-stage-caption small{color:#ffffff87;margin-top:5px;font-size:10px}.live-stage-monogram{color:#f4bbc4;font-family:var(--serif);border:1px solid #fff3;border-radius:50%;flex:0 0 38px;justify-content:center;align-items:center;height:38px;font-size:12px;display:flex}.live-comments-panel{border-radius:30px;flex-direction:column;display:flex;overflow:hidden}.live-comments-heading,.admin-live-comments-heading{border-bottom:.5px solid var(--separator);justify-content:space-between;align-items:center;padding:24px 22px 17px;display:flex}.live-comments-heading h2{color:var(--label);letter-spacing:-.045em;margin:9px 0 0;font-size:24px}.live-comments-heading .eyebrow:before,.admin-live-comments-heading .eyebrow:before{display:none}.live-comments-count,.admin-live-comments-heading>span{background:var(--tint-soft);color:var(--tint);border-radius:999px;justify-content:center;align-items:center;min-width:29px;height:29px;font-size:11px;display:inline-flex}.live-comments-list{scrollbar-width:thin;flex-direction:column;flex:1;gap:15px;min-height:280px;max-height:430px;padding:19px 20px;display:flex;overflow-y:auto}.live-comment{align-items:flex-start;gap:10px;min-width:0;display:flex}.live-comment-avatar,.live-composer-avatar,.admin-live-comment-avatar{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--tint);border-radius:50%;flex:0 0 31px;justify-content:center;align-items:center;width:31px;height:31px;font-size:11px;font-weight:650;display:inline-flex}.live-comment-avatar img,.live-composer-avatar img,.admin-live-comment-avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.live-comment>div{min-width:0}.live-comment strong{color:var(--label);font-size:11px;font-weight:650;display:block}.live-comment p{color:var(--label-2);overflow-wrap:anywhere;margin:3px 0 0;font-size:12px;line-height:1.35}.live-comments-empty,.live-comments-loading{color:var(--label-2);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:190px;display:flex}.live-comments-empty>span{color:var(--tint);font-size:27px;line-height:1}.live-comments-empty strong,.live-comments-loading small{color:var(--label);margin-top:14px;font-size:12px}.live-comments-empty small{color:var(--label-2);margin-top:6px;font-size:10px}.live-comments-loading span{background:var(--tint);box-shadow:0 0 0 9px var(--tint-soft);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite live-room-pulse}.live-comment-composer{border-top:.5px solid var(--separator);padding:14px}.live-comment-input-row{background:var(--bg-2);border:.5px solid var(--glass-border);border-radius:999px;align-items:center;gap:8px;min-height:48px;padding:5px 6px 5px 7px;display:flex}.live-comment-input-row .live-composer-avatar{flex-basis:30px;width:30px;height:30px}.live-comment-input-row input{color:var(--label);font:inherit;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:8px 2px;font-size:12px}.live-comment-input-row input::placeholder{color:var(--label-3)}.live-comment-input-row button{background:var(--tint);color:#fff;border:0;border-radius:50%;flex:0 0 36px;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;line-height:1;display:inline-flex}.live-comment-input-row button:disabled{background:var(--label-3);cursor:default}.live-comment-login{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--label);text-align:left;border-radius:18px;align-items:center;gap:10px;width:100%;min-height:56px;padding:8px 10px;display:flex}.live-comment-login:hover{background:color-mix(in srgb, var(--tint-soft) 75%, var(--glass-regular))}.live-comment-login>span:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.live-comment-login strong{font-size:12px}.live-comment-login small,.live-composer-note{color:var(--label-2);font-size:10px}.live-comment-login-arrow{color:var(--tint);font-size:20px}.live-composer-note{text-align:center;padding:9px 4px 0;line-height:1.4;display:block}.live-room-alert,.admin-live-error{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--label-2);border-radius:15px;justify-content:space-between;align-items:center;gap:12px;margin:-12px 0 18px;padding:12px 14px;font-size:12px;display:flex}.live-room-alert button{color:var(--tint);background:0 0;border:0;min-height:32px;padding:5px 4px;font-size:11px}.admin-live-stream{max-width:1080px;margin:0 auto;padding-bottom:70px}.admin-live-stream-heading{justify-content:space-between;align-items:flex-end;gap:22px;display:flex}.admin-live-stream-heading h2{color:var(--label);letter-spacing:-.065em;margin:14px 0 0;font-size:clamp(38px,5vw,62px);line-height:.96}.admin-live-stream-heading h2 em{color:var(--tint);font-style:normal}.admin-live-stream-heading p{color:var(--label-2);max-width:555px;margin:13px 0 0;font-size:13px;line-height:1.45}.admin-live-stream .admin-live-error{margin:18px 0 0}.admin-live-stream-grid{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:13px;margin-top:28px;display:grid}.admin-live-stream-form,.admin-live-preview,.admin-live-comments{background:var(--glass-regular);border:.5px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:24px;min-width:0;padding:23px}.admin-live-stream-form{flex-direction:column;gap:9px;display:flex}.admin-live-stream-form label{color:var(--label);justify-content:space-between;margin-top:4px;font-size:12px;font-weight:650;display:flex}.admin-live-stream-form label span{color:var(--label-3);font-size:10px;font-weight:400}.admin-live-stream-form input,.admin-live-stream-form select{background:var(--bg-2);border:.5px solid var(--glass-border);color:var(--label);font:inherit;border-radius:13px;outline:0;width:100%;min-height:46px;padding:0 13px;font-size:13px}.admin-live-stream-form input:focus,.admin-live-stream-form select:focus{border-color:var(--tint);box-shadow:0 0 0 4px var(--tint-soft)}.admin-live-form-hint{color:var(--label-2);margin:2px 0 5px;font-size:10px;line-height:1.45}.admin-live-form-actions{flex-wrap:wrap;gap:8px;margin-top:5px;display:flex}.admin-live-form-actions .button{flex:190px;justify-content:center;min-height:46px}.admin-live-form-actions .button-danger{color:#bd4f68;background:0 0;border:.5px solid #cd4d6366}.admin-live-preview{flex-direction:column;display:flex}.admin-live-preview-card{color:#fff;background:linear-gradient(145deg,#24212b,#40222d);border:1px solid #ffffff26;border-radius:19px;flex:1;min-height:250px;margin-top:13px;padding:13px;position:relative;overflow:hidden}.admin-live-preview-card:before{content:"";pointer-events:none;background:radial-gradient(circle at 77% 19%,#f8b7bc5e,#0000 28%),radial-gradient(circle at 18% 89%,#b46f903b,#0000 31%);position:absolute;inset:0}.admin-live-preview-top,.admin-live-preview-copy{z-index:1;position:relative}.admin-live-preview-top{justify-content:space-between;align-items:center;display:flex}.admin-live-preview-top>span:last-child{color:#f3c3ca;font-family:var(--serif);font-size:12px}.admin-live-preview-copy{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:190px;display:flex}.admin-preview-orb{background:radial-gradient(circle at 30% 25%,#ffd8c9,#bd6878 42%,#37202c 74%);border:1px solid #ffffff59;border-radius:50%;width:55px;height:55px;margin-bottom:20px;box-shadow:0 0 0 9px #ffffff0a,0 20px 35px #00000040}.admin-live-preview-copy strong{font-size:17px}.admin-live-preview-copy small{color:#ffffff8f;margin-top:7px;font-size:10px}.admin-live-preview-note{color:var(--label-2);margin-top:12px;font-size:10px;line-height:1.45}.admin-live-preview-note strong{color:var(--tint);font-weight:600}.admin-live-comments{margin-top:13px;padding:0 23px 10px}.admin-live-comments-heading{margin:0 -23px}.admin-live-comments-heading h3{color:var(--label);letter-spacing:-.04em;margin:8px 0 0;font-size:20px}.admin-live-comments-list{max-height:340px;overflow-y:auto}.admin-live-comment-row{border-bottom:.5px solid var(--separator);align-items:center;gap:10px;min-width:0;padding:14px 0;display:flex}.admin-live-comment-row>div{min-width:0}.admin-live-comment-row strong{color:var(--label);font-size:11px;display:block}.admin-live-comment-row p{color:var(--label-2);overflow-wrap:anywhere;margin:3px 0 0;font-size:12px;line-height:1.35}.admin-live-comment-row button{background:var(--tint-soft);color:var(--tint);border:0;border-radius:999px;min-height:34px;margin-left:auto;padding:0 11px;font-size:10px}.admin-live-comment-row>small{color:var(--label-3);margin-left:auto;font-size:10px}.admin-live-comment-row.is-hidden{opacity:.52}.admin-live-comments-empty{color:var(--label-2);padding:22px 0;font-size:11px}.theme-dark .live-stage-card{background:linear-gradient(145deg,#15151d,#2b1824)}.theme-dark .live-comments-panel,.theme-dark .live-stage-card,.theme-dark .admin-live-stream-form,.theme-dark .admin-live-preview,.theme-dark .admin-live-comments{border-color:#ffffff26}.theme-dark .live-comment-input-row,.theme-dark .admin-live-stream-form input,.theme-dark .admin-live-stream-form select{background:#0a0a0e6b}.theme-dark .live-room-alert,.theme-dark .admin-live-error{background:#3d9bff1f}@keyframes live-room-pulse{0%,to{opacity:.72;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}@keyframes live-room-sheen{0%,45%{transform:translate(-100%)}67%,to{transform:translate(100%)}}@media (max-width:900px){.live-room-layout{grid-template-columns:minmax(0,1.3fr) minmax(260px,.9fr)}.live-comments-heading,.admin-live-comments-heading{padding-left:17px;padding-right:17px}.live-comments-list{padding-left:15px;padding-right:15px}.live-comment-composer{padding:11px}}@media (max-width:720px){.live-room{padding-bottom:30px}.live-room-heading{align-items:flex-start;margin-bottom:22px;display:block}.live-room-heading h1{margin:14px 0 11px;font-size:clamp(43px,14vw,65px)}.live-room-heading p{font-size:13px}.live-room-state{margin-top:18px}.live-room-layout{display:block}.live-stage-card{border-radius:25px;padding:8px}.live-stage-top{min-height:37px;padding:0 4px}.live-stage-time{font-size:9px}.live-player{aspect-ratio:4/3;border-radius:19px;min-height:230px}.live-player-empty{min-height:230px;padding:35px 15px}.live-player-empty strong{font-size:17px}.live-player-empty small{font-size:10px}.live-stage-caption{padding:14px 4px 4px}.live-stage-caption strong{font-size:12px}.live-stage-caption small{font-size:9px}.live-stage-monogram{flex-basis:34px;width:34px;height:34px}.live-comments-panel{border-radius:25px;margin-top:10px}.live-comments-heading{padding:18px 17px 14px}.live-comments-heading h2{font-size:21px}.live-comments-list{min-height:220px;max-height:none;padding:17px}.live-comment-composer{padding:11px}.live-room-alert{flex-direction:column;align-items:flex-start;margin:-5px 0 14px}.admin-live-stream{padding-bottom:25px}.admin-live-stream-heading{align-items:flex-start;display:block}.admin-live-stream-heading h2{font-size:clamp(39px,13vw,57px)}.admin-live-stream-heading p{font-size:12px}.admin-live-status{margin-top:16px}.admin-live-stream-grid{margin-top:20px;display:block}.admin-live-stream-form,.admin-live-preview,.admin-live-comments{border-radius:21px;padding:17px}.admin-live-stream-form label{flex-direction:column;align-items:flex-start;gap:4px}.admin-live-stream-form input,.admin-live-stream-form select{min-height:48px}.admin-live-preview{margin-top:10px}.admin-live-preview-card{min-height:210px}.admin-live-comments{margin-top:10px;padding-bottom:7px}.admin-live-comments-heading{margin-left:-17px;margin-right:-17px;padding:17px}.admin-live-comment-row button{min-height:40px}.mobile-bottom-nav button small{letter-spacing:-.02em;font-size:8px}.mobile-bottom-nav button{min-width:0}.mobile-bottom-nav button small{text-overflow:ellipsis;max-width:100%;overflow:hidden}}@media (max-width:380px){.live-stage-time{display:none}.live-player{aspect-ratio:1}.live-player-empty{min-height:245px}.live-player-orb{width:62px;height:62px}.mobile-bottom-nav button small{font-size:7px}}@media (prefers-reduced-motion:reduce){.live-eyebrow-dot,.live-player:after,.live-player-empty.is-ready .live-player-orb,.live-comments-loading span{animation:none!important}.live-room *,.admin-live-stream *{scroll-behavior:auto!important;transition:none!important}}.admin-content{max-width:none}.admin-page{max-width:1180px;margin:0 auto;padding:clamp(30px,5vw,58px) 0 74px}.admin-heading{align-items:flex-start;gap:28px}.admin-heading h1{color:var(--label);font-family:var(--font-stack);letter-spacing:-.06em;margin:17px 0 0;font-size:clamp(42px,5vw,68px);font-weight:700;line-height:.96}.admin-heading h1 em{color:var(--tint);font-style:normal}.admin-heading-copy{color:var(--label-2);margin:13px 0 0;font-size:15px;line-height:1.45}.admin-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.admin-heading-actions .button{margin-left:0}.admin-state-pill{background:var(--glass-regular);border:.5px solid var(--glass-border);color:var(--label-2);border-radius:999px;align-items:center;gap:8px;min-height:36px;padding:0 13px;font-size:11px;display:inline-flex}.admin-state-dot{background:#63c38b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #63c38b24}.admin-layout{grid-template-columns:214px minmax(0,1fr);align-items:start;gap:24px;margin-top:38px;display:grid}.admin-side-nav{background:var(--glass-regular);border:.5px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:22px;gap:3px;padding:8px;position:sticky;top:92px}.admin-side-nav>button{color:var(--label-2);text-align:left;min-height:48px;transition:background .2s var(--ease-apple), color .2s var(--ease-apple), transform .2s var(--ease-apple);background:0 0;border:0;border-radius:15px;justify-content:flex-start;align-items:center;gap:10px;width:100%;padding:0 12px;font-size:13px;display:flex}.admin-side-nav>button svg{color:currentColor;flex:0 0 17px}.admin-side-nav>button span{color:currentColor;font-family:var(--font-stack);width:auto;font-size:13px}.admin-side-nav>button:hover{background:var(--tint-soft);color:var(--label);transform:translate(2px)}.admin-side-nav>button b{background:var(--tint);color:#fff;text-align:center;border-radius:999px;min-width:22px;margin-left:auto;padding:4px 6px;font-size:10px}.admin-side-foot{border-color:var(--separator);margin:16px 5px 3px;padding:16px 7px 5px}.admin-side-foot>span{color:var(--label-3);letter-spacing:.07em;font-size:10px}.admin-side-foot strong{color:var(--label-2);font-size:11px}.admin-side-foot .integration-on{color:#55bd80}.admin-side-foot .integration-off{color:var(--label-3)}.admin-main{gap:12px;min-width:0;display:grid}.native-live-camera,.native-live-player{background:#08090e;border-radius:18px;min-height:250px;position:relative;overflow:hidden}.native-live-camera{aspect-ratio:16/9}.native-live-camera video,.native-live-player video{width:100%;height:100%;display:block}.native-live-camera video{object-fit:cover}.native-live-player video{object-fit:contain;z-index:1;position:relative}.native-live-camera-empty,.native-live-player-empty{color:#fffaf8;text-align:center;z-index:1;flex-direction:column;justify-content:center;align-items:center;min-height:250px;padding:25px;display:flex;position:absolute;inset:0}.native-live-camera-empty strong,.native-live-player-empty strong{font-size:15px;font-weight:650}.native-live-camera-empty small,.native-live-player-empty small{color:#fffaf899;max-width:280px;margin-top:7px;font-size:10px;line-height:1.4}.native-live-camera-icon{background:var(--tint-soft);color:var(--tint);border:1px solid #ffffff24;border-radius:50%;justify-content:center;align-items:center;width:57px;height:57px;margin-bottom:17px;font-size:24px;display:inline-flex}.native-live-camera-overlay,.native-live-viewer-overlay{pointer-events:none;z-index:3;justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.native-live-camera-status{color:#fffaf8b8;background:#0a0a0eb8;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:6px;padding:7px 9px;font-size:9px;display:inline-flex}.native-live-camera-status>span{background:#ffffff8c;border-radius:50%;width:6px;height:6px}.native-live-camera-status.is-live{color:#ffcbd3}.native-live-camera-status.is-live>span{background:#f18ea3;box-shadow:0 0 0 4px #f18ea32e}.native-live-viewers{color:#fffaf8;white-space:nowrap;background:#0a0a0eb8;border:1px solid #ffffff24;border-radius:999px;padding:7px 9px;font-size:9px}.native-live-player-paused{color:#fffaf8;text-align:center;z-index:2;background:#08090ed1;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.native-live-player-paused strong{font-size:16px;font-weight:650}.native-live-player-paused small{color:#fffaf89e;margin-top:7px;font-size:10px;line-height:1.4}.native-live-player{height:100%;min-height:250px}.native-live-player-empty{z-index:2}.live-stage-meta{align-items:center;gap:10px;display:flex}.live-viewer-count{color:#ffffffad;white-space:nowrap;align-items:center;gap:6px;font-size:10px;display:inline-flex}.live-viewer-count>span{background:var(--tint);border-radius:50%;width:6px;height:6px}.live-comment-profile-link{color:var(--tint);text-align:left;background:0 0;border:0;padding:2px 4px;font-size:10px}.admin-native-explainer{background:var(--tint-soft);border:.5px solid var(--glass-border);border-radius:15px;align-items:flex-start;gap:10px;margin-top:7px;padding:12px;display:flex}.admin-native-explainer-icon{background:var(--tint);color:#fff;border-radius:50%;flex:0 0 26px;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;display:inline-flex}.admin-native-explainer>div{flex-direction:column;gap:4px;display:flex}.admin-native-explainer strong{color:var(--label);font-size:12px}.admin-native-explainer small{color:var(--label-2);font-size:10px;line-height:1.4}.admin-native-preview-card{padding:8px}.admin-native-preview-card .native-live-camera{border-radius:16px;min-height:245px}.admin-native-camera-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:9px;display:grid}.admin-native-camera-control{background:var(--bg-2);border:.5px solid var(--glass-border);color:var(--label-2);min-height:57px;transition:background .2s var(--ease-apple), border-color .2s var(--ease-apple), color .2s var(--ease-apple), transform .2s var(--ease-apple);border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 6px;display:flex}.admin-native-camera-control:hover{background:var(--tint-soft);color:var(--label);transform:translateY(-1px)}.admin-native-camera-control.is-active{background:var(--tint-soft);border-color:var(--tint);color:var(--tint)}.admin-native-camera-control:disabled{cursor:wait;opacity:.55;transform:none}.admin-native-camera-control-icon{font-size:18px;line-height:1}.admin-native-camera-control small{text-align:center;font-size:9px;line-height:1.1}.admin-native-preview-meta{color:var(--label-2);flex-wrap:wrap;justify-content:space-between;gap:7px;margin-top:10px;font-size:10px;line-height:1.4;display:flex}.admin-native-preview-meta span{background:var(--bg-2);border:.5px solid var(--glass-border);border-radius:999px;padding:6px 9px}.admin-native-preview-meta .is-connected{color:var(--tint)}.admin-native-preview-meta .is-muted{color:#d47788}.native-camera-error{margin-top:12px!important}.native-live-footnote{margin-top:12px}.admin-live-tab-shell.is-hidden{display:none}@media (max-width:640px){.native-live-camera,.native-live-player{min-height:230px}.admin-native-preview-card .native-live-camera{min-height:210px}.admin-native-camera-control{min-height:54px}.live-stage-meta{gap:6px}.live-viewer-count{font-size:9px}}.admin-notice{border-radius:14px;margin:0}.admin-event-card{box-shadow:var(--glass-shadow);border-radius:24px;align-items:center;min-height:86px;padding:17px 20px}.admin-event-card>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.admin-event-card strong{color:var(--label);font-size:15px;font-weight:650}.admin-event-card small{font-size:10px}.admin-event-icon{background:var(--tint-soft);color:var(--tint);border-radius:14px;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;margin-right:12px;display:inline-flex}.admin-event-card>b{color:#319364;white-space:nowrap;background:#63c38b24;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:650}.admin-welcome{border:.5px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:24px;padding:25px 27px 26px}.admin-welcome h2{color:var(--label);font-family:var(--font-stack);letter-spacing:-.06em;margin:13px 0 0;font-size:clamp(31px,4vw,47px);font-weight:700;line-height:.98}.admin-welcome h2 em{color:var(--tint);font-style:normal}.admin-event-subtitle{color:var(--label-2);margin:9px 0 0;font-size:13px}.admin-date{color:var(--tint);letter-spacing:.07em;font-size:10px;font-weight:650}.stats-grid{margin:0}.stat-card{border:.5px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:19px;min-height:100px;padding:16px}.stat-card strong{color:var(--label);font-size:28px}.stat-card span{color:var(--label-2);font-size:11px}.admin-two-col{gap:12px}.admin-panel{box-shadow:var(--glass-shadow);border-radius:22px;min-width:0;padding:22px}.admin-panel.pale{border:.5px solid var(--glass-border)}.admin-panel.full{min-height:0}.admin-points-reset-panel{background:var(--tint-soft);border-color:var(--glass-border);justify-content:space-between;align-items:center;gap:20px;margin-top:0;display:flex}.admin-points-reset-copy{min-width:0}.admin-points-reset-copy .eyebrow{color:var(--tint)}.admin-points-reset-copy h3{color:var(--label);font-family:var(--font-stack);letter-spacing:-.02em;margin:8px 0 5px;font-size:16px;font-weight:650}.admin-points-reset-copy p{color:var(--label-2);max-width:620px;margin:0;font-size:11px;line-height:1.45}.admin-points-reset-button{border-color:var(--tint);color:var(--tint);flex:none;min-height:42px}.admin-points-reset-button:hover{background:var(--tint);color:var(--paper)}.admin-panel-lead{color:var(--label-2);margin:-7px 0 20px;font-size:14px;line-height:1.45}.panel-heading{align-items:flex-start;margin-bottom:18px}.panel-heading h2,.panel-heading h3{color:var(--label);font-family:var(--font-stack);letter-spacing:-.035em;margin:8px 0 0;font-size:22px;font-weight:650}.panel-heading h2{font-size:29px}.panel-heading .eyebrow:before{display:inline-block}.queue-count{color:var(--label-3);font-family:var(--font-stack);font-size:11px}.mini-stat{border-color:var(--separator);padding:14px 0}.mini-stat span{color:var(--label-2);font-size:12px}.mini-stat strong{color:var(--tint);font-family:var(--font-stack);font-size:17px;font-weight:650}.admin-data-state{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--label-2);border-radius:15px;flex-direction:column;align-items:flex-start;gap:5px;padding:17px;display:flex}.admin-data-state strong{color:var(--label);font-size:13px}.admin-data-state>span:not(.admin-loading-bar){font-size:11px;line-height:1.4}.admin-data-state.is-error{background:#d65d591a;border-color:#d65d5942}.admin-data-state .button{margin-top:8px}.admin-loading-bar{background:linear-gradient(90deg, var(--tint-soft), var(--tint), var(--tint-soft));border-radius:99px;width:100%;height:4px;margin-bottom:4px;display:block;position:relative;overflow:hidden}.admin-loading-bar:after{content:"";background:#ffffffb3;width:34%;height:100%;animation:1.2s ease-in-out infinite admin-loading-sheen;position:absolute;top:0;left:0}@keyframes admin-loading-sheen{0%{transform:translate(-120%)}to{transform:translate(390%)}}.moderation-row{border-color:var(--separator);align-items:center;gap:12px;min-width:0;padding:12px 0}.moderation-thumb{border-radius:13px;flex:0 0 56px;height:56px;overflow:hidden}.moderation-thumb>video,.moderation-remote-thumb{object-fit:cover;width:100%;height:100%;display:block}.moderation-remote-thumb{background-position:50%;background-repeat:no-repeat;background-size:cover}.moderation-copy strong{color:var(--label);font-family:var(--font-stack);font-size:13px;font-weight:600}.moderation-copy span,.moderation-copy small{color:var(--label-2);font-size:10px}.moderation-copy small{color:var(--tint)}.moderation-status{color:var(--label-2);white-space:nowrap;font-size:9px}.moderation-actions{gap:3px}.moderation-actions button{border-radius:50%;justify-content:center;align-items:center;width:42px;min-width:42px;height:42px;padding:0;display:inline-flex}.moderation-actions button:hover{background:var(--tint-soft)}.moderation-guide{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--label-2);border-radius:15px;flex-wrap:wrap;align-items:center;gap:8px 17px;margin:-5px 0 15px;padding:12px 14px;display:flex}.moderation-guide>strong{color:var(--label);flex:0 0 100%;font-size:11px;font-weight:650}.moderation-guide>span{font-size:10px;line-height:1.35}.moderation-guide b{color:var(--label);font-weight:650}.moderation-actions .moderation-action{border:.5px solid var(--glass-border);color:var(--label-2);border-radius:999px;flex:none;justify-content:center;align-items:center;gap:6px;width:auto;min-width:0;height:44px;padding:0 12px;font-size:10px;font-weight:650;display:inline-flex}.moderation-actions .moderation-action>span:first-child{font-size:14px;line-height:1}.moderation-actions .moderation-action:hover{background:var(--tint-soft)}.moderation-actions .moderation-action:focus-visible{outline:2px solid var(--tint);outline-offset:2px}.moderation-actions .moderation-action-primary{color:#319364;background:#63c38b24;border-color:#63c38b47}.moderation-actions .moderation-action-danger{color:#c05a55;background:#d65d591a;border-color:#d65d593d}.moderation-actions .moderation-action.moderation-action-neutral{color:var(--label-2);background:#ffffff0f}.admin-list{border-color:var(--separator)}.admin-list-row{border-color:var(--separator);min-height:68px}.admin-list-row strong{color:var(--label);font-family:var(--font-stack);font-size:13px;font-weight:600}.admin-list-row small{color:var(--label-2);font-size:10px}.active-tag{color:#319364;background:#63c38b24;border-radius:999px}.unlock-panel{background:linear-gradient(135deg, var(--glass-regular), var(--glass-clear))}.unlock-row{border-color:var(--separator);gap:11px;min-height:68px;padding:10px 0}.unlock-index{color:var(--label-3);font-family:var(--font-stack);font-size:10px}.unlock-icon{background:var(--tint-soft);color:var(--tint);font-family:var(--font-stack);border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;display:inline-flex}.unlock-copy strong{color:var(--label);font-size:13px;font-weight:600}.unlock-copy em{color:var(--tint);font-size:10px}.unlock-toggle{min-height:44px}.unlock-toggle>span{color:var(--label-2);font-size:9px}.people-panel,.people-directory-panel{margin-top:0}.people-admin-row{border-color:var(--separator);gap:12px;padding:12px 0}.people-admin-copy strong{color:var(--label);font-size:12px}.people-admin-copy small{color:var(--label-2);font-size:10px}.people-admin-input{border-radius:12px;min-height:42px;margin-top:7px}.people-directory-group+.people-directory-group{margin-top:20px}.directory-group-heading{border-color:var(--separator)}.people-directory-row{border-color:var(--separator);min-height:58px}.people-directory-copy strong{color:var(--label);font-size:12px}.directory-state{background:var(--tint-soft);color:var(--label-2);border-radius:14px;padding:15px;font-size:12px}.settings-list{border-color:var(--separator)}.setting-toggle{border-color:var(--separator);min-height:70px}.setting-toggle strong{color:var(--label);font-family:var(--font-stack);font-size:14px;font-weight:600}.setting-toggle small{color:var(--label-2);font-size:11px}.setting-toggle i{background:var(--label-3)}.setting-toggle input:checked+i{background:#55bd80}.phase-settings,.config-table{border-color:var(--separator)}.phase-button{border-color:var(--glass-border);border-radius:999px;min-height:42px}.phase-button.active{background:var(--tint);border-color:var(--tint)}.config-table>div{border-color:var(--separator);padding:14px 0}.config-table span{color:var(--label-2)}.config-table strong{color:var(--label);font-size:11px}.admin-main{grid-template-columns:minmax(0,1fr)}.admin-main>*{min-width:0;max-width:100%}.admin-quiz-shell{width:100%;min-width:0}.admin-quiz-shell .admin-game-control{width:100%;min-width:0;max-width:100%;margin-top:0}.admin-activity-card{min-width:0}.admin-game-error{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-game-error>span{min-width:0}.admin-game-retry{color:inherit;background:0 0;border:.5px solid;border-radius:999px;flex:none;min-height:36px;padding:0 12px;font-size:10px}.admin-game-retry:hover{background:#ffffff1a}.admin-quiz-source-note{background:#fff1;border:1px solid #ffffff21;border-radius:17px;align-items:center;gap:14px;margin-top:28px;padding:17px;display:flex}.admin-quiz-source-icon{color:#a9e0ba;background:#8dd3a629;border:1px solid #8dd3a64d;border-radius:50%;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.admin-quiz-source-note strong{color:#fffaf8;margin-top:6px;font-size:13px;display:block}.admin-quiz-source-note p{color:#fffaf88f;margin:5px 0 0;font-size:10px;line-height:1.45}.theme-dark .admin-login-card{background:var(--paper)}.theme-dark .admin-event-card,.theme-dark .admin-welcome,.theme-dark .admin-panel,.theme-dark .admin-side-nav,.theme-dark .admin-state-pill{background-color:var(--glass-regular)}.theme-dark .admin-welcome{background-image:linear-gradient(135deg,#ee9aaa29,#2d1e23b8)}.theme-dark .admin-panel.pale{background:#35232ab8}.theme-dark .admin-points-reset-panel{background:#ee9aaa1f;border-color:#ee9aaa4d}.theme-dark .unlock-panel{border-color:var(--glass-border);background:linear-gradient(135deg,#2d1e23e0,#191216c2)}.theme-dark .admin-event-card>b{color:#8fe0ac}.theme-dark .admin-data-state.is-error{color:#ffd6d2}@media (max-width:720px){.admin-content{padding-left:16px;padding-right:16px}.admin-page{padding:30px 0 48px}.admin-heading{gap:18px}.admin-heading h1{font-size:46px}.admin-heading-copy{font-size:14px}.admin-heading-actions{justify-content:flex-start;width:100%}.admin-layout{margin-top:28px;display:block}.admin-side-nav{scrollbar-width:none;flex-direction:row;align-items:stretch;gap:3px;margin-bottom:12px;padding:6px;display:flex;position:static;overflow-x:auto}.admin-side-nav::-webkit-scrollbar{display:none}.admin-side-nav>button{flex:none;width:auto;min-height:44px;padding:0 12px}.admin-side-nav>button span{font-size:12px}.admin-side-nav>button b{margin-left:2px}.admin-side-foot{display:none}.admin-event-card{border-radius:19px;align-items:flex-start;padding:15px}.admin-event-icon{flex-basis:38px;width:38px;height:38px;margin-right:9px}.admin-event-card>b{align-self:center;font-size:9px}.admin-event-card strong{font-size:13px}.admin-event-card span,.admin-event-card small{font-size:10px}.admin-welcome{border-radius:19px;flex-direction:column;align-items:flex-start;gap:13px;padding:20px 18px}.admin-welcome h2{font-size:34px}.stats-grid{gap:8px}.stat-card{min-height:84px;padding:13px}.stat-card strong{font-size:24px}.admin-two-col{grid-template-columns:1fr}.admin-panel{border-radius:19px;padding:17px 15px}.admin-points-reset-panel{flex-direction:column;align-items:stretch;gap:15px}.admin-points-reset-button{width:100%}.panel-heading h2{font-size:25px}.admin-panel-lead,.unlock-intro{font-size:12px}.moderation-row{flex-wrap:wrap;align-items:flex-start}.moderation-copy{flex:calc(100% - 70px)}.moderation-status{margin-left:68px}.moderation-actions{flex-wrap:wrap;gap:7px;width:calc(100% - 68px);margin-left:68px}.moderation-actions .moderation-action{flex:108px}.people-admin-row{flex-wrap:wrap;align-items:flex-start}.people-admin-copy{flex:calc(100% - 70px)}.people-admin-row>.button{margin-left:68px}.admin-list-row{align-items:flex-start;padding:12px 0}.admin-list-row .active-tag{margin-left:auto;display:inline-flex}.phase-settings>div{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.phase-button{padding:0 7px;font-size:10px}.config-table{margin-top:24px}}@media (prefers-reduced-motion:reduce){.admin-loading-bar:after,.admin-page *{transition:none!important;animation:none!important}}.wedding-app:not(.theme-dark) .sidebar-label,.wedding-app:not(.theme-dark) .eyebrow,.wedding-app:not(.theme-dark) .inline-link,.wedding-app:not(.theme-dark) .back-link,.wedding-app:not(.theme-dark) .home-kicker,.wedding-app:not(.theme-dark) .library-kicker,.wedding-app:not(.theme-dark) .side-link,.wedding-app:not(.theme-dark) .locked-page>p{color:#6f555d}.wedding-app:not(.theme-dark) .locked-page .button-dark{background:#a6455f}@media (max-width:390px){.guest-chip{border:0;padding:0}.guest-chip>span:last-child{display:none}.brand-button small{letter-spacing:.08em}.feature-card{min-height:196px}.feature-text strong{font-size:16px}.feature-text>span{font-size:9px}.challenge-card{min-height:209px}.challenge-card h3{font-size:17px}.upload-aside{display:block}.upload-aside .aside-card+.aside-card{margin-top:8px}.result-stats{grid-template-columns:1fr}.result-stats .stat-card{justify-content:space-between;align-items:center;display:flex}.result-stats .stat-card span{margin-top:0}.demo-notice{font-size:7px}}@media print{body{background:#fff}.wedding-app,.app-topbar,.app-sidebar,.mobile-bottom-nav,.mobile-page-title,.demo-notice,.qr-actions,.app-footer{display:none!important}.qr-page{max-width:none;padding:0;display:block!important}.qr-page .page-intro,.qr-page .qr-actions{display:none}.qr-layout{margin:0;display:block}.qr-card{border:0;max-width:500px;margin:0 auto;padding:0}.qr-preview{width:360px;height:360px}.qr-card strong{font-size:27px}.print-copy{text-align:center;max-width:500px;margin:28px auto;display:block}.print-copy span{color:var(--gold-deep);font-family:var(--serif);font-size:20px}.print-copy strong{font-family:var(--serif);margin-top:15px;font-size:28px;font-weight:400;display:block}.print-copy p{color:var(--muted);font-size:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.integration-on{color:#3c8b6a;margin-top:9px;font-size:9px;font-weight:700;display:block}.people-directory-panel{max-width:1120px;margin:28px auto 48px}.people-directory-panel>.placeholder-note{max-width:720px;margin:18px 0 25px}.people-directory-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;display:grid}.people-directory-group{min-width:0}.directory-group-heading{border-bottom:1px solid var(--border-soft);color:var(--text-strong);justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 0 10px;font-size:11px;display:flex}.directory-group-heading span{color:var(--text-soft);font-size:10px}.people-directory-list{flex-direction:column;display:flex}.people-directory-row{border-bottom:1px solid #e3e8efb8;align-items:center;gap:11px;min-height:58px;padding:8px 0;display:flex}.people-directory-avatar{background-color:var(--blue-soft);color:var(--blue-dark);background-position:50%;background-size:cover;border-radius:13px;flex:0 0 42px;justify-content:center;align-items:center;height:42px;font-size:13px;font-weight:700;display:inline-flex;overflow:hidden}.people-directory-avatar img{object-fit:cover;width:100%;height:100%}.people-directory-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.people-directory-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.people-directory-copy small{color:var(--text-soft);font-size:9px}.people-directory-row>a{color:var(--blue);margin-left:auto;padding:5px;font-size:18px}.directory-state{background:var(--surface-soft);border:1px dashed var(--border-soft);color:var(--text-soft);border-radius:14px;padding:17px;font-size:11px}@media (max-width:720px){.people-directory-panel{margin-top:18px}.people-directory-groups{grid-template-columns:1fr}}:root{--app-bg:#f4f6f8;--surface:#fff;--surface-soft:#f8fafc;--blue:#356bd3;--blue-dark:#214eaf;--blue-soft:#eaf1ff;--green-soft:#e7f5ef;--peach-soft:#fff0e8;--lavender-soft:#f0edff;--text-strong:#1f2937;--text-soft:#697586;--border-soft:#e3e8ef}body{background:var(--app-bg);color:var(--text-strong);overflow-x:hidden}.app-topbar{border-bottom-color:var(--border-soft);z-index:30;background:#ffffffeb;position:sticky;top:0}.brand-button strong{color:var(--text-strong)}.brand-button small,.demo-notice,.guest-chip{color:var(--text-soft)}.guest-chip{border-color:var(--border-soft);border-radius:999px}.guest-avatar{background-color:var(--blue-soft);color:var(--blue-dark)}.app-sidebar{border-right-color:var(--border-soft);background:#f8fafc}.sidebar-label,.eyebrow,.inline-link,.back-link{color:var(--blue-dark)}.mobile-bottom-nav{border-top-color:var(--border-soft);background:#fffffff5}.mobile-bottom-nav button.active{color:var(--blue)}.home-screen{max-width:820px;margin:0 auto;padding:46px 0 48px}.home-screen-top{justify-content:space-between;align-items:center;display:flex}.home-brand{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:13px;font-size:10px;display:flex}.home-greeting{background:var(--surface);border:1px solid var(--border-soft);color:var(--text-soft);border-radius:999px;padding:9px 13px;font-size:10px}.home-welcome{max-width:580px;margin:72px 0 32px}.home-kicker,.library-kicker{color:var(--blue);letter-spacing:.11em;text-transform:uppercase;font-size:11px;font-weight:700}.home-welcome h1{color:var(--text-strong);font-family:var(--sans);letter-spacing:-.08em;margin:16px 0 20px;font-size:clamp(46px,7vw,76px);font-weight:700;line-height:.93}.home-welcome h1 em,.library-heading h1 em{color:var(--blue);font-style:normal}.home-welcome p{color:var(--text-soft);max-width:390px;margin:0;font-size:15px;line-height:1.55}.action-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.action-card{text-align:left;border:0;border-radius:24px;flex-direction:column;align-items:flex-start;min-height:224px;padding:22px;transition:box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.action-card:after{content:"";opacity:.12;border:1px solid;border-radius:50%;width:160px;height:160px;position:absolute;top:-42px;right:-45px}.action-card:hover{transform:translateY(-3px);box-shadow:0 16px 30px #2d436224}.action-card.primary{background:var(--blue);color:#fff}.action-card.mint{background:var(--green-soft);color:#1d5f4a}.action-card.peach{background:var(--peach-soft);color:#a95c3d}.action-card.lavender{background:var(--lavender-soft);color:#5c50a5}.action-card-number{color:currentColor;opacity:.55;font-size:10px;font-weight:700}.action-card-icon{border:1px solid;border-radius:13px;justify-content:center;align-items:center;width:46px;height:46px;margin:22px 0 17px;font-size:23px;display:flex}.action-card-copy{flex-direction:column;gap:6px;max-width:230px;display:flex}.action-card-copy small{letter-spacing:.11em;opacity:.7;text-transform:uppercase;font-size:9px;font-weight:700}.action-card-copy strong{color:inherit;letter-spacing:-.03em;font-size:20px;font-weight:700}.action-card-copy>span{color:inherit;opacity:.76;font-size:12px;line-height:1.4}.action-card-arrow{font-size:22px;position:absolute;bottom:20px;right:22px}.home-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px;display:grid}.home-quick-actions button{background:var(--surface);border:1px solid var(--border-soft);color:var(--text-strong);text-align:left;border-radius:18px;align-items:center;gap:12px;min-height:72px;padding:13px 15px;display:flex}.quick-icon{background:var(--blue-soft);color:var(--blue);border-radius:11px;flex:0 0 34px;justify-content:center;align-items:center;height:34px;font-size:18px;display:inline-flex}.home-quick-actions button:nth-child(2) .quick-icon{background:var(--peach-soft);color:#b56c4c}.home-quick-actions button span:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}.home-quick-actions small{color:var(--text-soft);font-size:10px;line-height:1.25}.home-quick-actions b{color:var(--blue);margin-left:auto;font-size:18px;font-weight:400}.home-screen-footer{border-top:1px solid var(--border-soft);color:var(--text-soft);justify-content:space-between;align-items:center;margin-top:52px;padding-top:18px;font-size:10px;display:flex}.home-screen-footer span:first-child{color:var(--blue-dark);font-family:var(--serif);font-size:18px}.share-library{max-width:920px;margin:0 auto;padding:34px 0 66px}.library-topbar{justify-content:space-between;align-items:center;display:flex}.library-back{color:var(--text-soft);background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:11px;display:inline-flex}.library-back:hover{color:var(--blue)}.library-back span{font-size:19px}.library-account{align-items:center;gap:9px;display:flex}.library-account>span:last-child{flex-direction:column;gap:3px;display:flex}.library-account strong{font-size:11px}.library-avatar{background:var(--blue);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:31px;height:31px;font-size:11px;display:inline-flex}.library-heading{justify-content:space-between;align-items:flex-end;margin:58px 0 30px;display:flex}.library-heading h1{color:var(--text-strong);font-family:var(--sans);letter-spacing:-.08em;margin:15px 0 17px;font-size:clamp(42px,6vw,66px);font-weight:700;line-height:.93}.library-heading p{color:var(--text-soft);max-width:420px;margin:0;font-size:14px;line-height:1.55}.library-count{color:var(--text-soft);align-items:center;gap:8px;padding-bottom:5px;display:flex}.library-count strong{color:var(--blue);letter-spacing:-.06em;font-size:30px;font-weight:700}.library-count small{text-transform:uppercase;font-size:9px;line-height:1.25}.library-upload-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:22px;justify-content:space-between;align-items:center;padding:15px;display:flex;box-shadow:0 8px 22px #394e6c0f}.library-upload-copy{align-items:center;gap:12px;display:flex}.folder-mark{background:var(--blue-soft);color:var(--blue);border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:19px;display:inline-flex}.library-upload-copy>div{flex-direction:column;gap:5px;display:flex}.library-upload-copy strong{font-size:13px}.library-upload-button{background:var(--blue);color:#fff;cursor:pointer;border-radius:15px;align-items:center;gap:10px;min-height:54px;padding:0 17px;transition:background .2s,transform .2s;display:flex}.library-upload-button:hover{background:var(--blue-dark);transform:translateY(-1px)}.library-upload-button input,.empty-upload-link+input{opacity:0;width:1px;height:1px;position:absolute}.library-upload-button>span{font-size:21px;font-weight:300}.library-upload-button small{display:none}.share-library>.inline-error{margin-top:13px}.library-settings{grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;display:grid}.settings-label{color:var(--text-soft);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:700;display:block}.settings-label small{letter-spacing:0;text-transform:none;font-size:8px;font-weight:400}.library-settings .text-input{background:0 0;border:0;min-height:29px;padding:0;font-size:12px}.library-settings .text-input:focus{border:0}.library-section-heading{justify-content:space-between;align-items:flex-end;margin:42px 0 14px;display:flex}.library-section-heading>div{flex-direction:column;gap:5px;display:flex}.library-section-heading strong{letter-spacing:-.03em;font-size:17px}.library-section-heading button{color:var(--blue);background:0 0;border:0;padding:0;font-size:10px}.library-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.library-upload-grid .upload-item{background:var(--surface);border:1px solid var(--border-soft);box-shadow:none;border-radius:17px;gap:11px;min-width:0;padding:10px}.library-upload-grid .upload-thumb{border-radius:11px;flex-basis:62px;height:62px;overflow:hidden}.library-upload-grid .upload-item-main{min-width:0}.library-upload-grid .upload-item-top{display:block}.library-upload-grid .upload-item-top strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.library-upload-grid .upload-item-top span{margin-top:5px;font-size:9px;display:block}.library-upload-grid .progress-track{height:5px;margin:8px 0 6px}.library-upload-grid .upload-item-main>small{font-size:9px}.library-upload-grid .upload-item-main code{font-size:8px;line-height:1.3}.library-upload-grid .upload-item-actions{align-self:flex-start}.upload-thumb.has-preview{background-position:50%;background-size:cover}.upload-thumb video{object-fit:cover;width:100%;height:100%;display:block}.upload-media-icon{justify-content:center;align-items:center;display:inline-flex}.upload-error-copy{color:#a95c3d;margin-top:5px;font-size:9px;line-height:1.3}.library-empty{background:var(--surface);text-align:center;border:1px dashed #c9d5e4;border-radius:22px;flex-direction:column;align-items:center;min-height:242px;padding:30px 25px;display:flex}.empty-camera{background:var(--blue-soft);color:var(--blue);border-radius:16px;justify-content:center;align-items:center;width:58px;height:58px;font-size:28px;display:inline-flex}.library-empty strong{margin-top:15px;font-size:16px}.library-empty p{color:var(--text-soft);max-width:310px;margin:9px 0 17px;font-size:11px;line-height:1.5}.empty-upload-link{color:var(--blue);cursor:pointer;font-size:11px;font-weight:700}.empty-upload-link span{margin-left:7px;font-size:16px}.library-approved{margin-top:37px}.library-approved .library-section-heading{margin-top:0}.library-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.library-photo-grid .media-tile{background:var(--surface);border:1px solid var(--border-soft);border-radius:15px;padding:0;overflow:hidden}.library-photo-grid .media-art{aspect-ratio:1;height:auto}.library-photo-grid .media-meta{gap:4px;padding:9px}.library-photo-grid .media-meta span{font-size:8px}.library-photo-grid .media-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.library-privacy{background:var(--green-soft);color:#356b57;border-radius:16px;align-items:flex-start;gap:10px;margin-top:31px;padding:14px 15px;display:flex}.library-privacy>span{background:#d1ecdf;border-radius:50%;flex:0 0 21px;justify-content:center;align-items:center;height:21px;font-size:12px;display:inline-flex}.library-privacy strong{color:#245740;margin-bottom:4px;font-size:11px;display:block}.library-privacy p{color:#527966;margin:0;font-size:10px;line-height:1.45}@media (max-width:720px){.app-topbar{height:62px;padding:0 16px}.app-content{padding:0 16px 92px}.app-content>.demo-notice,.mobile-page-title,.wedding-app[data-view=home] .mobile-bottom-nav{display:none}.wedding-app[data-view=home] .app-content{padding-bottom:24px}.wedding-app[data-view=home] .mobile-back{display:none}.wedding-app[data-view=home] .brand-button{margin-left:0}.brand-button{gap:9px}.brand-button strong{font-size:11px}.brand-button small{font-size:7px}.guest-chip{border:0;padding:0;font-size:10px}.home-screen{padding:28px 0 24px}.home-screen-top{align-items:flex-start;gap:12px}.home-brand{flex-direction:column;align-items:flex-start;gap:5px}.home-brand .app-logo{font-size:20px}.home-brand>span{font-size:8px}.home-greeting{padding:8px 10px;font-size:9px}.home-welcome{margin:53px 0 27px}.home-welcome h1{margin:13px 0 16px;font-size:clamp(44px,14vw,61px)}.home-welcome p{max-width:300px;font-size:13px}.action-menu{grid-template-columns:1fr;gap:10px}.action-card{border-radius:21px;min-height:134px;padding:17px}.action-card:after{width:120px;height:120px;top:-35px;right:-36px}.action-card-icon{border-radius:11px;width:38px;height:38px;margin:0 0 13px;font-size:19px}.action-card-copy{gap:4px;max-width:calc(100% - 30px)}.action-card-copy small{font-size:8px}.action-card-copy strong{font-size:17px}.action-card-copy>span{font-size:10px}.action-card-arrow{font-size:19px;bottom:17px;right:17px}.home-quick-actions{grid-template-columns:1fr;gap:8px;margin-top:12px}.home-quick-actions button{min-height:63px}.home-screen-footer{margin-top:39px;font-size:8px}.home-screen-footer span:first-child{font-size:16px}.share-library{padding:25px 0 40px}.library-topbar{align-items:flex-start}.library-back,.library-account strong{font-size:10px}.library-account small{font-size:8px}.library-avatar{width:28px;height:28px}.library-heading{align-items:flex-start;margin:44px 0 24px}.library-heading h1{margin:12px 0 13px;font-size:clamp(39px,12vw,54px)}.library-heading p{max-width:280px;font-size:12px}.library-count{display:none}.library-upload-card{border-radius:19px;flex-direction:column;align-items:stretch;gap:13px;padding:13px}.library-upload-button{justify-content:center;min-height:51px}.library-upload-button small{opacity:.73;font-size:9px;display:inline}.library-settings{grid-template-columns:1fr}.library-section-heading{margin-top:35px}.library-section-heading strong{font-size:15px}.library-upload-grid{grid-template-columns:1fr}.library-upload-grid .upload-item{min-height:83px}.library-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.library-photo-grid .media-meta{padding:7px}}@media (max-width:390px){.home-welcome{margin-top:43px}.home-kicker,.library-kicker{font-size:9px}.action-card{min-height:128px}.action-card-copy strong{font-size:16px}.library-upload-copy strong{font-size:12px}}.view-stage{min-height:1px;animation:.42s cubic-bezier(.22,1,.36,1) both view-in}.home-screen{isolation:isolate;position:relative;overflow:hidden}.home-screen:before,.home-screen:after{content:"";pointer-events:none;z-index:-1;border-radius:50%;position:absolute}.home-screen:before{background:radial-gradient(circle,#5d8be12e,#5d8be100 68%);width:420px;height:420px;animation:13s ease-in-out infinite ambient-drift;top:45px;right:-185px}.home-screen:after{background:radial-gradient(circle,#f0ad8924,#f0ad8900 70%);width:300px;height:300px;animation:16s ease-in-out -5s infinite reverse ambient-drift;bottom:35px;left:-180px}.home-screen>*{z-index:1;position:relative}.home-screen-top{animation:.6s cubic-bezier(.22,1,.36,1) 40ms both content-rise}.home-welcome{animation:.65s cubic-bezier(.22,1,.36,1) .1s both content-rise}.action-card{animation:.65s cubic-bezier(.22,1,.36,1) both action-rise}.action-card:first-child{animation-delay:.18s}.action-card:nth-child(2){animation-delay:.24s}.action-card:nth-child(3){animation-delay:.3s}.action-card:nth-child(4){animation-delay:.36s}.home-quick-actions{animation:.65s cubic-bezier(.22,1,.36,1) .44s both content-rise}.home-screen-footer{animation:.65s cubic-bezier(.22,1,.36,1) .5s both content-rise}.action-card:active,.home-quick-actions button:active,.library-upload-button:active{transform:scale(.98)}.action-card.primary .action-card-icon{animation:.8s cubic-bezier(.22,1,.36,1) .45s both icon-pop}.library-topbar{animation:.52s cubic-bezier(.22,1,.36,1) 40ms both content-rise}.library-heading{animation:.58s cubic-bezier(.22,1,.36,1) .1s both content-rise}.library-upload-card{animation:.62s cubic-bezier(.22,1,.36,1) .17s both content-rise}.library-settings{animation:.62s cubic-bezier(.22,1,.36,1) .23s both content-rise}.library-section-heading{animation:.62s cubic-bezier(.22,1,.36,1) .28s both content-rise}.library-upload-button{box-shadow:0 7px 18px #356bd333}.library-upload-button:hover{box-shadow:0 10px 22px #356bd347}.library-empty .empty-camera{animation:3.8s ease-in-out infinite soft-float}.library-upload-grid .upload-item,.library-photo-grid .media-tile{animation:.5s cubic-bezier(.22,1,.36,1) both media-reveal}.library-upload-grid .upload-item:nth-child(2),.library-photo-grid .media-tile:nth-child(2){animation-delay:50ms}.library-upload-grid .upload-item:nth-child(3),.library-photo-grid .media-tile:nth-child(3){animation-delay:.1s}.library-upload-grid .upload-item:nth-child(4),.library-photo-grid .media-tile:nth-child(4){animation-delay:.15s}.library-photo-grid .media-tile:hover{transform:translateY(-3px);box-shadow:0 12px 24px #2c416221}.library-photo-grid .media-tile .media-art{overflow:hidden}.library-photo-grid .media-tile .media-art>*{transition:transform .45s cubic-bezier(.22,1,.36,1)}.library-photo-grid .media-tile:hover .media-art>*{transform:scale(1.04)}.progress-track span{background-image:linear-gradient(90deg, var(--blue), #73a0f0, var(--blue));background-size:200% 100%;animation:1.8s linear infinite progress-shimmer}@keyframes view-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes content-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes action-rise{0%{opacity:0;transform:translateY(22px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes icon-pop{0%{opacity:0;transform:scale(.72)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes ambient-drift{0%,to{transform:translate(0,0)scale(1)}50%{transform:translate(-16px,18px)scale(1.08)}}@keyframes soft-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes media-reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes progress-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes upload-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--tint) 0%, transparent);transform:scale(1)}50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--tint) 16%, transparent);transform:scale(1.04)}}@media (prefers-reduced-motion:reduce){.view-stage,.home-screen:before,.home-screen:after,.home-screen-top,.home-welcome,.action-card,.home-quick-actions,.home-screen-footer,.action-card.primary .action-card-icon,.library-topbar,.library-heading,.library-upload-card,.library-settings,.library-section-heading,.library-empty .empty-camera,.library-upload-grid .upload-item,.library-photo-grid .media-tile,.progress-track span{transition:none!important;animation:none!important}}.home-event-label{flex-direction:column;gap:5px;display:flex}.home-event-label span{color:var(--blue);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.wedding-app[data-view=home] .app-footer{display:none}@media (max-width:720px){.wedding-app[data-view=share] .app-topbar{display:none}.wedding-app[data-view=share] .app-layout{min-height:100vh}.home-event-label span{font-size:9px}.home-event-label small{font-size:8px}}.action-card-status{letter-spacing:.1em;opacity:.67;text-transform:uppercase;font-size:8px;font-weight:700;position:absolute;top:22px;right:22px}.action-card-copy>span{padding-right:34px}.action-card.locked{filter:saturate(.72);box-shadow:inset 0 0 0 1px #404c6014}.action-card.locked:hover{box-shadow:0 11px 24px #2d436217,inset 0 0 0 1px #404c601a}.action-card.locked .action-card-icon{background:#ffffff47;border-color:currentColor;font-size:15px}.action-card.locked .action-card-arrow{color:currentColor;opacity:.45;font-size:26px}.locked-notice{background:var(--surface);color:var(--text-soft);border:1px solid #cfdbef;border-radius:17px;align-items:flex-start;gap:10px;margin-top:13px;padding:13px 14px;display:flex}.locked-notice>span{background:var(--blue-soft);border-radius:9px;flex:0 0 29px;justify-content:center;align-items:center;height:29px;display:inline-flex}.locked-notice>div{flex:1;min-width:0}.locked-notice strong{color:var(--text-strong);font-size:11px;display:block}.locked-notice p{margin:4px 0 0;font-size:10px;line-height:1.4}.locked-notice button{color:var(--text-soft);background:0 0;border:0;padding:2px 3px;font-size:18px;line-height:1}.locked-page{max-width:620px;padding-top:100px}.locked-orb{background:var(--blue-soft);color:var(--blue-dark);border-radius:24px;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:28px;font-size:28px;display:flex}.locked-page h1{color:var(--text-strong);font-family:var(--sans);letter-spacing:-.08em;margin:15px 0 19px;font-size:clamp(42px,6vw,65px);font-weight:700;line-height:.94}.locked-page h1 em{color:var(--blue);font-style:normal}.locked-page>p{color:var(--text-soft);max-width:390px;font-size:14px;line-height:1.6}.people-helper{color:var(--blue-dark);background:#edf3ff;border-radius:16px;align-items:flex-start;gap:10px;margin-top:12px;padding:14px 15px;display:flex}.people-helper>span{background:#356bd31f;border-radius:50%;flex:0 0 22px;justify-content:center;align-items:center;height:22px;font-size:14px;display:inline-flex}.people-helper strong{color:var(--blue-dark);margin-bottom:4px;font-size:11px;display:block}.people-helper p{color:#5872a5;margin:0;font-size:10px;line-height:1.45}.media-people{color:var(--blue-dark);flex-basis:100%;font-size:8px;line-height:1.35}.admin-tool-stack{gap:12px;margin:-38px 0 60px;display:grid}.admin-tool-stack .admin-panel{box-shadow:0 10px 24px #394e6c0a}.unlock-intro{color:var(--text-soft);max-width:530px;margin:-5px 0 21px;font-size:11px;line-height:1.55}.unlock-intro strong{color:var(--blue-dark)}.unlock-list{border-top:1px solid var(--border-soft)}.unlock-row{border-bottom:1px solid var(--border-soft);grid-template-columns:27px 39px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:76px;display:grid}.unlock-row:last-child{border-bottom:0}.unlock-index{color:#a5b3c7;letter-spacing:.08em;font-size:9px;font-weight:700}.unlock-icon{background:var(--blue-soft);color:var(--blue);border-radius:11px;justify-content:center;align-items:center;width:34px;height:34px;font-size:17px;display:inline-flex}.unlock-row.is-open .unlock-icon{background:var(--green-soft);color:#26725a}.unlock-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.unlock-copy strong{color:var(--text-strong);font-size:12px}.unlock-copy small{color:var(--text-soft);font-size:9px;line-height:1.35}.unlock-copy em{color:#a95c3d;font-size:8px;font-style:normal}.unlock-toggle{color:var(--text-soft);flex-direction:column;align-items:flex-end;gap:5px;display:flex}.unlock-toggle>span{letter-spacing:.08em;text-transform:uppercase;font-size:8px}.unlock-toggle input{opacity:0;position:absolute}.unlock-toggle i{background:#cbd4df;border-radius:20px;width:39px;height:22px;transition:background .2s;display:block;position:relative}.unlock-toggle i:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .2s;position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #1e365626}.unlock-toggle input:checked+i{background:var(--blue)}.unlock-toggle input:checked+i:after{left:20px}.people-panel{background:var(--surface);border-color:var(--border-soft)}.people-panel .placeholder-note{background:var(--blue-soft);margin-top:-3px}.people-admin-list{border-top:1px solid var(--border-soft);margin-top:20px}.people-admin-row{border-bottom:1px solid var(--border-soft);align-items:center;gap:12px;padding:12px 0;display:flex}.people-admin-row:last-child{border-bottom:0}.people-admin-thumb{color:#ffffffd6;font-family:var(--serif);flex:0 0 58px;justify-content:center;align-items:center;height:58px;font-size:21px;display:flex}.people-admin-copy{flex:1;min-width:0}.people-admin-copy>strong,.people-admin-copy>small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.people-admin-copy>strong{color:var(--text-strong);font-family:var(--serif);font-size:14px;font-weight:400}.people-admin-copy>small{color:var(--text-soft);margin-top:4px;font-size:9px}.people-admin-input{background:var(--surface-soft);border-color:var(--border-soft);min-height:36px;margin-top:8px;font-size:10px}.people-admin-row>.button{flex:none}.optional-consent{border:1px solid var(--border-soft);background:#f7f9fd;border-radius:13px;margin-top:8px;padding:11px 12px}@media (max-width:720px){.action-card-status{font-size:7px;top:20px;right:17px}.action-card-copy>span{padding-right:38px}.locked-page{padding-top:62px}.locked-orb{width:62px;height:62px;margin-bottom:22px}.locked-page>p{font-size:12px}.admin-tool-stack{margin:-14px 0 42px}.unlock-row{grid-template-columns:21px 34px minmax(0,1fr) auto;gap:8px;min-height:82px}.unlock-icon{width:31px;height:31px;font-size:15px}.unlock-copy strong{font-size:11px}.unlock-copy small{font-size:8px}.unlock-toggle>span{font-size:7px}.people-admin-row{flex-wrap:wrap;align-items:flex-start}.people-admin-copy{min-width:calc(100% - 70px)}.people-admin-row>.button{margin-left:auto}}:root{--font-stack:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", Inter, "Helvetica Neue", Arial, sans-serif;--label:#17181b;--label-2:#23242a9e;--label-3:#23242a59;--separator:#3c3c432e;--bg:#fff;--bg-2:#f2f2f7;--bg-grouped:#f3f4f8;--bg-cell:#ffffffb8;--tint:#147ef5;--tint-soft:#147ef51f;--glass-regular:#ffffffa3;--glass-clear:#ffffff30;--glass-border:#ffffff8f;--glass-shadow:0 12px 36px #1f2b411f, inset 0 1px 0 #ffffffb3, inset 0 0 0 .5px #ffffff47;--ease-apple:cubic-bezier(.28, .11, .32, 1);--radius-card:28px}.wedding-app.theme-dark{--ivory:#120d0f;--paper:#1d1518;--sand:#332128;--rose:#4a2935;--sage:#21332d;--lilac:#2b202d;--ink:#f5f5f7;--muted:#f5ebeea8;--faint:#f5ebee75;--line:#d68f9b47;--label:#f5f5f7;--label-2:#ebebf59e;--label-3:#ebebf557;--separator:#54545885;--bg:#000;--bg-2:#1c1c1e;--bg-grouped:#080809;--bg-cell:#1c1c1ec7;--tint:#3d9bff;--tint-soft:#3d9bff29;--glass-regular:#222225b0;--glass-clear:#1e1e207a;--glass-border:#ffffff29;--glass-shadow:0 14px 38px #00000057, inset 0 1px 0 #ffffff24, inset 0 0 0 .5px #ffffff14}body{background:var(--bg-grouped);color:var(--label);font-family:var(--font-stack);font-feature-settings:"cv05", "cv11";-webkit-font-smoothing:antialiased}.wedding-app{background:var(--bg-grouped);color:var(--label);isolation:isolate;min-height:100vh;position:relative;overflow-x:clip}.wedding-app:before{content:"";filter:blur(42px);opacity:.8;pointer-events:none;z-index:-1;background:radial-gradient(circle at 9% 14%,#ffdecb8a,#0000 27%),radial-gradient(circle at 88% 8%,#abd1ff7a,#0000 31%),radial-gradient(circle at 65% 84%,#d5c9ff59,#0000 30%);position:fixed;inset:-8%}.wedding-app.theme-dark:before{opacity:.18}.wedding-app :where(h1,h2,h3,p){text-wrap:pretty}.wedding-app{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.wedding-app.theme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.glass,.glass-card,.glass-pill,.glass-toolbar,.glass-navigation,.glass-modal,.glass-sheet,.glass-button{-webkit-backdrop-filter:blur(24px)saturate(180%)}.glass,.glass-card,.glass-toolbar,.glass-modal,.glass-sheet{background:var(--glass-regular);border:.5px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass-pill,.glass-button{border:.5px solid var(--glass-border);background:linear-gradient(140deg,#ffffff80,#ffffff2b);box-shadow:0 4px 16px #202b4014,inset 0 1px #ffffff85}.theme-dark .glass-pill,.theme-dark .glass-button{background:linear-gradient(140deg,#48484c85,#1c1c1e66)}.glass-button{min-height:44px;transition:opacity .2s var(--ease-apple), transform .2s var(--ease-apple);border-radius:999px;justify-content:center;align-items:center;padding:0 16px;display:inline-flex}.glass-button:active,.glass-button:hover{opacity:.82;transform:scale(.98)}.app-topbar{z-index:30;background:0 0;border:0;align-items:center;height:74px;padding:0 clamp(20px,5vw,76px);position:sticky;top:0}.app-topbar:before{border-bottom:.5px solid var(--separator);content:"";z-index:-1;-webkit-backdrop-filter:blur(22px)saturate(180%);background:linear-gradient(#f7f8fce6,#f7f8fc94);position:absolute;inset:0}.app-topbar>*{position:relative}.brand-button strong,.brand-button small,.guest-chip,.demo-notice{color:var(--label)}.brand-button strong{font-family:var(--font-stack);letter-spacing:-.02em;font-size:14px;font-weight:650}.brand-button small{color:var(--label-2);letter-spacing:.09em;font-size:10px}.app-logo{color:var(--label)}.app-logo i{color:inherit}.brand-button>span:last-child,.brand-button-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.wedding-app:not(.theme-dark) .app-topbar .app-logo{color:#111}.theme-dark .app-topbar .app-logo{color:#fff7f8}.guest-chip{border:0;min-height:44px}.guest-chip:hover{background:var(--tint-soft)}.guest-avatar{background-color:var(--tint);color:#fff;background-position:50%;background-repeat:no-repeat;background-size:cover}.app-topbar-actions{gap:8px}.demo-notice{opacity:.62;font-size:9px}.app-layout{grid-template-columns:minmax(0,248px) minmax(0,1fr);width:100%;min-width:0}.app-sidebar{border-right:.5px solid var(--separator);background:#fafafc9e;padding:62px 28px 30px}.side-link{color:var(--label-2);min-height:44px;transition:background .2s var(--ease-apple), color .2s var(--ease-apple), transform .2s var(--ease-apple);border-radius:12px;padding:0 12px;font-size:13px}.side-link:hover,.side-link.active{color:var(--label);background:#ffffff94;transform:translate(2px)}.theme-dark .side-link:hover,.theme-dark .side-link.active{background:#ffffff14}.side-link span{color:currentColor;font-family:var(--font-stack);font-size:18px}.side-link.active span,.side-link:hover span{color:var(--tint)}.app-content{width:100%;min-width:0;max-width:1320px;padding:0 clamp(22px,5vw,88px) 46px}.view-stage{animation:apple-view-fade .48s var(--ease-apple) both;width:100%;min-width:0}.content-page{width:100%;min-width:0;padding:62px 0 74px}.content-page h1,.page-intro h1,.form-heading h1,.required-page h1{color:var(--label);font-family:var(--font-stack);letter-spacing:-.055em;font-size:clamp(42px,6vw,72px);font-weight:700;line-height:.98}.content-page h1 em,.page-intro h1 em,.form-heading h1 em,.required-page h1 em{color:var(--tint);font-style:normal}.content-page p,.page-intro p,.form-heading>p,.required-page>p{color:var(--label-2);font-size:17px;line-height:1.45}.eyebrow{font-family:var(--font-stack);letter-spacing:.07em;font-size:11px}.eyebrow:before{background:var(--tint);width:18px}.button{min-height:44px;transition:opacity .2s var(--ease-apple), transform .2s var(--ease-apple);border-radius:999px;gap:18px;padding:0 20px;font-size:15px;font-weight:600}.button:hover{box-shadow:none;transform:scale(.98)}.button:active{opacity:.8;transform:scale(.96)}.button-dark{background:var(--tint);color:#fff}.button-outline{background:var(--glass-regular);border:.5px solid var(--glass-border);color:var(--tint)}.home-screen{max-width:1180px;padding:26px 0 102px}.home-screen-top{margin-bottom:18px}.home-event-label span{color:var(--label);font-family:var(--font-stack);letter-spacing:-.01em;text-transform:none;font-size:13px;font-weight:650}.home-event-label small{color:var(--label-2);font-size:11px}.home-greeting{background:var(--glass-regular);border:.5px solid var(--glass-border);color:var(--label-2);padding:10px 14px;font-size:12px;box-shadow:0 4px 14px #202b4012}.home-hero-visual{border-radius:36px;height:min(70vh,660px);min-height:500px;position:relative;overflow:hidden;box-shadow:0 24px 60px #272f432e}.home-hero-image{transition:transform 1.4s var(--ease-apple);background:linear-gradient(#171e2f0d 0%,#0f141d2e 44%,#0c101ac7 100%),radial-gradient(at 72% 30%,#ffffffe0 0 7%,#0000 24%),radial-gradient(at 39% 35%,#f7d5c3e6 0 9%,#0000 28%),linear-gradient(128deg,#bdcbd1 0%,#eed7c7 34%,#a57880 66%,#26334d 100%);position:absolute;inset:0;overflow:hidden;transform:scale(1.04)}.home-hero-visual:hover .home-hero-image{transform:scale(1.075)}.home-hero-image:before{content:"";filter:blur(20px);background:radial-gradient(at 23% 60%,#ffffff9e,#0000 26%),radial-gradient(at 77% 67%,#101a2e8c,#0000 28%);position:absolute;inset:-8%}.home-hero-image:after{content:"";mix-blend-mode:soft-light;opacity:.55;background:repeating-linear-gradient(115deg,#0000 0 38px,#ffffff14 39px 40px,#0000 41px 86px);position:absolute;inset:0}.hero-image-location,.hero-image-monogram,.hero-image-note{color:#fff;z-index:1;position:absolute}.hero-image-location{letter-spacing:.08em;opacity:.8;text-transform:uppercase;font-size:11px;top:28px;left:30px}.hero-image-monogram{letter-spacing:-.13em;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,6vw,86px);top:39%;left:50%;transform:translate(-50%,-50%)}.hero-image-monogram i{color:#fff9;margin:0 .08em;font-size:.55em;font-style:italic}.hero-image-note{font-family:Georgia,Times New Roman,serif;font-size:clamp(21px,3vw,36px);line-height:1.04;bottom:37%;left:30px}.hero-image-note em{color:#ffffffb8;font-style:italic}.hero-glass-panel{color:#fff;-webkit-backdrop-filter:blur(26px)saturate(170%);backdrop-filter:blur(26px)saturate(170%);background:linear-gradient(135deg,#ffffff4d,#ffffff1c);border:.5px solid #ffffff80;border-radius:28px;max-width:650px;padding:24px 26px 20px;position:absolute;bottom:24px;left:24px;right:24px;box-shadow:0 12px 40px #080f1c33,inset 0 1px #ffffff75}.hero-panel-meta{letter-spacing:.04em;justify-content:space-between;align-items:center;font-size:12px;display:flex}.hero-panel-meta small{opacity:.72}.hero-glass-panel h1{color:#fff;font-family:var(--font-stack);letter-spacing:-.06em;margin:29px 0 10px;font-size:clamp(32px,4.5vw,58px);font-weight:700;line-height:.98}.hero-glass-panel h1 em{color:#ffffffad;font-style:normal}.hero-glass-panel p{color:#ffffffc7;margin:0;font-size:15px}.hero-action-strip{scrollbar-width:none;gap:8px;margin-top:22px;display:flex;overflow-x:auto}.hero-action-strip::-webkit-scrollbar{display:none}.hero-action-strip button{color:#fff;white-space:nowrap;background:#ffffff21;border:.5px solid #ffffff4d;border-radius:999px;align-items:center;gap:7px;min-height:44px;padding:0 14px;font-size:12px;display:inline-flex}.hero-action-strip button:first-child{color:#1b5fbb;background:#fff}.hero-action-strip button span{font-size:16px}.home-welcome h2{color:var(--label);font-family:var(--font-stack);letter-spacing:-.06em;margin:13px 0 0;font-size:clamp(32px,5vw,52px);font-weight:700;line-height:.98}.home-welcome h2 em{color:var(--tint);font-style:normal}.home-welcome>p{color:var(--label-2);margin:0 0 2px;font-size:15px;line-height:1.45}.action-menu{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.action-card{border:.5px solid var(--glass-border);box-shadow:var(--glass-shadow);color:var(--label);border-radius:24px;min-height:205px;padding:19px;background:var(--glass-regular)!important}.action-card:after{opacity:.08;border-color:currentColor}.action-card:before{content:"";opacity:.34;pointer-events:none;background:linear-gradient(120deg,#fff9,#0000 37%);position:absolute;inset:0}.action-card.primary{color:#fff;border-color:#ffffff47;background:linear-gradient(145deg,#177ff5,#4ba4ff)!important}.action-card.mint,.action-card.peach,.action-card.lavender{color:var(--label)}.action-card-icon{background:#ffffff57;border:.5px solid;border-radius:14px;width:44px;height:44px;margin:14px 0 17px}.action-card.primary .action-card-icon{background:#ffffff2e}.action-card-copy{gap:6px}.action-card-copy small{color:currentColor;opacity:.62;font-size:10px}.action-card-copy strong{letter-spacing:-.035em;font-size:17px}.action-card-copy>span{color:currentColor;opacity:.65;font-size:12px}.action-card-status{font-size:9px;top:19px;right:18px}.action-card-arrow{bottom:17px;right:18px}.action-card.locked{filter:saturate(.18);opacity:.68}.home-quick-actions{gap:10px;margin-top:12px}.home-quick-actions button{background:var(--glass-regular);border:.5px solid var(--glass-border);color:var(--label);border-radius:20px;min-height:70px;box-shadow:0 8px 24px #202b4012}.home-quick-actions button:hover{border-color:var(--glass-border);box-shadow:0 10px 28px #202b401a}.quick-icon{background:var(--tint-soft);color:var(--tint)}.home-quick-actions strong{font-size:14px}.home-quick-actions small{color:var(--label-2)}.home-quick-actions b{color:var(--tint)}.memory-rail{margin-top:76px}.memory-rail-heading{justify-content:space-between;align-items:end;margin-bottom:18px;display:flex}.memory-rail-heading h2{color:var(--label);font-family:var(--font-stack);letter-spacing:-.06em;margin:12px 0 0;font-size:clamp(28px,4vw,42px);line-height:.98}.memory-rail-heading h2 em{color:var(--tint);font-style:normal}.memory-rail-heading>button{color:var(--tint);background:0 0;border:0;min-height:44px;padding:0;font-size:13px}.memory-card-grid{grid-template-rows:190px 150px;grid-template-columns:1.4fr 1fr 1fr;gap:10px;display:grid}.memory-card{background:var(--glass-regular);color:#fff;text-align:left;border:0;border-radius:22px;min-height:0;padding:0;position:relative;overflow:hidden}.memory-card-1{grid-row:span 2}.memory-card-art{transition:transform .8s var(--ease-apple);background-position:50%;background-size:cover;position:absolute;inset:0}.memory-card-art:after{content:"";background:linear-gradient(#090d1805,#090d18b8);position:absolute;inset:0}.memory-card-art>span{color:#ffffffdb;z-index:1;font-size:20px;position:absolute;top:16px;left:16px}.memory-card-overlay{z-index:1;flex-direction:column;gap:4px;display:flex;position:absolute;bottom:15px;left:16px;right:14px}.memory-card-overlay small{opacity:.74;text-transform:uppercase;font-size:10px}.memory-card-overlay strong{letter-spacing:-.02em;font-size:14px}.memory-card:hover .memory-card-art{transform:scale(1.06)}.home-screen-footer{border-top-color:var(--separator);color:var(--label-2);margin-top:70px}.home-screen-footer span:first-child{color:var(--tint);font-family:var(--font-stack);font-size:16px;font-weight:700}.photos-library{max-width:1180px}.photos-library-header{justify-content:space-between;align-items:end;margin:20px 0 30px;display:flex}.photos-library-header h1{margin:14px 0 10px;font-size:clamp(42px,6vw,68px)}.photos-library-header p{margin:0;font-size:15px}.photos-library-count{align-items:baseline;gap:7px;display:flex}.photos-library-count strong{color:var(--tint);letter-spacing:-.06em;font-size:34px}.photos-library-count small{color:var(--label-2);font-size:11px}.gallery-tools{align-items:center;gap:10px;margin-bottom:16px;display:flex}.glass-search{background:var(--glass-regular);border:.5px solid var(--glass-border);border-radius:999px;flex:1;align-items:center;gap:10px;min-height:48px;padding:0 15px;display:flex;box-shadow:0 6px 18px #202b400f}.glass-search>span{color:var(--label-2);font-size:24px;line-height:1;transform:rotate(-15deg)}.glass-search input{color:var(--label);background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:15px}.glass-search input::placeholder{color:var(--label-2)}.glass-search button,.glass-icon-button{color:var(--label-2);background:0 0;border:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0;font-size:20px;display:inline-flex}.glass-icon-button{background:var(--glass-regular);border:.5px solid var(--glass-border);color:var(--tint);border-radius:50%;box-shadow:0 6px 18px #202b400f}.photo-view-tabs{background:#8e8e931f;border-radius:999px;align-items:center;gap:3px;margin-bottom:16px;padding:3px;display:inline-flex}.photo-view-tabs button,.gallery-filter-row button,.gallery-filter-sheet button{color:var(--label-2);background:0 0;border:0;border-radius:999px;min-height:38px;padding:0 15px;font-size:13px}.photo-view-tabs button.active,.gallery-filter-row button.active,.gallery-filter-sheet button.active{background:var(--bg-cell);color:var(--label);box-shadow:0 3px 10px #202b401a}.gallery-filter-sheet{border-radius:20px;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 14px;padding:9px;display:flex}.gallery-filter-sheet>span{color:var(--label-2);margin:0 5px 0 8px;font-size:12px}.gallery-filter-row{scrollbar-width:none;gap:5px;margin-bottom:24px;display:flex;overflow-x:auto}.gallery-filter-row::-webkit-scrollbar{display:none}.gallery-filter-row button{background:var(--glass-regular);border:.5px solid var(--glass-border);white-space:nowrap;min-height:34px;font-size:12px}.gallery-filter-row button span,.gallery-filter-sheet button b{color:var(--label-2);margin-left:5px;font-size:10px}.moment-stream{gap:38px;display:grid}.moment-section-heading{justify-content:space-between;align-items:end;margin-bottom:11px;display:flex}.moment-section-heading div{flex-direction:column;gap:4px;display:flex}.moment-section-heading strong{color:var(--label);letter-spacing:-.04em;font-size:20px}.moment-section-heading small,.moment-section-heading>span{color:var(--label-2);font-size:12px}.photos-library .gallery-grid{background:var(--separator);border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden}.photos-library .gallery-grid .media-tile{background:var(--bg-2);border:0;border-radius:0;min-width:0;padding:0;position:relative}.photos-library .gallery-grid .media-art{aspect-ratio:1;height:auto}.photos-library .gallery-grid .media-placeholder,.photos-library .gallery-grid .remote-media-image{filter:saturate(1.08);height:100%}.photos-library .gallery-grid .media-meta{color:#fff;background:linear-gradient(#0000,#05080fad);gap:3px;min-height:45%;padding:25px 8px 8px;position:absolute;bottom:0;left:0;right:0}.photos-library .gallery-grid .media-meta>span,.photos-library .gallery-grid .media-meta>b{display:none}.photos-library .gallery-grid .media-meta strong{color:#fff;font-size:11px;line-height:1.2}.photos-library .gallery-grid .media-people{color:#ffffffd4;font-size:9px;display:block}.media-favorite-badge{color:#fff;z-index:4;background:#0a0c126b;border:.5px solid #ffffff59;border-radius:999px;padding:4px 7px;font-size:10px;position:absolute;top:8px;left:auto;right:8px}.photos-library .gallery-grid .media-art>video{object-fit:cover;width:100%;height:100%}.gallery-video-preview{isolation:isolate;background:linear-gradient(145deg,#34232c,#17131a 62%,#60424b);justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.gallery-video-preview:after{content:"";pointer-events:none;z-index:2;background:linear-gradient(#0b0a0e0a 45%,#0b0a0e94);position:absolute;inset:0}.gallery-video-preview video{object-fit:cover;z-index:0;width:100%;height:100%;display:block;position:relative}.gallery-video-poster{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}.gallery-video-loading{color:#ffffffd6;letter-spacing:.03em;text-transform:uppercase;z-index:3;flex-direction:column;justify-content:center;align-items:center;gap:9px;font-size:10px;display:flex;position:absolute;inset:0}.gallery-video-loading-dot{background:#ef9ab0;border-radius:50%;width:12px;height:12px;animation:1.2s ease-in-out infinite gallery-video-loading-pulse;box-shadow:0 0 0 8px #ef9ab029}@keyframes gallery-video-loading-pulse{0%,to{opacity:.45;transform:scale(.82)}50%{opacity:1;transform:scale(1)}}.gallery-video-preview-fallback{color:#ffffffd6;text-align:center;z-index:3;flex-direction:column;justify-content:center;align-items:center;gap:7px;font-size:27px;display:none;position:absolute;inset:0}.gallery-video-preview.is-failed .gallery-video-preview-fallback{display:flex}.gallery-video-preview.is-failed video,.gallery-video-preview.is-failed:after{display:none}.gallery-video-preview-fallback small{color:#ffffffb8;letter-spacing:.04em;font-size:9px}.gallery-video-play{color:#a83f60;pointer-events:none;height:56px;transition:box-shadow .25s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), transform .25s var(--ease-apple,cubic-bezier(.22, .8, .26, 1));z-index:5;background:linear-gradient(145deg,#fffffff5,#f4cfdbf5);border:1px solid #fffffff0;border-radius:50%;justify-content:center;align-items:center;width:56px;padding:0;display:flex;position:absolute;box-shadow:0 0 0 8px #ef9ab029,0 12px 28px #10070c47,inset 0 1px #fffffff5}.gallery-video-play:before{content:"";border-top:8px solid #0000;border-bottom:8px solid #0000;border-left:12px solid;margin-left:3px}.gallery-video-play>span{display:none}:is(.media-tile:hover .gallery-video-play,.media-tile:focus-visible .gallery-video-play){transform:scale(1.07);box-shadow:0 0 0 11px #ef9ab033,0 16px 34px #10070c52,inset 0 1px #fffffff5}.media-tile:active .gallery-video-play{transform:scale(.96)}.custom-video-poster{object-fit:contain;z-index:1;width:100%;height:100%;transition:opacity .28s;position:absolute;inset:0}.custom-video-player.is-started .custom-video-poster{opacity:0;pointer-events:none}.custom-video-player.has-poster .custom-video-element{background:0 0}.custom-video-play:before,.custom-video-play>span{display:none}.custom-video-play>svg{flex:none;display:block}:is(.custom-video-play:hover,.custom-video-play:focus-visible){box-shadow:0 0 0 11px #ef9ab038,0 17px 36px #0000005c,inset 0 1px #ffffff73}.custom-video-player{isolation:isolate;background:#08090b;justify-content:center;align-items:center;width:100%;min-height:300px;display:flex;position:relative;overflow:hidden}.custom-video-element{object-fit:contain;background:#08090b;width:100%;max-width:100%;height:min(66vh,690px);display:block}.custom-video-player:after{content:"";pointer-events:none;z-index:1;background:linear-gradient(#0000 56%,#000000b8);height:42%;position:absolute;bottom:0;left:0;right:0}.custom-video-play{color:#fff;height:82px;transition:opacity .25s ease, transform .25s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), background .25s ease;z-index:3;background:#c45d74f0;border:1px solid #ffffffd1;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:82px;padding-left:4px;font-size:24px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 13px 30px #00000052,inset 0 1px #ffffff59}.custom-video-play small{letter-spacing:.04em;font-size:9px}:is(.custom-video-play:hover,.custom-video-play:focus-visible){background:#d46c86;transform:translate(-50%,-50%)scale(1.06)}.custom-video-play:disabled{cursor:wait;opacity:.88}.custom-video-play:disabled:hover{background:#c45d74f0;transform:translate(-50%,-50%)}.custom-video-player.is-playing .custom-video-play{opacity:0;pointer-events:none;transform:translate(-50%,-50%)scale(.84)}.custom-video-player.is-buffering .custom-video-play{box-shadow:0 0 0 11px #ef9ab024,0 17px 36px #0000005c,inset 0 1px #ffffff73}.custom-video-buffering{-webkit-backdrop-filter:blur(14px)saturate(130%);backdrop-filter:blur(14px)saturate(130%);color:#ffffffe6;letter-spacing:.02em;pointer-events:none;white-space:nowrap;z-index:5;background:#0c0a0eb3;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;padding:8px 13px 8px 10px;font-size:11px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.custom-video-buffering-spinner{border:2px solid #ffffff52;border-top-color:#ef9ab0;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite custom-video-buffering-spin}@keyframes custom-video-buffering-spin{to{transform:rotate(360deg)}}.custom-video-playback-error{color:#ffd7e0;text-align:center;z-index:5;background:#281219e0;border:1px solid #ef9ab08c;border-radius:999px;max-width:calc(100% - 32px);padding:8px 13px;font-size:11px;position:absolute;bottom:66px;left:50%;transform:translate(-50%)}.custom-video-controls{z-index:4;background:#0d0c0fc2;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:8px;padding:6px 9px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.custom-video-control{color:#fff;height:30px;transition:background .22s ease, transform .22s var(--ease-apple,cubic-bezier(.22, .8, .26, 1));background:0 0;border:0;border-radius:50%;flex:0 0 30px;justify-content:center;align-items:center;width:30px;padding:0;font-size:15px;display:flex}:is(.custom-video-control:hover,.custom-video-control:focus-visible){background:#ffffff29;outline:none;transform:scale(1.06)}.custom-video-control:disabled{cursor:wait;opacity:.5}.custom-video-control svg{display:block}.custom-video-time{color:#fffc;font-variant-numeric:tabular-nums;flex:none;font-size:10px}.custom-video-progress{accent-color:#ef9ab0;flex:auto;min-width:0}.custom-video-fallback{color:#ffffffd1;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:300px;padding:30px;display:flex}.custom-video-fallback span{color:#ef9ab0;font-size:34px}.custom-video-fallback strong{font-size:15px}.custom-video-fallback small{color:#ffffff8f;font-size:11px}.photo-viewer-overlay{z-index:80;background:#000000c2;justify-content:center;align-items:stretch;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.photo-viewer{color:#f5f5f7;overscroll-behavior:contain;background:#08090b;border:0;border-radius:28px;flex-direction:column;width:min(100%,1080px);min-width:0;max-width:1080px;max-height:calc(100dvh - 32px);padding:0;display:flex;overflow:hidden auto;box-shadow:0 24px 80px #00000061}.photo-viewer-top{justify-content:space-between;align-items:center;min-height:70px;padding:9px 18px;display:flex;position:relative}.photo-viewer-top>button{color:#fff;background:#ffffff1a;border:0;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:26px;display:flex}.photo-viewer-top>div{text-align:center;flex-direction:column;gap:3px;display:flex}.photo-viewer-top strong{font-size:13px}.photo-viewer-top small{color:#ffffff94;font-size:11px}.photo-viewer-menu{-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%);z-index:4;background:#27282df0;border:.5px solid #ffffff2e;border-radius:16px;flex-direction:column;gap:2px;min-width:180px;padding:6px;display:flex;position:absolute;top:62px;right:18px;box-shadow:0 16px 38px #0000005c}.photo-viewer-menu button{color:#f5f5f7;text-align:left;background:0 0;border:0;border-radius:11px;min-height:44px;padding:0 13px;font-size:13px}:is(.photo-viewer-menu button:hover,.photo-viewer-menu button:focus-visible){background:#ffffff1f;outline:none}.photo-viewer-art{flex:1;justify-content:center;align-items:center;min-height:300px;display:flex;overflow:hidden}.photo-viewer-art .media-placeholder{width:100%;height:min(66vh,690px);max-height:100%}.photo-viewer-art .media-placeholder:before{opacity:.28}.photo-viewer-art .photo-viewer-image{object-fit:contain;flex:0 auto;width:auto;max-width:100%;height:auto;max-height:min(66vh,690px);display:block}.photo-viewer-art video{object-fit:contain;width:100%;max-width:100%;height:min(66vh,690px)}.photo-viewer-bottom{z-index:2;border-radius:999px;align-self:center;gap:3px;margin:-28px auto 0;padding:5px;display:flex;position:relative;bottom:28px}.photo-viewer-bottom button{color:#f5f5f7;background:0 0;border:0;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:74px;min-height:52px;padding:5px 10px;display:flex}.photo-viewer-bottom button:hover,.photo-viewer-bottom button[aria-pressed=true]{background:#ffffff21}.photo-viewer-bottom span{font-size:19px}.photo-viewer-bottom small{font-size:10px}.photo-viewer-feedback{color:#ffffffb8;align-self:center;margin:-16px 20px 12px;font-size:11px}.photo-viewer-info{flex-direction:column;gap:5px;min-width:0;padding:0 22px 20px;display:flex}.photo-viewer-info>strong,.photo-viewer-info>span{overflow-wrap:anywhere;max-width:100%}.photo-viewer-info>strong{font-size:15px}.photo-viewer-info>span{color:#ffffff94;font-size:12px}.photo-viewer-uploader b{color:#ffffffe6;font-weight:650}.photo-viewer-participants{background:#fff1;border:.5px solid #ffffff21;border-radius:16px;flex-direction:column;gap:10px;margin-top:7px;padding:12px;display:flex}.photo-viewer-participants-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.photo-viewer-participants-heading span{color:#ffffffc7;font-size:11px;font-weight:650}.photo-viewer-participants-heading b{color:#ffd4df;background:#ca53713b;border:.5px solid #ffb8ca47;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 7px;font-size:10px;display:inline-flex}.photo-viewer-participant-list{flex-wrap:wrap;gap:7px;min-width:0;display:flex}.photo-viewer-participant{background:#ffffff14;border:.5px solid #ffffff1f;border-radius:999px;align-items:center;gap:7px;min-width:0;max-width:100%;padding:4px 10px 4px 4px;display:inline-flex}.photo-viewer-participant strong{color:#ffffffe6;overflow-wrap:anywhere;max-width:180px;font-size:11px;font-weight:600}.photo-viewer-participant-avatar{color:#ffd4df;background:#ca537138;border:.5px solid #ffb8ca47;border-radius:50%;flex:0 0 29px;justify-content:center;align-items:center;width:29px;height:29px;font-size:10px;display:inline-flex;position:relative;overflow:hidden}.photo-viewer-participants-empty{color:#ffffff85;font-size:11px}.photo-viewer-details{background:#ffffff14;border-top:.5px solid #ffffff21;margin:0 18px 18px;padding:14px 16px 16px}.photo-viewer-details-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.photo-viewer-details-heading strong{font-size:14px}.photo-viewer-details-heading button{color:#f5f5f7;background:#ffffff1a;border:0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;display:flex}.photo-viewer-details dl{gap:8px;margin:0;display:grid}.photo-viewer-details dl>div{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.photo-viewer-details dt{color:#ffffff85;font-size:11px}.photo-viewer-details dd{color:#ffffffe6;overflow-wrap:anywhere;text-align:right;max-width:72%;margin:0;font-size:12px}.media-location{color:var(--muted);text-transform:none;flex-basis:100%;align-items:center;gap:4px;min-width:0;line-height:1.25;display:flex}.media-location-icon{flex:none;display:inline-flex}.media-location-copy{min-width:0;display:flex}.media-location-copy strong{color:inherit;font-family:var(--sans);font-size:inherit;text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.media-location-compact{font-size:9px}.media-location-compact .media-location-copy{max-width:100%}.photos-library .gallery-grid .media-location{color:#ffffffd6;font-size:8px;display:flex}.library-photo-grid .media-location{font-size:8px}.media-location-badge{color:#ffffffe6;min-height:44px;transition:background .2s var(--ease-apple), border-color .2s var(--ease-apple), transform .2s var(--ease-apple);background:#ffffff12;border:.5px solid #ffffff26;border-radius:16px;align-items:center;gap:10px;margin-top:10px;padding:9px 11px;text-decoration:none;display:flex}.media-location-badge:hover{background:#ffffff21;border-color:#ffffff47;transform:translateY(-1px)}.media-location-badge .media-location-copy{flex-direction:column;flex:auto;gap:2px}.media-location-badge .media-location-copy strong{font-size:12px}.media-location-badge .media-location-copy small{color:#ffffff8c;font-size:9px}.media-location-action{color:#ffd4df;white-space:nowrap;flex:none;align-items:center;gap:4px;font-size:10px;display:inline-flex}.media-location-action span{font-size:15px;line-height:1}.photo-viewer-info>.media-location-badge{margin-top:11px}@media (max-width:520px){.media-location-badge{border-radius:14px;gap:8px;padding:8px 10px}.media-location-action{font-size:9px}}.share-library{max-width:1020px}.library-topbar{border-bottom:.5px solid var(--separator);padding-bottom:12px}.library-back{color:var(--tint);min-height:44px;font-size:13px}.library-account strong{color:var(--label);font-size:13px}.library-account small{color:var(--label-2);font-size:11px}.library-avatar{background:var(--tint);width:34px;height:34px}.library-heading{margin:58px 0 31px}.library-heading h1{font-size:clamp(42px,6vw,68px)}.library-heading p{color:var(--label-2);font-size:16px}.library-count strong{color:var(--tint)}.library-upload-card{background:var(--glass-regular);border:.5px solid var(--glass-border);border-radius:var(--radius-card);box-shadow:var(--glass-shadow);align-items:center;min-height:86px;padding:14px}.library-upload-copy strong{color:var(--label);font-size:15px}.library-upload-copy small{color:var(--label-2);font-size:12px}.folder-mark{background:var(--tint-soft);color:var(--tint)}.library-upload-button{background:var(--tint);color:#fff;cursor:pointer;border:0;border-radius:999px;min-height:50px;padding:0 19px;box-shadow:0 7px 18px #147ef533}.library-upload-button:hover{background:var(--tint);transform:scale(.98);box-shadow:0 8px 22px #147ef540}.library-upload-button strong{font-size:13px}.library-upload-button>span{font-size:20px}.visually-hidden-input{opacity:0;width:1px;height:1px;position:absolute}.library-settings{background:var(--glass-regular);border:.5px solid var(--glass-border);border-radius:20px;margin-top:16px;padding:5px;box-shadow:0 8px 25px #202b400f}.library-settings>div{background:0 0;border:0;border-radius:15px;padding:12px 14px 8px}.library-settings .text-input{color:var(--label);font-size:14px}.library-section-heading{margin-top:48px}.library-section-heading strong{color:var(--label);font-size:19px}.library-section-heading span,.library-section-heading>span{color:var(--label-2);font-size:12px}.library-upload-grid .upload-item,.library-empty,.library-privacy,.people-helper{background:var(--glass-regular);border:.5px solid var(--glass-border);box-shadow:0 8px 25px #202b400f}.library-empty{min-height:260px}.empty-camera{background:var(--tint-soft);color:var(--tint)}.empty-upload-link{background:var(--tint-soft);color:var(--tint);cursor:pointer;border:0;border-radius:999px;min-height:44px;padding:0 17px;font-size:13px}.library-privacy{color:var(--label);border-radius:20px}.library-privacy strong,.people-helper strong{color:var(--label);font-size:13px}.library-privacy p,.people-helper p{color:var(--label-2);font-size:12px}.people-helper{border-radius:20px}.people-helper>span{background:var(--tint-soft);color:var(--tint)}.sheet-backdrop{z-index:90;background:#080b126b;align-items:flex-end;display:flex;position:fixed;inset:0}.upload-sheet{animation:sheet-up .38s var(--ease-apple) both;max-height:min(650px,92vh);padding:10px max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom));border-radius:28px 28px 0 0;width:100%}.sheet-grabber{background:var(--label-3);border-radius:999px;width:36px;height:5px;margin:0 auto 20px;display:block}.sheet-heading{justify-content:space-between;align-items:flex-start;display:flex}.sheet-heading h2{color:var(--label);letter-spacing:-.055em;margin:11px 0 0;font-size:30px;line-height:.98}.sheet-heading h2 em{color:var(--tint);font-style:normal}.sheet-heading>button{background:var(--bg-2);color:var(--label-2);border:0;border-radius:50%;width:44px;height:44px;font-size:22px}.sheet-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:28px 0 12px;display:grid}.sheet-actions button,.sheet-actions label{background:var(--bg-2);color:var(--label);cursor:pointer;text-align:center;border:0;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:128px;padding:14px 8px;display:flex}.sheet-actions button:first-child,.sheet-actions label:hover,.sheet-actions button:hover{background:var(--tint-soft);color:var(--tint)}.sheet-actions span{font-size:26px}.sheet-actions strong{font-size:13px}.sheet-actions small{color:var(--label-2);font-size:10px}.sheet-cancel{background:var(--bg-2);color:var(--tint);border:0;border-radius:999px;width:100%;min-height:48px;font-size:15px}.challenge-card,.detail-hero,.detail-card,.quiz-cover,.question-card,.ranking-note,.leaderboard-card,.admin-panel,.admin-welcome,.stat-card{background:var(--glass-regular);border:.5px solid var(--glass-border);box-shadow:0 10px 30px #202b4012}.filter-row{gap:6px}.filter{background:var(--glass-regular);border:.5px solid var(--glass-border);color:var(--label-2);border-radius:999px;min-height:40px}.filter.active{background:var(--tint);color:#fff}.challenge-card{border-radius:26px}.challenge-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px #202b4021}.quiz-cover{border-radius:30px}.answer-option{background:var(--glass-regular);border:.5px solid var(--glass-border);color:var(--label);border-radius:18px;min-height:60px}.answer-option:hover{background:var(--tint-soft);border-color:#147ef54d}.ranking-note,.leaderboard-card{border-radius:24px}.leaderboard-row{border-bottom-color:var(--separator)}.admin-panel,.admin-welcome{border-radius:26px}.admin-welcome,.admin-welcome h2{color:var(--label)}.admin-side-nav{background:var(--glass-regular);border:.5px solid var(--glass-border);border-radius:18px;padding:8px}.admin-side-nav>button{border-radius:12px;min-height:44px}.admin-side-nav>button.active{background:var(--tint-soft);color:var(--tint)}@keyframes apple-view-in{0%{opacity:0;transform:translateY(8px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes apple-view-fade{0%{opacity:1;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes sheet-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (max-width:720px){.app-topbar{height:64px;padding:0 16px}.app-topbar:before{background:linear-gradient(#f7f8fcdb,#f7f8fc80)}.theme-dark .app-topbar:before{background:linear-gradient(#080809e0,#0808098a)}.app-content{padding:0 16px 112px}.app-content>.demo-notice,.app-sidebar{display:none}.mobile-back{background:var(--glass-regular);border:.5px solid var(--glass-border);color:var(--label);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;margin-right:7px;display:inline-flex}.wedding-app[data-view=home] .mobile-back{display:none}.brand-button strong{font-size:12px}.brand-button small{font-size:8px}.app-topbar-actions{gap:2px}.guest-chip{padding:0 5px;font-size:12px}.home-screen{padding:20px 0 118px}.home-screen-top{margin-bottom:14px}.home-event-label span{font-size:12px}.home-event-label small{font-size:9px}.home-greeting{padding:9px 11px;font-size:10px}.home-hero-visual{border-radius:28px;height:min(71vh,600px);min-height:520px}.hero-image-location{font-size:9px;top:19px;left:18px}.hero-image-monogram{font-size:58px;top:35%}.hero-image-note{font-size:23px;bottom:37%;left:18px}.hero-glass-panel{padding:18px 16px 14px;bottom:12px;left:12px;right:12px}.hero-panel-meta{font-size:11px}.hero-glass-panel h1{margin:22px 0 9px;font-size:35px}.hero-glass-panel p{font-size:13px}.hero-action-strip{gap:5px;margin-top:16px}.hero-action-strip button{flex:1;justify-content:center;gap:4px;min-height:42px;padding:0 7px;font-size:10px}.hero-action-strip button span{font-size:14px}.home-welcome{flex-direction:column;align-items:start;gap:10px;margin:52px 0 18px;display:flex}.home-welcome h2{font-size:34px}.home-welcome>p{max-width:310px;font-size:14px}.action-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.action-card{border-radius:21px;min-height:176px;padding:14px}.action-card-number{font-size:9px}.action-card-icon{border-radius:12px;width:38px;height:38px;margin:12px 0 13px;font-size:18px}.action-card-copy strong{font-size:15px}.action-card-copy>span{font-size:10px}.action-card-status{font-size:7px;top:14px;right:13px}.action-card-arrow{font-size:18px;bottom:13px;right:13px}.home-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.home-quick-actions button{flex-wrap:wrap;align-items:flex-start;min-height:84px;padding:12px}.quick-icon{flex-basis:31px;height:31px}.home-quick-actions button span:nth-child(2){max-width:calc(100% - 46px)}.home-quick-actions strong{font-size:12px}.home-quick-actions small{font-size:9px}.memory-rail{margin-top:58px}.memory-rail-heading h2{font-size:29px}.memory-rail-heading>button{font-size:11px}.memory-card-grid{grid-template-rows:170px 130px;grid-template-columns:1.25fr 1fr;gap:7px}.memory-card{border-radius:17px}.memory-card-overlay{bottom:11px;left:11px}.memory-card-overlay strong{font-size:12px}.home-screen-footer{margin-top:50px}.wedding-app[data-view=home] .app-content{padding-bottom:0}.mobile-bottom-nav{background:var(--glass-regular);border:.5px solid var(--glass-border);bottom:max(13px, env(safe-area-inset-bottom));z-index:50;-webkit-backdrop-filter:blur(25px)saturate(180%);border-radius:26px;align-items:center;gap:2px;padding:6px;display:flex;left:13px;right:13px;box-shadow:0 13px 36px #131c2d2e,inset 0 1px #ffffffb3}.wedding-app[data-view=home] .mobile-bottom-nav{display:flex}.mobile-bottom-nav button{color:var(--label-2);text-transform:none;background:0 0;border:0;border-radius:18px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-height:54px;padding:3px 1px;font-size:9px;display:flex}.mobile-bottom-nav button span{font-family:var(--font-stack);font-size:20px;line-height:21px}.mobile-bottom-nav button small{font-size:9px}.mobile-bottom-nav button.active{background:var(--tint-soft);color:var(--tint)}.mobile-bottom-nav .mobile-add-button{background:var(--tint);color:#fff;border-radius:50%;flex:0 0 54px;min-height:54px;margin:0 3px;box-shadow:0 6px 16px #147ef547}.mobile-bottom-nav .mobile-add-button span{font-size:30px;font-weight:300}.wedding-app.sheet-open .mobile-bottom-nav{opacity:0;pointer-events:none;transform:translateY(18px)}.content-page{padding:44px 0 52px}.content-page h1,.page-intro h1,.form-heading h1,.required-page h1{font-size:44px}.content-page p,.page-intro p,.form-heading>p,.required-page>p{font-size:15px}.photos-library{padding-top:27px}.photos-library-header{align-items:start;margin:12px 0 22px}.photos-library-header h1{margin:11px 0 8px;font-size:44px}.photos-library-header p{font-size:13px}.photos-library-count{display:none}.glass-search{min-height:46px}.photo-view-tabs{width:100%;display:flex}.photo-view-tabs button{flex:1;padding:0 7px;font-size:12px}.gallery-filter-row{margin-bottom:21px}.photos-library .gallery-grid{border-radius:13px;grid-template-columns:repeat(3,minmax(0,1fr))}.photos-library .gallery-grid .media-meta{min-height:52%;padding:23px 5px 5px}.photos-library .gallery-grid .media-meta strong{font-size:9px}.photos-library .gallery-grid .media-people{font-size:7px}.media-favorite-badge{padding:3px 5px;font-size:8px;top:5px;left:auto;right:5px}.moment-stream{gap:28px}.moment-section-heading strong{font-size:18px}.moment-section-heading small{font-size:10px}.photo-viewer-overlay{padding:0}.photo-viewer{border-radius:0;width:100%;max-height:100dvh}.photo-viewer-art .media-placeholder,.photo-viewer-art video{height:min(65vh,600px)}.photo-viewer-art .photo-viewer-image{max-height:min(65vh,600px)}.photo-viewer-bottom{margin-top:-21px;bottom:21px}.photo-viewer-bottom button{min-width:67px}.photo-viewer-info{padding:0 16px 16px}.photo-viewer-details{margin:0 12px 12px}.share-library{padding-top:25px}.library-heading{margin:43px 0 24px}.library-heading h1{font-size:48px}.library-heading p{font-size:14px}.library-upload-card{flex-direction:column;align-items:stretch;gap:12px}.library-upload-button{justify-content:center}.library-upload-button small{opacity:.75;font-size:10px;display:inline}.library-settings,.library-upload-grid{grid-template-columns:1fr}.sheet-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.sheet-actions button,.sheet-actions label{min-height:116px}.admin-content{padding-bottom:48px}.admin-content .mobile-bottom-nav{display:none}}@media (max-width:390px){.hero-glass-panel h1{font-size:32px}.hero-action-strip button{font-size:9px}.action-card{min-height:168px}.action-card-copy strong{font-size:14px}.home-quick-actions button{min-height:80px}.mobile-bottom-nav{left:9px;right:9px}.mobile-bottom-nav .mobile-add-button{flex-basis:50px;min-height:50px}}@media (prefers-reduced-motion:reduce){.view-stage,.home-hero-image,.memory-card-art,.upload-sheet{transition:none!important;animation:none!important}}.action-menu.action-count-0{display:none}.action-menu.action-count-1{grid-template-columns:minmax(0,1fr)}.action-menu.action-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.action-menu.action-count-3{grid-template-columns:repeat(3,minmax(0,1fr))}.home-quick-actions.single-action{grid-template-columns:minmax(0,1fr)}@media (max-width:720px){.action-menu.action-count-1{grid-template-columns:minmax(0,1fr)}.action-menu.action-count-2,.action-menu.action-count-3,.action-menu.action-count-4{grid-template-columns:repeat(2,minmax(0,1fr))}}html{background:var(--bg-grouped);overscroll-behavior-x:none;min-height:100%;overflow-x:hidden}body{overscroll-behavior-x:none;overscroll-behavior-y:auto;width:100%;max-width:100%;min-height:100%;overflow-x:hidden}button,a,input,select,label{-webkit-tap-highlight-color:transparent}.wedding-app{min-height:100svh}.app-topbar{isolation:isolate}.app-topbar:before{-webkit-mask-image:linear-gradient(#000 72%,#0000 100%);mask-image:linear-gradient(#000 72%,#0000 100%)}.side-link svg,.mobile-bottom-nav svg,.mobile-back svg{display:block}@media (max-width:720px){.app-topbar{height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 16px 0;align-items:center}.app-topbar:before{background:#f2f2f7c2;border-bottom:0}.theme-dark .app-topbar:before{background:#000000bd}.app-topbar>*{min-width:0}.mobile-back{color:var(--tint);background:0 0;border:0;border-radius:999px;flex:0 0 44px;width:44px;height:44px;margin:0 3px 0 -8px;padding:0}.mobile-back:active{background:var(--tint-soft);opacity:.8;transform:scale(.94)}.brand-button{flex:auto;gap:9px;min-width:0;overflow:hidden}.brand-button .app-logo{flex:none;font-size:22px}.brand-button>span:last-child{min-width:0}.brand-button strong{text-overflow:ellipsis;white-space:nowrap;max-width:170px;font-size:13px;display:block;overflow:hidden}.brand-button small{text-overflow:ellipsis;white-space:nowrap;max-width:170px;font-size:9px;display:block;overflow:hidden}.wedding-app:not([data-view=home]) .brand-button .app-logo{display:inline-flex}.app-topbar-actions{flex:none}.app-topbar-actions>.demo-notice{display:none}.guest-chip{text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:102px;min-height:44px;padding:0 6px;font-size:12px;overflow:hidden}.guest-chip>span:last-child{display:none}.app-content,.wedding-app[data-view=home] .app-content{padding-bottom:calc(116px + env(safe-area-inset-bottom))}.content-page{padding-top:38px}.home-screen{padding-top:16px}.home-hero-visual{box-shadow:0 18px 48px #272f4326}.mobile-bottom-nav{bottom:max(12px, calc(env(safe-area-inset-bottom) + 8px));transition:opacity .25s var(--ease-apple), transform .32s var(--ease-apple);background:#f8f8fabd;border:.5px solid #ffffffb8;border-radius:28px;align-items:center;gap:2px;width:min(100% - 24px,430px);padding:6px;display:flex;left:50%;right:auto;transform:translate(-50%);box-shadow:0 14px 38px #141c2e2e,inset 0 1px #ffffffd1}.theme-dark .mobile-bottom-nav{background:#1f1f22c2;border-color:#ffffff2e;box-shadow:0 14px 38px #00000073,inset 0 1px #ffffff29}.mobile-bottom-nav button{color:var(--label-2);text-transform:none;min-width:0;min-height:54px;transition:background .2s var(--ease-apple), color .2s var(--ease-apple), opacity .2s var(--ease-apple), transform .2s var(--ease-apple);background:0 0;border:0;border-radius:20px;flex:1 1 0;justify-content:center;align-items:center;gap:3px;padding:3px 2px}.mobile-bottom-nav button span{font-family:var(--font-stack);justify-content:center;align-items:center;font-size:20px;line-height:21px;display:flex}.mobile-bottom-nav .mobile-profile-avatar{background:var(--bg-2);border:.5px solid var(--separator);border-radius:50%;flex:0 0 28px;width:28px;height:28px;overflow:hidden}.mobile-bottom-nav .mobile-profile-avatar.has-image{background-position:50%;background-repeat:no-repeat;background-size:cover;border-color:#ffffffc2;box-shadow:0 3px 9px #1f2b4124}.mobile-bottom-nav button small{letter-spacing:-.01em;font-size:9px;font-weight:600}.mobile-bottom-nav button.active{background:var(--tint-soft);color:var(--tint)}.mobile-bottom-nav button:active{opacity:.78;transform:scale(.95)}.mobile-bottom-nav .mobile-add-button{background:var(--tint);color:#fff;border-radius:50%;flex:0 0 54px;min-height:54px;margin:0 3px;box-shadow:0 7px 17px #0088ff4d,inset 0 1px #ffffff57}.mobile-bottom-nav .mobile-add-button span{font-size:30px;font-weight:300}.mobile-bottom-nav .mobile-add-button:active{background:var(--tint);transform:scale(.92)}.wedding-app.sheet-open .mobile-bottom-nav{opacity:0;pointer-events:none;transform:translate(-50%,18px)}.admin-content{padding-bottom:calc(48px + env(safe-area-inset-bottom))}.admin-content+.mobile-bottom-nav,.wedding-app[data-view=admin] .mobile-bottom-nav,.wedding-app[data-view=admin-login] .mobile-bottom-nav{display:none}}@media (max-width:390px){.mobile-bottom-nav{width:calc(100% - 18px)}.mobile-bottom-nav .mobile-add-button{flex-basis:50px;min-height:50px}.mobile-bottom-nav button{min-height:50px}}@media (prefers-reduced-motion:reduce){.mobile-bottom-nav,.mobile-bottom-nav button,.mobile-back{transition:none!important}}.event-context{flex-direction:column;gap:4px;margin-top:16px;display:flex}.event-context strong{color:var(--label);letter-spacing:-.01em;font-size:13px;font-weight:650}.event-context span,.event-context small{color:var(--label-2);font-size:11px}.event-context small{font-size:10px}.home-event-context{margin-bottom:24px}.event-schedule-card,.admin-event-card{background:var(--glass-regular);border:.5px solid var(--glass-border);border-radius:24px;align-items:flex-start;gap:14px;padding:20px;display:flex;box-shadow:0 12px 34px #202b4014,inset 0 1px #ffffffc2}.event-schedule-card{max-width:650px;margin:4px 0 26px}.schedule-lock-icon{background:var(--tint-soft);color:var(--tint);border-radius:50%;flex:0 0 42px;justify-content:center;align-items:center;height:42px;font-size:22px;display:inline-flex}.event-schedule-card h3{color:var(--label);letter-spacing:-.04em;margin:7px 0 8px;font-size:22px}.event-schedule-card h3 em,.schedule-lock-card h2 em{color:var(--tint);font-style:italic}.event-schedule-card p,.schedule-lock-card p{color:var(--label-2);max-width:520px;margin:0;font-size:13px;line-height:1.5}.event-schedule-card small,.schedule-lock-card small{color:var(--label-2);margin-top:11px;font-size:11px;display:block}.schedule-lock-card{max-width:670px;margin:16px 0 0}.schedule-lock-card h2{color:var(--label);letter-spacing:-.07em;margin:7px 0 11px;font-size:clamp(34px,5vw,48px);line-height:.94}.admin-event-card{max-width:900px;margin:0 0 14px}.admin-event-card>div{flex-direction:column;gap:4px;display:flex}.admin-event-card strong{color:var(--label);font-size:14px}.admin-event-card span,.admin-event-card small{color:var(--label-2);font-size:11px}.admin-event-card small{margin-top:3px;font-size:10px}.admin-event-subtitle{color:var(--muted);max-width:340px;margin:10px 0 0;font-size:10px;line-height:1.5}.moderation-metadata{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.moderation-metadata span{color:var(--label-2);white-space:normal;font-size:10px}.moderation-metadata a{color:var(--tint);font-size:10px;font-weight:650;text-decoration:none}.wedding-app[data-event-open=false] .mobile-bottom-nav button:nth-child(2){display:none}.home-screen{max-width:760px;padding-bottom:64px}.home-screen:before,.home-screen:after{display:none}.home-welcome{grid-template-columns:minmax(0,1fr) minmax(180px,.55fr);align-items:end;gap:28px;max-width:680px;margin:42px 0 24px;display:grid}.home-welcome h2{font-size:clamp(36px,5vw,52px)}.home-welcome>p{max-width:220px;font-size:15px}.action-card:after{display:none}.action-card:before{opacity:.14}.action-card-number{display:none}.action-card{min-height:148px}.action-card-icon{margin-top:4px}.gallery-header-actions{align-items:center;gap:12px;display:flex}.gallery-upload-cta{background:var(--tint);color:#fff;min-height:44px;transition:opacity .2s var(--ease-apple), transform .2s var(--ease-apple);border:0;border-radius:999px;align-items:center;gap:6px;padding:0 16px;display:inline-flex;box-shadow:0 7px 18px #0088ff38}.gallery-upload-cta:active{opacity:.8;transform:scale(.96)}.gallery-upload-cta span{font-size:20px;font-weight:300;line-height:1}.gallery-upload-cta strong{font-size:13px}.gallery-contributions{margin:0 0 28px}.gallery-contributions-heading{justify-content:space-between;align-items:end;margin:0 0 12px;display:flex}.gallery-contributions-heading strong{color:var(--label);letter-spacing:-.04em;font-size:19px}.gallery-contributions-heading span{color:var(--label-2);margin-top:4px;font-size:12px;display:block}.gallery-upload-status{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--label);border-radius:17px;align-items:center;gap:10px;margin:0 0 12px;padding:10px 12px;display:flex}.gallery-upload-status>span{background:var(--tint);color:#fff;border-radius:50%;flex:0 0 28px;justify-content:center;align-items:center;height:28px;display:inline-flex}.gallery-upload-status>span.is-active{animation:1.2s ease-in-out infinite upload-pulse}.gallery-upload-status>span.is-error{background:#b85e68}.gallery-upload-status>span.is-done{background:#5e9a78}.gallery-upload-status div{flex-direction:column;gap:2px;min-width:0;display:flex}.gallery-upload-status strong{font-size:11px;line-height:1.25}.gallery-upload-status small{color:var(--label-2);font-size:10px;line-height:1.25}.sheet-access-note{color:var(--label-2);align-items:center;gap:8px;margin-top:18px;display:flex}.sheet-access-note>span{background:var(--tint-soft);color:var(--tint);border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:18px;display:inline-flex}.sheet-access-note strong{color:var(--label);font-size:12px}.sheet-access-note small{font-size:11px}@media (max-width:720px){.home-screen{padding-bottom:calc(34px + env(safe-area-inset-bottom))}.home-welcome{flex-direction:column;align-items:start;gap:10px;margin:32px 0 18px;display:flex}.home-welcome h2{font-size:38px}.home-welcome>p{max-width:300px;font-size:15px}.action-card{min-height:142px}.action-card-icon{margin:2px 0 12px}.photos-library-header{align-items:flex-start;gap:16px}.gallery-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.gallery-header-actions .photos-library-count{display:none}.gallery-upload-cta{min-height:44px;padding:0 14px}.gallery-upload-cta strong{font-size:12px}.gallery-contributions-heading strong{font-size:17px}}.profile-picker{background:var(--bg-2);border:.5px solid var(--separator);border-radius:28px;margin:0 0 24px;padding:22px}.profile-picker-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.profile-picker-heading h3{color:var(--label);letter-spacing:-.06em;margin:10px 0 0;font-size:28px;line-height:.98}.profile-picker-heading h3 em{color:var(--tint);font-style:normal}.profile-count{background:var(--bg-cell);border:.5px solid var(--separator);color:var(--label-2);white-space:nowrap;border-radius:999px;padding:8px 10px;font-size:11px}.profile-picker-description{color:var(--label-2);max-width:500px;margin:16px 0 20px;font-size:14px;line-height:1.45}.profile-picker-groups{gap:22px;display:grid}.profile-picker-group{min-width:0}.profile-group-heading{border-bottom:.5px solid var(--separator);color:var(--label);justify-content:space-between;align-items:center;margin-bottom:10px;padding:0 0 9px;font-size:12px;display:flex}.profile-group-heading span{color:var(--label-2);font-size:11px}.profile-picker-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.profile-card{background:var(--bg-cell);border:.5px solid var(--separator);color:var(--label);text-align:center;min-height:142px;transition:background .24s var(--ease-apple), border-color .24s var(--ease-apple), opacity .24s var(--ease-apple), transform .24s var(--ease-apple);border-radius:20px;flex-direction:column;align-items:center;gap:9px;padding:13px 7px 11px;display:flex;position:relative}.profile-card:hover{border-color:#147ef561;transform:translateY(-2px)}.profile-card:active{opacity:.78;transform:scale(.96)}.profile-card:disabled{cursor:wait;opacity:.58}.profile-card.selected{background:var(--tint-soft);border-color:#147ef58c}.profile-avatar{background:var(--tint-soft);color:var(--tint);background-position:50%;background-repeat:no-repeat;background-size:cover;border:.5px solid #147ef52e;border-radius:50%;flex:0 0 58px;justify-content:center;align-items:center;width:58px;height:58px;font-size:17px;font-weight:700;display:inline-flex;overflow:hidden}.profile-avatar.has-image{border-color:#ffffffb8;box-shadow:0 4px 12px #1f2b411f}.profile-card-copy{flex-direction:column;gap:3px;width:100%;min-width:0;display:flex}.profile-card-copy strong{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:11px;line-height:1.15;overflow:hidden}.profile-card-copy small{color:var(--label-2);font-size:9px}.profile-card.selected .profile-card-copy small{color:var(--tint);font-weight:650}.profile-card-mark{background:var(--bg-2);color:var(--label-2);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;display:inline-flex;position:absolute;bottom:8px;right:8px}.profile-card.selected .profile-card-mark{background:var(--tint);color:#fff}.profile-picker-state{background:var(--bg-cell);border:.5px dashed var(--separator);color:var(--label-2);border-radius:16px;padding:14px;font-size:12px;line-height:1.4}.profile-picker-state.error{color:var(--red);background:#ff383c14;border-color:#ff383c47}.profile-picker-feedback{color:var(--label);background:#34c7591a;border:.5px solid #34c75940;border-radius:15px;margin-top:16px;padding:12px 14px;font-size:12px;line-height:1.4}.profile-picker-footnote{color:var(--label-2);margin-top:16px;font-size:10px;line-height:1.4;display:block}@media (max-width:720px){.profile-picker{border-radius:24px;margin-bottom:20px;padding:17px 14px 16px}.profile-picker-heading h3{font-size:27px}.profile-picker-description{margin:13px 0 17px;font-size:13px}.profile-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.profile-card{border-radius:18px;min-height:136px;padding:12px 8px 10px}.profile-avatar{flex-basis:56px;width:56px;height:56px}.profile-card-copy strong{font-size:12px}.profile-card-copy small{font-size:10px}}@media (max-width:390px){.profile-picker-heading h3{font-size:25px}.profile-count{padding:7px 8px;font-size:10px}.profile-card{min-height:130px}.profile-avatar{flex-basis:52px;width:52px;height:52px}}@media (prefers-reduced-motion:reduce){.profile-card{transition:none}}.sheet-backdrop{isolation:isolate;overscroll-behavior:contain;background:var(--bg-grouped)!important}.upload-sheet{border:.5px solid var(--separator);opacity:1;overscroll-behavior:contain;touch-action:pan-y;border-bottom:0;max-height:min(650px,92svh);position:relative;overflow-y:auto;box-shadow:0 -18px 54px #202b4029,inset 0 1px #ffffffc2;background:var(--bg)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.theme-dark .upload-sheet{box-shadow:0 -18px 54px #0000007a,inset 0 1px #ffffff24}.sheet-heading>button{justify-content:center;align-items:center;display:inline-flex}.sheet-heading>button svg,.sheet-action-icon svg,.sheet-note-icon svg{display:block}.sheet-note-icon{justify-content:center;align-items:center;display:inline-flex}.sheet-actions button,.sheet-actions label{transition:background .2s var(--ease-apple), color .2s var(--ease-apple), opacity .2s var(--ease-apple), transform .2s var(--ease-apple)}.sheet-action-icon{background:var(--tint-soft);color:var(--tint);border-radius:16px;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.sheet-actions button:nth-child(2) .sheet-action-icon{background:var(--bg);color:var(--label)}.sheet-actions label .sheet-action-icon{background:var(--bg);color:var(--label-2)}.sheet-actions button:active,.sheet-actions label:active{opacity:.8;transform:scale(.97)}.sheet-actions button:first-child:hover,.sheet-actions button:hover,.sheet-actions label:hover{background:var(--tint-soft);color:var(--tint)}.sheet-actions button:nth-child(2):hover .sheet-action-icon,.sheet-actions label:hover .sheet-action-icon{background:var(--bg)}@media (max-width:720px){.upload-sheet{padding-left:16px;padding-right:16px}}@media (prefers-reduced-motion:reduce){.upload-sheet,.sheet-actions button,.sheet-actions label{transition:none!important;animation:none!important}}.wedding-app[data-pre-event=true] .app-content{padding-bottom:24px}.wedding-app[data-pre-event=true] .app-content>.demo-notice{display:none}.pre-event-screen{justify-content:center;align-items:center;max-width:760px;min-height:calc(100svh - 74px);padding:30px 0 48px;display:flex}.countdown-card{animation:countdown-card-in .6s var(--ease-apple) both;background:var(--bg);border:.5px solid var(--separator);border-radius:32px;width:100%;max-width:620px;padding:clamp(27px,6vw,48px);position:relative;overflow:hidden;box-shadow:0 22px 64px #1f2b411f,inset 0 1px #ffffffd6}.theme-dark .countdown-card{box-shadow:0 22px 64px #00000057,inset 0 1px #ffffff1f}.countdown-card:before{content:"";pointer-events:none;background:radial-gradient(circle at 86% 9%,#147ef52e,#0000 26%),radial-gradient(circle at 8% 91%,#ffc2a633,#0000 27%);height:180px;position:absolute;inset:0 0 auto}.countdown-card>*{position:relative}.countdown-copy h1{color:var(--label);letter-spacing:-.075em;margin:17px 0 15px;font-size:clamp(42px,8vw,68px);font-weight:700;line-height:.94}.countdown-copy p{color:var(--label-2);margin:0;font-size:15px}.countdown-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:34px;display:grid}.countdown-unit{background:var(--bg-2);border:.5px solid var(--separator);text-align:center;border-radius:20px;min-width:0;padding:18px 6px 15px}.countdown-unit strong{color:var(--label);font-variant-numeric:tabular-nums;letter-spacing:-.07em;font-size:clamp(27px,5vw,45px);font-weight:650;line-height:1;display:block}.countdown-unit span{color:var(--label-2);letter-spacing:.09em;text-transform:uppercase;margin-top:9px;font-size:9px;display:block}.countdown-date{border-top:.5px solid var(--separator);color:var(--label-2);align-items:center;gap:8px;margin-top:21px;padding-top:16px;font-size:12px;display:flex}.countdown-date svg{color:var(--tint);flex:none}@keyframes countdown-card-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:720px){.wedding-app[data-pre-event=true] .app-content{padding-bottom:env(safe-area-inset-bottom)}.pre-event-screen{min-height:calc(100svh - 64px - env(safe-area-inset-top));padding:22px 0 30px}.countdown-card{border-radius:27px;padding:27px 20px 21px}.countdown-copy h1{font-size:clamp(42px,12vw,56px)}.countdown-copy p{font-size:14px}.countdown-grid{gap:6px;margin-top:29px}.countdown-unit{border-radius:17px;padding:16px 3px 13px}.countdown-unit strong{font-size:clamp(25px,8vw,35px)}.countdown-unit span{letter-spacing:.06em;margin-top:8px;font-size:8px}.countdown-date{margin-top:18px;padding-top:14px;font-size:11px}}@media (max-width:350px){.countdown-card{padding-left:16px;padding-right:16px}.countdown-unit{padding-left:1px;padding-right:1px}.countdown-unit strong{font-size:23px}.countdown-unit span{font-size:7px}}@media (prefers-reduced-motion:reduce){.countdown-card{animation:none!important}}.gallery-scope-tabs{background:var(--bg-2);border:.5px solid var(--separator);border-radius:18px;align-items:center;gap:3px;width:fit-content;margin:0 0 20px;padding:3px;display:flex}.gallery-scope-tabs button{color:var(--label-2);min-height:42px;transition:background .24s var(--ease-apple), box-shadow .24s var(--ease-apple), color .24s var(--ease-apple), transform .24s var(--ease-apple);white-space:nowrap;background:0 0;border:0;border-radius:14px;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-size:12px;display:inline-flex}.gallery-scope-tabs button.active{background:var(--bg);color:var(--label);box-shadow:0 4px 14px #202b401a,inset 0 1px #ffffffb3}.gallery-scope-tabs button:active{opacity:.78;transform:scale(.97)}.gallery-scope-tabs button svg{color:var(--tint);flex:none}.theme-dark .gallery-scope-tabs button.active{box-shadow:0 4px 14px #00000040,inset 0 1px #ffffff1a}.personal-library-profile{background:var(--bg-2);border:.5px solid var(--separator);border-radius:21px;align-items:center;gap:12px;margin:0 0 22px;padding:12px 14px;display:flex}.personal-library-avatar{background:var(--tint-soft);color:var(--tint);background-position:50%;background-repeat:no-repeat;background-size:cover;border:.5px solid #147ef533;border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;overflow:hidden}.personal-library-avatar.has-image{border-color:#ffffffc2;box-shadow:0 4px 12px #1f2b411f}.personal-library-profile>div:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}.personal-library-profile strong{color:var(--label);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.personal-library-profile small{color:var(--label-2);font-size:11px}.personal-library-check{color:#26725a;background:#34c7591f;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-left:auto;display:inline-flex}.personal-approved-gallery{margin-top:30px}.personal-approved-gallery .gallery-grid{margin-top:0}.personal-library-empty{background:var(--bg-2);border:.5px dashed var(--separator);text-align:center;border-radius:25px;flex-direction:column;justify-content:center;align-items:center;min-height:282px;padding:32px 22px;display:flex}.personal-empty-icon{background:var(--tint-soft);color:var(--tint);border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:16px;display:inline-flex}.personal-library-empty>strong{color:var(--label);letter-spacing:-.045em;font-size:20px}.personal-library-empty>p{color:var(--label-2);max-width:350px;margin:9px auto 18px;font-size:13px;line-height:1.5}.personal-library-empty .empty-upload-link{background:var(--tint);color:#fff;font-weight:650}.public-gallery{min-width:0}@media (max-width:720px){.gallery-scope-tabs{width:100%;margin-bottom:17px}.gallery-scope-tabs button{flex:1 1 0;padding:0 8px;font-size:11px}.personal-library-profile{border-radius:18px;margin-bottom:18px;padding:11px 12px}.personal-library-avatar{flex-basis:40px;width:40px;height:40px}.personal-library-profile strong{font-size:13px}.personal-library-profile small{font-size:10px}.personal-library-empty{min-height:255px;padding:28px 17px}.personal-library-empty>strong{font-size:18px}.personal-library-empty>p{font-size:12px}}@media (prefers-reduced-motion:reduce){.gallery-scope-tabs button{transition:none}}:root{--wedding-tea:#f2c1c5;--wedding-antique:#d98692;--wedding-medium:#c45d74;--wedding-burnt:#b86870;--wedding-peach:#f3948b;--ivory:#fff9f9;--paper:#fffdfd;--sand:#f2dfe1;--gold:var(--wedding-antique);--gold-deep:var(--wedding-burnt);--rose:var(--wedding-tea);--sage:#f6e3e0;--lilac:#f3e1e6;--ink:#25191c;--muted:#765f66;--faint:#aa8e95;--line:#75414d29;--app-bg:#fbf2f3;--surface:snow;--surface-soft:#fff5f5;--blue:var(--wedding-medium);--blue-dark:var(--wedding-burnt);--blue-soft:#f9e5e7;--green-soft:#f6e3e0;--peach-soft:#fde6e0;--lavender-soft:#f4e1e6;--text-strong:#25191c;--text-soft:#765f66;--border-soft:#ead1d6;--label:#25191c;--label-2:#45252da3;--label-3:#45252d5c;--separator:#75414d2e;--bg:snow;--bg-2:#f8eef0;--bg-grouped:#fbf4f5;--bg-cell:#fffafac7;--tint:var(--wedding-medium);--tint-soft:#c45d7424;--glass-shadow:0 12px 36px #562c361f, inset 0 1px 0 #ffffffbd, inset 0 0 0 .5px #ffffff52}.wedding-app.theme-dark{--label:#f5f5f7;--label-2:#f5ebeea8;--label-3:#f5ebee61;--separator:#d68f9b47;--app-bg:#120d0f;--surface:#1d1518;--surface-soft:#21181b;--green-soft:#34c75929;--peach-soft:#f3948b2e;--lavender-soft:#ee9aaa24;--text-strong:#f5f5f7;--text-soft:#f5ebeea8;--border-soft:#d68f9b47;--bg:#0d0a0b;--bg-2:#21181b;--bg-grouped:#120d0f;--bg-cell:#2d1e23d1;--tint:#ee9aaa;--tint-soft:#ee9aaa2e;--blue:#ee9aaa;--blue-dark:#f2bbc3;--blue-soft:#ee9aaa29;--glass-regular:#2d1e23b8;--glass-clear:#2d1e2380;--glass-border:#ffebef2b;--glass-shadow:0 14px 38px #00000061, inset 0 1px 0 #ffffff24, inset 0 0 0 .5px #ffffff14}body{background:var(--bg-grouped);color:var(--label)}.wedding-app{background:var(--bg-grouped)}.wedding-app:before{background:radial-gradient(circle at 9% 14%,#f2c1c57a,#0000 27%),radial-gradient(circle at 88% 8%,#f3948b4d,#0000 31%),radial-gradient(circle at 65% 84%,#c45d7433,#0000 30%)}.app-topbar:before{background:linear-gradient(#fffafaeb,#fffafaa8)}.theme-dark .app-topbar:before{background:linear-gradient(#0d0a0beb,#0d0a0bb3)}.app-sidebar{border-color:var(--separator);background:#fff8f9b8}.theme-dark .app-sidebar{background:#160e11b8}.app-logo,.app-logo i{color:var(--label)}.sidebar-label,.eyebrow,.inline-link,.back-link,.home-kicker,.library-kicker,.side-link.active span,.side-link:hover span{color:var(--tint)}.hero-action-strip button:first-child{color:var(--wedding-burnt)}.home-hero-image{background:linear-gradient(180deg, #2c141b0a 0%, #26121933 44%, #220f16c2 100%), radial-gradient(ellipse at 72% 30%, #ffffffe0 0 7%, transparent 24%), radial-gradient(ellipse at 39% 35%, #f2c1c5e0 0 9%, transparent 28%), linear-gradient(128deg, var(--wedding-tea) 0%, var(--wedding-peach) 34%, var(--wedding-antique) 66%, #542d3a 100%)}.action-card.primary{background:linear-gradient(145deg, var(--wedding-medium), var(--wedding-peach))!important}.action-card.mint{background:linear-gradient(145deg,#f2c1c5b8,#fffafad1)!important}.action-card.peach{background:linear-gradient(145deg,#d9869261,#fffafad6)!important}.action-card.lavender{background:linear-gradient(145deg,#f3e1e6e6,#fffafad6)!important}.library-upload-button,.gallery-upload-cta{background:var(--tint);box-shadow:0 7px 18px #c45d7438}.library-upload-button:hover,.gallery-upload-cta:hover{background:var(--tint);box-shadow:0 8px 22px #c45d7447}.progress-track span{background-image:linear-gradient(90deg, var(--wedding-medium), var(--wedding-peach), var(--wedding-medium))}.locked-notice{border-color:#d9869252}.people-helper{color:var(--wedding-burnt);background:#f2c1c547}.people-helper>span{background:#c45d7424}.people-helper p{color:var(--muted)}.unlock-panel{background:linear-gradient(135deg, #f9e5e7d1 0%, var(--surface) 54%);border-color:#ead1d6}.people-panel .placeholder-note>span{color:var(--wedding-burnt);border-color:#d986929e}.answer-option:hover{border-color:#c45d7461}.mobile-bottom-nav .mobile-add-button{background:var(--tint);box-shadow:0 7px 17px #c45d744d,inset 0 1px #ffffff57}.gallery-upload-cta{box-shadow:0 7px 18px #c45d7438}.profile-card:hover{border-color:#c45d7461}.profile-card.selected{border-color:#c45d748c}.profile-avatar{border-color:#c45d7433}.countdown-card:before{background:radial-gradient(circle at 86% 9%,#c45d742e,#0000 26%),radial-gradient(circle at 8% 91%,#f3948b33,#0000 27%)}.personal-library-avatar{border-color:#c45d7433}.wedding-app[data-view=home]{background:var(--countdown-night,#100a10)}.wedding-app[data-view=home] .app-content{background:var(--countdown-night,#100a10);padding-left:0;padding-right:0}.wedding-app[data-view=home] .app-topbar:before{background:linear-gradient(#100a10fa,#100a10d1);border-bottom-color:#f2c1c524}.wedding-app[data-view=home] .app-logo{color:#fff7f8}.wedding-app[data-view=home] .app-logo i{color:var(--wedding-peach)}.wedding-app[data-view=home] .app-sidebar{background:#100a10f5;border-right-color:#f2c1c524}.wedding-app[data-view=home] .app-sidebar .sidebar-label,.wedding-app[data-view=home] .app-sidebar .sidebar-label{color:var(--wedding-peach)}.wedding-app[data-view=home] .app-sidebar .side-link{color:#fff7f894}.wedding-app[data-view=home] .app-sidebar .side-link span{color:#f2c1c58a}.wedding-app[data-view=home] .app-sidebar .side-link.active,.wedding-app[data-view=home] .app-sidebar .side-link:hover{color:#fff7f8}.wedding-app[data-view=home] .app-sidebar .side-link.active span,.wedding-app[data-view=home] .app-sidebar .side-link:hover span{color:var(--wedding-peach)}.wedding-app[data-view=home] .app-content>.mobile-page-title,.wedding-app[data-view=home] .app-content>.demo-notice,.wedding-app[data-view=home] .app-content>.app-footer{display:none}.wedding-app[data-view=home] .app-content{max-width:none;padding-bottom:0}.wedding-app[data-view=home] .view-stage{min-height:0}.wedding-app[data-view=home] .home-screen{max-width:none;padding:0}.wedding-app[data-view=home] .pre-event-screen{justify-content:stretch;align-items:stretch;min-height:calc(100svh - 74px);display:flex}.convites-embed-page{background:var(--app-bg);width:100%;min-height:100svh;overflow:hidden}.convites-embed-page iframe{border:0;width:100%;height:100svh;min-height:100svh;display:block}.cinematic-countdown{--countdown-night:#100a10;--countdown-night-soft:#25121f;--countdown-rose:var(--wedding-medium);--countdown-pink:var(--wedding-tea);--countdown-peach:var(--wedding-peach);background:radial-gradient(circle at 50% 45%, #c45d7433, transparent 28%), linear-gradient(145deg, var(--countdown-night) 0%, var(--countdown-night-soft) 48%, #08070a 100%);color:#fff7f8;isolation:isolate;align-items:stretch;width:100%;max-width:none;min-height:calc(100svh - 74px);position:relative;overflow:hidden;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important}.cinematic-countdown:before{display:none}.cinematic-backdrop,.cinematic-vignette{pointer-events:none;position:absolute;inset:0}.cinematic-backdrop{z-index:0;overflow:hidden}.cinematic-backdrop:before{content:"";filter:blur(24px);background:radial-gradient(at 17% 16%,#f3948b57,#0000 26%),radial-gradient(at 81% 30%,#c45d7466,#0000 27%),radial-gradient(at 50% 100%,#d986923b,#0000 35%);animation:14s ease-in-out infinite alternate cinematic-aurora;position:absolute;inset:-20%}.cinematic-backdrop:after{content:"";opacity:.72;background-image:linear-gradient(118deg,#0000 14%,#ffffff09 48%,#0000 72%),radial-gradient(circle at 50% 52%,#0000 0 18%,#ffffff0a 42%,#0000 72%);position:absolute;inset:0}.cinematic-starfield{position:absolute;inset:0;overflow:hidden}.cinematic-starfield-back{opacity:.72}.cinematic-starfield-front{transform:scale(1.12)}.cinematic-starfield i{animation:cinematic-starflight var(--star-duration) linear var(--star-delay) infinite;background:var(--countdown-pink);height:clamp(1px,.28vw,3px);left:var(--star-x);opacity:0;top:var(--star-y);border-radius:50%;width:clamp(1px,.28vw,3px);position:absolute;transform:scale(.2);box-shadow:0 0 9px #f2c1c5eb}.cinematic-starfield-front i:nth-child(3n){background:var(--countdown-peach);box-shadow:0 0 12px #f3948be0}.cinematic-starfield-front i:nth-child(3n+1){background:var(--countdown-rose);box-shadow:0 0 12px #c45d74e6}.cinematic-title-crawl{color:#0000;opacity:.52;text-align:center;width:min(900px,100%);animation:16s cubic-bezier(.2,.65,.25,1) infinite cinematic-crawl;position:absolute;top:8%;left:50%;transform:translate(-50%)perspective(520px)rotateX(62deg)scale(.88)}.cinematic-title-crawl span{letter-spacing:-.15em;-webkit-text-stroke:1px #f2c1c56b;text-shadow:0 0 28px #c45d746b;margin-right:.15em;font-family:Georgia,Times New Roman,serif;font-size:clamp(126px,24vw,330px);font-weight:700;line-height:.78;display:block}.cinematic-title-crawl small{color:#f2c1c594;letter-spacing:.42em;text-transform:uppercase;margin-top:24px;margin-left:.42em;font-size:10px;display:block}.cinematic-beam{filter:blur(1px);background:linear-gradient(90deg,#0000,#f3948bcc,#f2c1c566,#0000);width:140%;height:1px;animation:7s ease-in-out infinite cinematic-beam-sweep;position:absolute;top:47%;left:-20%;transform:rotate(-14deg)}.cinematic-orb{opacity:.48;border:1px solid #f2c1c52b;border-radius:50%;width:clamp(180px,32vw,440px);height:clamp(180px,32vw,440px);position:absolute}.cinematic-orb:after{border-radius:inherit;content:"";border:1px solid #f3948b29;position:absolute;inset:13%}.cinematic-orb-left{top:23%;left:-18%;transform:rotate(-24deg)scaleX(.72)}.cinematic-orb-right{bottom:-22%;right:-13%;transform:rotate(22deg)scaleX(.68)}.cinematic-vignette{z-index:3;background:radial-gradient(circle,#0000 33%,#03020494 100%)}.countdown-content{min-height:inherit;z-index:2;flex-direction:column;place-content:center;align-items:center;gap:clamp(30px,7vh,72px);width:100%;padding:clamp(40px,6vw,76px) clamp(24px,7vw,96px) clamp(28px,5vw,54px);display:flex;position:relative}.countdown-copy{text-align:center;width:100%;max-width:760px}.countdown-kicker{color:var(--countdown-peach);letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.countdown-copy h1{color:#fff7f8;letter-spacing:-.08em;text-shadow:0 8px 34px #00000061;margin:18px 0 0;font-size:clamp(48px,7vw,86px);line-height:.91}.countdown-copy h1 em{color:var(--countdown-pink);font-style:italic}.countdown-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,1.2vw,16px);width:100%;max-width:1000px;margin:0 auto;display:grid}.countdown-unit{animation:cinematic-unit-in .7s var(--ease-apple) both;text-align:center;-webkit-backdrop-filter:blur(22px)saturate(160%);background:linear-gradient(145deg,#fff3,#ffffff0e);border:.5px solid #ffffff57;border-radius:clamp(18px,2.2vw,30px);min-height:clamp(112px,14vw,188px);padding:clamp(18px,3vw,34px) 10px;position:relative;overflow:hidden;box-shadow:0 18px 46px #00000045,inset 0 1px #ffffff7a,inset 0 0 0 .5px #ffffff1a}.countdown-unit:before{content:"";background:linear-gradient(108deg,#0000 16%,#ffffff9e 48%,#0000 74%);animation:5.5s ease-in-out infinite cinematic-sheen;position:absolute;inset:0;transform:translate(-120%)}.countdown-unit:first-child{--unit-color:var(--wedding-tea)}.countdown-unit:nth-child(2){--unit-color:var(--wedding-antique)}.countdown-unit:nth-child(3){--unit-color:var(--wedding-peach)}.countdown-unit:nth-child(4){--unit-color:var(--wedding-medium)}.countdown-unit strong{animation:cinematic-number-bloom .55s var(--ease-apple) both;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.09em;text-shadow:0 0 24px #f2c1c557;z-index:1;font-size:clamp(44px,8vw,94px);font-weight:650;line-height:1;display:block;position:relative}.countdown-unit span{color:var(--unit-color);letter-spacing:.16em;text-transform:uppercase;z-index:1;margin-top:14px;font-size:9px;font-weight:700;display:block;position:relative}.countdown-footer{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.countdown-date{color:#fff7f8ad;border:0;justify-content:center;gap:8px;margin:0;padding:0;font-size:12px}.countdown-date svg{color:var(--countdown-peach)}@media (min-width:721px){.countdown-content{padding-top:34px;padding-bottom:28px}.countdown-copy h1{font-size:clamp(48px,6vw,72px)}.countdown-grid{margin-top:32px;margin-bottom:32px}.countdown-unit{min-height:150px;padding-top:25px;padding-bottom:25px}.countdown-unit strong{font-size:clamp(44px,7vw,80px)}}@keyframes cinematic-aurora{0%{transform:translate(-2%,-1%)scale(.98)rotate(0)}to{transform:translate(3%,2%)scale(1.08)rotate(4deg)}}@keyframes cinematic-starflight{0%{opacity:0;transform:translate(0,0)scale(.2)}18%{opacity:.65}74%{opacity:.34}to{opacity:0;transform:translate3d(0, 18vh, 0) scale(var(--star-scale))}}@keyframes cinematic-crawl{0%,to{opacity:.32;transform:translate(-50%)perspective(520px)rotateX(62deg)scale(.84)translateY(-8%)}50%{opacity:.68;transform:translate(-50%)perspective(520px)rotateX(62deg)scale(1.04)translateY(5%)}}@keyframes cinematic-beam-sweep{0%,to{opacity:0;transform:translate(-22%)rotate(-14deg)}35%,68%{opacity:.75}52%{transform:translate(22%)rotate(-14deg)}}@keyframes cinematic-unit-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cinematic-number-bloom{0%{filter:blur(7px);opacity:.25;transform:translateY(8px)scale(.9)}to{filter:blur();opacity:1;transform:translateY(0)scale(1)}}@keyframes cinematic-sheen{0%,46%{transform:translate(-120%)}64%,to{transform:translate(120%)}}@media (max-width:720px){.wedding-app[data-view=home] .pre-event-screen,.cinematic-countdown{min-height:calc(100svh - 64px)}.countdown-content{padding:32px 16px calc(28px + env(safe-area-inset-bottom))}.wedding-app[data-event-open=true] .countdown-content{padding-bottom:calc(102px + env(safe-area-inset-bottom))}.cinematic-title-crawl{top:13%;transform:translate(-50%)perspective(520px)rotateX(62deg)scale(.78)}.cinematic-title-crawl span{font-size:clamp(112px,35vw,210px)}.cinematic-title-crawl small{margin-top:16px;font-size:8px}.cinematic-starfield-front{transform:scale(1.05)}.cinematic-orb{width:230px;height:230px}.countdown-copy h1{font-size:clamp(42px,12vw,60px)}.countdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:430px;margin:0 auto}.countdown-unit{min-height:116px;padding:22px 6px 17px}.countdown-unit strong{font-size:clamp(42px,15vw,70px)}.countdown-unit span{letter-spacing:.13em;margin-top:11px;font-size:8px}.countdown-date{font-size:11px}}@media (prefers-reduced-motion:reduce){.cinematic-backdrop:before,.cinematic-starfield i,.cinematic-title-crawl,.cinematic-beam,.countdown-unit,.countdown-unit:before,.countdown-unit strong{animation:none!important}.cinematic-title-crawl{opacity:.34;transform:translate(-50%)perspective(520px)rotateX(62deg)scale(.88)}}.gallery-photo-only{isolation:auto;max-width:1180px;min-height:calc(100svh - 74px);padding-bottom:max(64px, env(safe-area-inset-bottom));position:relative;overflow-x:clip}.gallery-photo-only:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 8% 6%,#f2c1c538,#0000 24%),radial-gradient(circle at 96% 22%,#f3948b29,#0000 25%);position:absolute;inset:0 -18vw}.gallery-photo-only>*{z-index:1;position:relative}.gallery-photo-nav{z-index:12;justify-content:space-between;align-items:center;gap:10px;min-width:0;max-width:100%;margin:0 0 18px;display:flex;position:sticky;top:77px}.gallery-photo-nav:before{-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%);content:"";pointer-events:none;z-index:-1;background:#fffafa8f;border:.5px solid #75414d1f;border-radius:25px;position:absolute;inset:-8px -10px;box-shadow:0 10px 30px #562c3614,inset 0 1px #ffffffb3}.gallery-photo-nav>.gallery-scope-tabs{min-width:0;max-width:100%;margin:0}.gallery-photo-nav .gallery-upload-cta{touch-action:manipulation;z-index:1;flex:none;min-width:44px;min-height:44px;position:relative}.gallery-photo-only .gallery-scope-tabs{-webkit-backdrop-filter:blur(22px)saturate(155%);backdrop-filter:blur(22px)saturate(155%);background:#ffffff59;border-color:#75414d21;border-radius:999px;box-shadow:inset 0 1px #ffffffa3,0 5px 16px #562c360f}.gallery-photo-only .gallery-scope-tabs button{min-width:0;min-height:44px}.gallery-photo-only .public-gallery{animation:gallery-surface-in .55s var(--ease-apple) both;width:100%;min-width:0;max-width:100%}.gallery-photo-only .gallery-tools{gap:10px;margin-bottom:12px}.gallery-photo-only .glass-search{min-height:50px;transition:border-color .24s var(--ease-apple), box-shadow .24s var(--ease-apple), background .24s var(--ease-apple);background:#ffffff75;border-color:#75414d24;box-shadow:0 8px 24px #562c3612,inset 0 1px #ffffff9e}.gallery-photo-only .glass-search:focus-within{background:#ffffffa3;border-color:#c45d7461;box-shadow:0 9px 26px #562c3617,0 0 0 3px #c45d741c,inset 0 1px #ffffffb8}.gallery-photo-only .glass-search>svg{color:var(--tint);flex:none}.gallery-photo-only .glass-search input{font-size:16px}.gallery-photo-only .glass-icon-button{color:var(--tint);background:#ffffff7a;border-color:#75414d24;width:50px;height:50px;box-shadow:0 8px 24px #562c3612,inset 0 1px #ffffff9e}.gallery-photo-only .glass-icon-button[aria-expanded=true]{background:var(--tint);color:#fff;transform:rotate(8deg)}.gallery-photo-only .photo-view-tabs{background:#75414d14;margin-bottom:20px;box-shadow:inset 0 1px #ffffff52}.gallery-photo-only .photo-view-tabs button{min-height:42px;transition:background .24s var(--ease-apple), box-shadow .24s var(--ease-apple), color .24s var(--ease-apple), transform .24s var(--ease-apple)}.gallery-photo-only .photo-view-tabs button:active,.gallery-photo-only .gallery-filter-sheet button:active,.gallery-photo-only .gallery-upload-cta:active{opacity:.8;transform:scale(.97)}.gallery-photo-only .gallery-filter-sheet{animation:gallery-filter-in .28s var(--ease-apple) both;-webkit-backdrop-filter:blur(24px)saturate(150%);backdrop-filter:blur(24px)saturate(150%);background:#ffffff9e;border:.5px solid #75414d21;margin-bottom:16px;box-shadow:0 14px 32px #562c361a,inset 0 1px #ffffffb3}.gallery-photo-only .gallery-filter-sheet>span{color:var(--label-2);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.gallery-photo-only .gallery-filter-sheet button{min-height:40px;transition:background .2s var(--ease-apple), color .2s var(--ease-apple), transform .2s var(--ease-apple)}.gallery-photo-only .gallery-filter-sheet button.active{background:var(--tint);color:#fff}.gallery-photo-only .gallery-filter-row{display:none}.gallery-photo-only .moment-stream{animation:gallery-surface-in .7s 60ms var(--ease-apple) both;gap:clamp(27px,4vw,42px)}.gallery-photo-only .moment-section-heading{align-items:baseline;margin:0 3px 10px}.gallery-photo-only .moment-section-heading div{flex-direction:row;align-items:baseline;gap:9px}.gallery-photo-only .moment-section-heading strong{color:var(--label);letter-spacing:.08em;text-transform:uppercase;font-size:13px;font-weight:700}.gallery-photo-only .moment-section-heading small{color:var(--label-2);font-size:11px}.gallery-photo-only .gallery-only-grid{background:0 0;border-radius:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(7px,1.05vw,12px);width:100%;min-width:0;display:grid;overflow:visible}.gallery-photo-only .gallery-only-grid .media-tile{animation:gallery-tile-in .66s var(--ease-apple) both;animation-delay:calc(var(--gallery-index,0) * 55ms);transform-origin:50%;transition:box-shadow .35s var(--ease-apple), transform .35s var(--ease-apple);background:0 0;border:0;border-radius:clamp(15px,1.7vw,22px);position:relative;overflow:hidden;box-shadow:0 9px 24px #562c361a}.gallery-photo-only .gallery-only-grid .media-tile:hover{transform:translateY(-3px);box-shadow:0 15px 34px #562c362b}.gallery-photo-only .gallery-only-grid .media-tile:active{transform:scale(.975)}.gallery-photo-only .gallery-only-grid .media-art{aspect-ratio:1;background:var(--surface-soft);border-radius:inherit;isolation:isolate;overflow:hidden}.gallery-photo-only .gallery-only-grid .media-art:after{content:"";pointer-events:none;z-index:1;background:linear-gradient(145deg,#fff3,#0000 34%,#25191c14);position:absolute;inset:0}.gallery-photo-only .gallery-only-grid .media-placeholder,.gallery-photo-only .gallery-only-grid .remote-media-image{filter:saturate(1.03);transition:filter .45s var(--ease-apple), transform .65s var(--ease-apple)}.gallery-photo-only .gallery-only-grid .media-tile:hover .media-placeholder,.gallery-photo-only .gallery-only-grid .media-tile:hover .remote-media-image{filter:saturate(1.1);transform:scale(1.045)}.gallery-photo-only .gallery-only-grid .media-placeholder span,.gallery-photo-only .gallery-only-grid .media-placeholder small,.gallery-photo-only .gallery-only-grid .media-meta{display:none}.gallery-photo-only .gallery-only-grid .media-favorite-badge{text-align:center;z-index:2;background:#25191c57;border-color:#ffffff8c;width:28px;height:28px;padding:4px;font-size:11px;line-height:19px;top:8px;right:8px}.gallery-photo-only .empty-state{animation:gallery-surface-in .45s var(--ease-apple) both;-webkit-backdrop-filter:blur(20px)saturate(150%);backdrop-filter:blur(20px)saturate(150%);background:#ffffff75;border:.5px solid #75414d21;border-radius:24px;margin-top:22px;box-shadow:0 12px 30px #562c3614,inset 0 1px #ffffffb3}.gallery-photo-only .photo-viewer-overlay{z-index:120}.gallery-photo-only .empty-state .empty-icon{color:var(--tint)}.theme-dark .gallery-photo-nav:before{background:#23161bad;border-color:#ffebef21;box-shadow:0 12px 32px #0000003d,inset 0 1px #ffffff1f}.theme-dark .gallery-photo-only .gallery-scope-tabs{background:#2d1e2375;border-color:#ffebef24}.theme-dark .gallery-photo-only .gallery-scope-tabs button.active{background:#4a2f37db;box-shadow:0 5px 16px #0000003d,inset 0 1px #ffffff1f}.theme-dark .gallery-photo-only .glass-search,.theme-dark .gallery-photo-only .glass-icon-button,.theme-dark .gallery-photo-only .gallery-filter-sheet,.theme-dark .gallery-photo-only .empty-state{background:#2d1e23a8;border-color:#ffebef26;box-shadow:0 12px 30px #0003,inset 0 1px #ffffff1a}.theme-dark .gallery-photo-only .glass-search:focus-within{background:#37242bcc}.theme-dark .gallery-photo-only .photo-view-tabs{background:#ffebef1a}.theme-dark .gallery-photo-only .gallery-only-grid .media-tile{box-shadow:0 10px 25px #00000052}.theme-dark .gallery-photo-only .gallery-only-grid .media-tile:hover{box-shadow:0 16px 36px #00000075}@keyframes gallery-surface-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes gallery-tile-in{0%{opacity:0;transform:translateY(13px)scale(.975)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes gallery-filter-in{0%{opacity:0;transform:translateY(-5px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:720px){.gallery-photo-only{min-height:calc(100svh - 64px);padding-top:13px}.gallery-photo-nav{gap:8px;margin-bottom:16px;top:72px}.gallery-photo-nav:before{border-radius:22px;inset:-7px -8px}.gallery-photo-nav>.gallery-scope-tabs{flex:auto;min-width:0}.gallery-photo-only .gallery-scope-tabs button{flex:1 1 0;gap:5px;min-width:0;padding:0 7px;font-size:11px}.gallery-photo-nav .gallery-upload-cta{border-radius:50%;width:44px;height:44px;padding:0}.gallery-photo-nav .gallery-upload-cta strong{display:none}.gallery-photo-only .gallery-tools{margin-bottom:10px}.gallery-photo-only .glass-search{min-height:48px}.gallery-photo-only .glass-search input{font-size:15px}.gallery-photo-only .glass-icon-button{width:48px;height:48px}.gallery-photo-only .photo-view-tabs{width:100%;margin-bottom:17px}.gallery-photo-only .photo-view-tabs button{flex:1 1 0;min-height:42px;padding:0 7px;font-size:12px}.gallery-photo-only .moment-stream{gap:27px}.gallery-photo-only .moment-section-heading{margin-bottom:9px}.gallery-photo-only .moment-section-heading strong{font-size:12px}.gallery-photo-only .moment-section-heading small{font-size:10px}.gallery-photo-only .gallery-only-grid{border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.gallery-photo-only .gallery-only-grid .media-tile{border-radius:16px}.gallery-photo-only .gallery-only-grid .media-favorite-badge{width:26px;height:26px;line-height:17px;top:6px;right:6px}}@media (prefers-reduced-motion:reduce){.gallery-photo-only *,.gallery-photo-only:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}.gallery-photo-only .gallery-only-grid .media-tile,.gallery-photo-only .gallery-only-grid .media-placeholder,.gallery-photo-only .gallery-only-grid .remote-media-image{opacity:1;transform:none!important}}.gallery-photo-only,.gallery-photo-only>.personal-gallery,.gallery-photo-only>.public-gallery,.gallery-photo-only .personal-library-profile,.gallery-photo-only .personal-library-empty{width:100%;min-width:0;max-width:100%}.quiz-test-mode{gap:12px;display:grid}.quiz-test-banner{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--label-2);border-radius:16px;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:11px 14px;display:flex}.quiz-test-banner strong{color:var(--label);font-size:12px}.quiz-test-banner span{font-size:10px}.quiz-test-access{min-height:calc(100svh - 160px)}.live-game-shell{--game-ink:#1a1114;--game-ink-soft:#302027;--game-white:#fffaf8;--game-muted:#fffaf8ad;background:radial-gradient(circle at 84% 12%, #ee9aaa2e, transparent 26%), radial-gradient(circle at 7% 90%, #f6b97e24, transparent 29%), linear-gradient(140deg, var(--game-ink), #21151b 53%, #150f12);color:var(--game-white);isolation:isolate;border:1px solid #ffffff2e;border-radius:32px;max-width:1020px;min-height:550px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 28px 80px #2a19242e,inset 0 1px #ffffff29}.live-game-shell:before{content:"";pointer-events:none;background:linear-gradient(120deg,#0000 15%,#ffffff14 48%,#0000 70%);animation:9s ease-in-out infinite live-game-sheen;position:absolute;inset:0;transform:translate(-100%)}.live-game-shell:after{content:"";pointer-events:none;background:radial-gradient(circle at 50% 42%,#ffffff14,#0000 34%);position:absolute;inset:0}.live-game-shell>*{z-index:1;position:relative}.live-game-landing{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(44px,8vw,96px);display:flex}.live-game-orb,.live-game-loading-orb,.live-game-paused-mark{color:#f4c3c8;background:linear-gradient(145deg,#fff3,#ee9aaa29);border:1px solid #ffffff52;border-radius:50%;justify-content:center;align-items:center;width:78px;height:78px;margin-bottom:30px;display:flex;box-shadow:0 15px 36px #0003,inset 0 1px #fff6}.live-game-orb.soft{color:#f2c087}.live-game-loading-orb{animation:1.9s ease-in-out infinite live-game-pulse-orb}.live-game-loading-orb span{background:#f4c3c8;border-radius:50%;width:9px;height:9px;box-shadow:0 0 20px #f4c3c8}.live-game-shell .eyebrow:before{background:currentColor}.live-game-shell h1{color:var(--game-white);font-family:var(--serif);letter-spacing:-.08em;max-width:780px;margin:17px 0 22px;font-size:clamp(46px,7vw,83px);font-weight:400;line-height:.9}.live-game-shell h1 em{color:#f4bbc4;font-style:italic}.live-game-shell p{color:var(--game-muted);max-width:480px;font-size:14px;line-height:1.6}.live-game-primary{color:#24151a;background:#f1a2af;border-radius:17px;align-items:center;gap:12px;min-height:54px;margin-top:21px;padding:0 18px;box-shadow:0 14px 30px #ee9aaa40}.live-game-primary:hover{background:#ffc3cc;transform:translateY(-2px);box-shadow:0 17px 34px #ee9aaa59}.live-game-primary span:last-child{margin-left:auto}.live-game-waiting-pill,.live-game-ready{color:var(--game-muted);background:#ffffff17;border:1px solid #ffffff26;border-radius:999px;align-items:center;gap:9px;margin-top:24px;padding:10px 14px;font-size:11px;display:inline-flex}.live-game-pulse{background:#f4bbc4;border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 4px #f4bbc41f}.live-game-waiting-layout{grid-template-columns:minmax(0,1fr) minmax(215px,.43fr);align-items:stretch;gap:clamp(36px,7vw,82px);min-height:500px;padding:clamp(38px,6vw,70px);display:grid}.live-game-landing.live-game-waiting{text-align:center;justify-content:center;align-items:center;padding:clamp(44px,8vw,96px)}.live-game-waiting-simple{width:100%;max-width:760px}.live-game-waiting-simple .eyebrow{justify-content:center}.live-game-waiting-simple .eyebrow:before{display:none}.live-game-waiting-simple h1{max-width:none;margin:18px auto 0}.live-game-waiting-main{align-items:flex-start;gap:22px;min-width:0;display:flex}.live-game-waiting-mark{color:#f4c3c8;background:#ee9aaa1a;border:1px solid #f4c3c861;border-radius:50%;flex-direction:column;flex:0 0 70px;justify-content:center;align-items:center;gap:4px;height:70px;margin-top:3px;display:flex;box-shadow:inset 0 1px #fff3,0 14px 28px #00000026}.live-game-waiting-mark span{font-family:var(--serif);letter-spacing:-.16em;margin-right:.16em;font-size:17px;line-height:1}.live-game-waiting-mark svg{color:#f2c087}.live-game-waiting-copy{min-width:0}.live-game-waiting-copy h1,.live-game-waiting-copy p{max-width:520px}.live-game-waiting-meta{color:#fffaf89e;border-top:1px solid #ffffff24;flex-wrap:wrap;align-items:center;gap:9px;margin-top:28px;padding-top:16px;font-size:11px;display:flex}.live-game-waiting-meta i{color:#f2c087;font-style:normal}.live-game-waiting-pill{margin-top:20px}.live-game-waiting-note{border-left:1px solid #ffffff26;flex-direction:column;justify-content:space-between;min-width:0;padding:7px 0 7px clamp(22px,3vw,36px);display:flex}.live-game-waiting-note>span{color:#f2c087;letter-spacing:.16em;font-size:9px;line-height:1.45}.live-game-waiting-monogram{color:#fffaf8c2;border-top:1px solid #ffffff24;align-items:baseline;gap:4px;padding-top:17px;display:flex}.live-game-waiting-monogram b{font-family:var(--serif);letter-spacing:-.13em;font-size:29px;font-weight:400}.live-game-waiting-monogram i{color:#f4bbc4;font-family:var(--serif);padding-bottom:8px;font-size:19px;font-style:italic}.live-game-header,.live-game-question-top,.live-game-card-heading{justify-content:space-between;align-items:flex-start;display:flex}.live-game-header h1{margin-bottom:0;font-size:clamp(38px,5vw,61px)}.live-game-status-badge{color:var(--game-muted);white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:9px;padding:10px 13px;font-size:10px;display:inline-flex}.live-game-lobby-grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:16px;padding:46px 48px 48px;display:grid}.live-game-code-card,.live-game-players-card,.live-game-results-board{background:#ffffff14;border:1px solid #ffffff24;border-radius:24px;padding:25px;box-shadow:inset 0 1px #ffffff1f}.live-game-code-card{flex-direction:column;display:flex}.live-game-mini-label,.admin-game-section-label{color:#ffffff8a;letter-spacing:.16em;text-transform:uppercase;font-size:9px;font-weight:700;display:block}.live-game-code-card>strong{color:var(--game-white);font-family:var(--serif);margin-top:13px;font-size:29px;font-weight:400}.live-game-code-card>small{color:var(--game-muted);margin-top:8px;font-size:11px;line-height:1.5}.live-game-code-card .live-game-primary{margin-top:auto}.live-game-card-heading{color:var(--game-white);align-items:center;margin-bottom:17px;font-size:12px}.live-game-card-heading span{align-items:center;gap:8px;display:inline-flex}.live-game-card-heading small{color:var(--game-muted);font-size:9px}.live-game-card-heading strong{color:#f4bbc4;font-family:var(--serif);font-size:23px;font-weight:400}.live-game-leaderboard{flex-direction:column;gap:6px;display:flex}.live-game-player-row{background:#ffffff0e;border:1px solid #0000;border-radius:16px;grid-template-columns:26px 34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:7px 10px;display:grid}.live-game-player-row.is-you{background:#f4bbc426;border-color:#f4bbc447}.live-game-rank{color:#ffffff8c;justify-content:center;align-items:center;font-size:10px;display:flex}.live-game-rank.rank-1{color:#f6d48e}.live-game-rank.rank-2{color:#d4dbe5}.live-game-rank.rank-3{color:#e8ae91}.live-game-player-avatar{color:#fff;background:linear-gradient(145deg,#f4bbc46b,#f0b28452) 50%/cover;border:1px solid #fff3;border-radius:11px;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:flex;overflow:hidden}.live-game-player-avatar img{object-fit:cover;width:100%;height:100%;display:block}.live-game-player-copy{min-width:0}.live-game-player-copy strong,.live-game-player-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.live-game-player-copy strong{color:var(--game-white);font-size:11px;font-weight:650}.live-game-player-copy small{color:var(--game-muted);margin-top:4px;font-size:9px}.live-game-player-score{color:#f4bbc4;font-family:var(--serif);font-size:19px;font-weight:400}.live-game-player-score small{color:var(--game-muted);font-family:var(--sans);text-transform:uppercase;margin-left:3px;font-size:8px}.live-game-empty-list{color:var(--game-muted);align-items:center;gap:9px;min-height:100px;font-size:11px;display:flex}.live-game-question-top{align-items:center;gap:26px}.live-game-question-top>div:first-child{flex:1}.live-game-question-top .eyebrow{color:var(--game-muted);letter-spacing:.14em}.live-game-question-top .eyebrow small{color:#ffffff61;font-size:9px}.live-game-question-progress,.admin-live-progress{background:#ffffff1f;border-radius:99px;height:5px;margin-top:12px;overflow:hidden}.live-game-question-progress span,.admin-live-progress span{border-radius:inherit;height:100%;transition:width .5s var(--ease-apple);background:linear-gradient(90deg,#f4bbc4,#f4d19c);display:block}.live-game-timer{background:conic-gradient(#f4bbc4 var(--timer-progress), #ffffff1f 0);border-radius:50%;flex-direction:column;flex:0 0 76px;justify-content:center;align-items:center;height:76px;display:flex;position:relative}.live-game-timer:before{content:"";background:#25263b;border-radius:50%;position:absolute;inset:6px}.live-game-timer>*{z-index:1;position:relative}.live-game-timer svg{color:#f4bbc4;margin-bottom:2px}.live-game-timer strong{color:var(--game-white);font-size:18px;line-height:1}.live-game-timer small{color:var(--game-muted);letter-spacing:.12em;text-transform:uppercase;margin-top:3px;font-size:7px}.live-game-timer.is-low{animation:.8s ease-in-out infinite alternate live-game-timer-low}.live-game-question-copy{text-align:center;max-width:790px;margin:57px auto 33px}.live-game-points{color:#f5cc8f;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:6px;font-size:10px;font-weight:700;display:inline-flex}.live-game-question-copy h1{margin:19px auto 14px;font-size:clamp(38px,5.6vw,67px);line-height:.96}.live-game-question-copy p{color:var(--game-muted);margin:0 auto;font-size:12px}.live-game-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;max-width:860px;margin:0 auto;display:grid}.live-game-answer{color:#fff;text-align:left;border:0;border-radius:20px;align-items:center;gap:16px;min-height:94px;padding:15px 20px;transition:filter .2s,transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 22px #0000002b,inset 0 1px #ffffff3d}.live-game-answer:hover{filter:saturate(1.12)brightness(1.06);transform:translateY(-2px);box-shadow:0 17px 28px #0000003b,inset 0 1px #ffffff5c}.live-game-answer:active{transform:scale(.98)}.live-game-answer:disabled{cursor:wait}.live-game-answer.selected{box-shadow:0 0 0 3px #ffffffb8,0 18px 28px #0000003d}.live-game-answer strong{font-size:14px;line-height:1.3}.live-game-answer i{background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-left:auto;display:flex}.live-game-answer-shape{font-family:var(--serif);background:#ffffff2e;border:1px solid #ffffff3d;border-radius:12px;flex:0 0 38px;justify-content:center;align-items:center;height:38px;font-size:20px;display:flex}.answer-coral{background:linear-gradient(135deg,#e57984,#bb4e71)}.answer-blue{background:linear-gradient(135deg,#5b94d8,#4162a3)}.answer-amber{background:linear-gradient(135deg,#e7ae5d,#bb7447)}.answer-violet{background:linear-gradient(135deg,#9e7fc1,#6a568f)}.live-game-answer-waiting{background:#ffffff17;border:1px solid #ffffff2b;border-radius:22px;align-items:center;gap:15px;max-width:760px;margin:0 auto;padding:17px 20px;display:flex}.live-game-waiting-check{color:#a9e0ba;background:#8fcda438;border-radius:50%;flex:0 0 48px;justify-content:center;align-items:center;height:48px;display:flex}.live-game-answer-waiting strong,.live-game-answer-waiting span{display:block}.live-game-answer-waiting strong{color:#fff;font-size:13px}.live-game-answer-waiting span{color:var(--game-muted);margin-top:4px;font-size:10px}.live-game-answer-waiting b{color:#f4bbc4;font-family:var(--serif);white-space:nowrap;margin-left:auto;font-size:21px;font-weight:400}.live-game-paused{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:55px 24px;display:flex}.live-game-paused-mark{color:#f5cc8f;margin-bottom:25px}.live-game-paused h1{font-size:clamp(42px,6vw,68px)}.live-game-paused-meta{color:var(--game-muted);flex-wrap:wrap;justify-content:center;gap:21px;margin-top:19px;font-size:11px;display:flex}.live-game-paused-meta span{align-items:center;gap:7px;display:inline-flex}.live-game-results{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;padding:48px;display:grid}.live-game-results-hero{flex-direction:column;justify-content:center;padding:16px 10px;display:flex}.live-game-results-hero .live-game-orb{width:67px;height:67px;margin-bottom:25px}.live-game-results-hero h1{font-size:clamp(39px,5vw,62px)}.live-game-result-score{border-top:1px solid #ffffff24;align-items:baseline;gap:11px;margin-top:25px;padding-top:17px;display:flex}.live-game-result-score strong{color:#f4bbc4;font-family:var(--serif);font-size:46px;font-weight:400}.live-game-result-score span{color:var(--game-muted);text-transform:uppercase;font-size:10px}.live-game-results-board{align-self:center;width:100%;max-height:430px;overflow:auto}.admin-game-page{max-width:1080px;padding-bottom:70px}.admin-game-heading-copy{color:var(--muted);max-width:450px;margin:15px 0 0;font-size:12px;line-height:1.55}.admin-game-heading-actions{align-items:center;gap:9px;display:flex}.admin-game-control{color:#fffaf8;background:linear-gradient(145deg,#191924f7,#201723f5);border:1px solid #ffffff29;border-radius:30px;margin-top:39px;padding:clamp(20px,4vw,38px);position:relative;overflow:hidden;box-shadow:0 25px 70px #27161f29,inset 0 1px #ffffff1f}.admin-game-control:before{content:"";pointer-events:none;background:radial-gradient(circle at 91% 2%,#ee9aaa47,#0000 22%),radial-gradient(circle at 5% 55%,#6e8ad02e,#0000 25%);position:absolute;inset:0}.admin-game-control>*{z-index:1;position:relative}.admin-game-control-heading{justify-content:space-between;align-items:flex-start;display:flex}.admin-game-control-heading h2{color:#fffaf8;font-family:var(--serif);letter-spacing:-.06em;margin:12px 0 0;font-size:clamp(34px,4vw,49px);font-weight:400}.admin-game-control-heading p{color:#fffaf89c;max-width:470px;margin:10px 0 0;font-size:12px;line-height:1.5}.admin-game-connection{color:#fffaf8a6;letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:7px;font-size:9px;display:inline-flex}.admin-game-connection span{background:#8dd3a6;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #8dd3a621}.admin-game-connection.is-loading span{animation:1s ease-in-out infinite live-game-pulse-orb}.admin-activity-picker{margin-top:35px}.admin-activity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:13px;display:grid}.admin-activity-card{color:#fffaf8;text-align:left;background:#ffffff12;border:1px solid #ffffff24;border-radius:19px;flex-direction:column;align-items:flex-start;min-height:130px;padding:16px;transition:background .2s,border-color .2s,transform .2s;display:flex;position:relative}.admin-activity-card.locked{opacity:.46}.admin-activity-icon{color:#f4bbc4;background:#ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:39px;height:39px;display:flex}.admin-activity-card strong{margin-top:13px;font-size:13px}.admin-activity-card small{color:#fffaf894;margin-top:4px;font-size:10px;line-height:1.4}.admin-activity-card i{color:#a9e0ba;position:absolute;top:17px;right:14px}.admin-activity-card em{color:#f5cc8f;letter-spacing:.1em;text-transform:uppercase;font-size:8px;font-style:normal;position:absolute;bottom:13px;right:13px}.admin-game-error{color:#ffd0cb;background:#eb877e1f;border-color:#ef9a91;margin-top:18px}.admin-live-console{grid-template-columns:minmax(0,1.22fr) minmax(280px,.78fr);gap:12px;margin-top:28px;display:grid}.admin-live-console-main,.admin-live-scoreboard{background:#ffffff12;border:1px solid #ffffff21;border-radius:22px;padding:21px}.admin-live-console-top{justify-content:space-between;align-items:flex-end;display:flex}.admin-live-console-top strong{color:#fffaf8;margin-top:7px;font-size:18px;display:block}.admin-live-session-id{color:#f4bbc4;font-size:11px}.admin-live-progress{height:4px;margin:18px 0 0}.admin-live-current-question{border-bottom:1px solid #ffffff1f;flex-direction:column;gap:7px;min-height:132px;padding:26px 0 20px;display:flex}.admin-live-current-question>span{color:#f5cc8f;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:6px;font-size:9px;display:flex}.admin-live-current-question>strong{color:#fffaf8;font-family:var(--serif);letter-spacing:-.04em;font-size:28px;font-weight:400;line-height:1}.admin-live-current-question>small{color:#fffaf88c;font-size:10px}.admin-live-current-question.empty{justify-content:center}.admin-live-current-question.empty>strong{font-size:22px}.admin-game-main-action{color:#28171d;background:#f1a2af;border-radius:15px;gap:10px;width:100%;min-height:51px;margin-top:19px}.admin-game-main-action:hover{background:#ffc3cc}.admin-game-main-action span:last-child{margin-left:auto}.admin-live-secondary-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.admin-live-secondary-actions .button{color:#fffaf8c2;border-color:#ffffff30;border-radius:13px;flex:180px;gap:8px;min-height:43px}.admin-live-scoreboard .live-game-player-row{background:#ffffff0f}.admin-live-scoreboard .live-game-leaderboard{max-height:348px;overflow:auto}.admin-questions-editor{margin-top:28px}.admin-game-section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:13px;display:flex}.admin-game-section-heading h3{color:#fffaf8;font-family:var(--serif);letter-spacing:-.04em;margin:10px 0 0;font-size:27px;font-weight:400}.admin-game-section-heading p{color:#fffaf88f;margin:7px 0 0;font-size:10px}.admin-game-section-heading>span{color:#f4bbc4;font-size:10px}.admin-question-editor{background:#fff1;border:1px solid #ffffff21;border-radius:17px;margin-top:8px;overflow:hidden}.admin-question-editor.needs-answer{border-color:#f5cc8f5c}.admin-question-editor summary{cursor:pointer;align-items:center;gap:13px;min-height:67px;padding:10px 15px;list-style:none;display:flex}.admin-question-editor summary::-webkit-details-marker{display:none}.admin-question-number{color:#f4bbc4;font-family:var(--serif);font-size:17px}.admin-question-summary{flex:1;min-width:0}.admin-question-summary strong,.admin-question-summary small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.admin-question-summary strong{color:#fffaf8;font-size:12px;font-weight:600}.admin-question-summary small{color:#fffaf880;margin-top:5px;font-size:9px}.admin-question-chevron{color:#ffffff80;font-size:16px}.admin-question-editor[open] .admin-question-chevron{transform:rotate(180deg)}.admin-question-form{border-top:1px solid #ffffff1c;flex-direction:column;gap:13px;padding:18px 15px 16px;display:flex}.admin-question-form label{color:#fffaf8a1;letter-spacing:.08em;text-transform:uppercase;flex-direction:column;gap:6px;font-size:9px;display:flex}.admin-question-form input,.admin-question-form textarea,.admin-question-form select{color:#fffaf8;resize:vertical;text-transform:none;background:#090a108a;border:1px solid #ffffff29;border-radius:11px;min-height:42px;padding:9px 11px}.admin-question-form textarea{min-height:68px}.admin-question-form input:focus,.admin-question-form textarea:focus,.admin-question-form select:focus{border-color:#f1a2af;outline:none}.admin-question-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.admin-question-options label{flex-direction:row;align-items:center;gap:8px}.admin-question-options label input{width:100%;min-width:0}.admin-answer-dot{color:#fff;border-radius:9px;flex:0 0 30px;justify-content:center;align-items:center;height:30px;font-size:11px;font-weight:700;display:flex}.admin-answer-dot.answer-coral{background:#c9586e}.admin-answer-dot.answer-blue{background:#4e75bd}.admin-answer-dot.answer-amber{background:#c6894e}.admin-answer-dot.answer-violet{background:#765da0}.admin-question-settings{grid-template-columns:minmax(0,1fr) 105px 105px;gap:8px;display:grid}.admin-question-settings input,.admin-question-settings select{width:100%}.admin-question-save{color:#28171d;background:#f1a2af;border-radius:12px;align-self:flex-start;gap:8px;min-height:43px}.admin-question-save:hover{background:#ffc3cc}.admin-question-empty,.admin-activity-note{color:#fffaf89e;background:#ffffff0f;border:1px dashed #fff3;border-radius:17px;align-items:center;gap:13px;padding:18px;font-size:11px;display:flex}.admin-activity-note{margin-top:28px}.admin-activity-note svg{color:#f4bbc4}.admin-activity-note strong{color:#fffaf8;font-size:13px;display:block}.admin-activity-note p{color:#fffaf88c;margin:5px 0 0;font-size:10px;line-height:1.5}@keyframes live-game-sheen{0%,55%{transform:translate(-100%)}78%,to{transform:translate(100%)}}@keyframes live-game-pulse-orb{0%,to{opacity:.58;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}@keyframes live-game-timer-low{0%{transform:scale(1)}to{transform:scale(1.04)}}@media (max-width:720px){.live-game-shell{border-radius:25px;min-height:calc(100svh - 150px)}.live-game-landing{justify-content:flex-start;padding:45px 22px 34px}.live-game-shell h1{font-size:clamp(42px,13vw,63px)}.live-game-shell p{font-size:13px}.live-game-header{padding:27px 19px 0;display:block}.live-game-header h1{font-size:38px}.live-game-status-badge{margin-top:18px}.live-game-lobby-grid{padding:27px 19px 20px;display:block}.live-game-code-card,.live-game-players-card,.live-game-results-board{border-radius:19px;padding:17px}.live-game-code-card{min-height:200px}.live-game-players-card{margin-top:9px}.live-game-question{padding:21px 14px 18px}.live-game-question-top{align-items:flex-start;gap:12px}.live-game-timer{flex-basis:64px;height:64px}.live-game-question-copy{margin:38px auto 23px}.live-game-question-copy h1{font-size:clamp(31px,9vw,45px)}.live-game-question-copy p{font-size:11px}.live-game-answer-grid{gap:8px}.live-game-answer{border-radius:16px;flex-direction:column;align-items:flex-start;gap:8px;min-height:112px;padding:12px}.live-game-answer strong{font-size:11px;line-height:1.25}.live-game-answer-shape{border-radius:9px;flex-basis:29px;width:29px;height:29px;font-size:15px}.live-game-answer i{width:24px;height:24px;position:absolute;top:9px;right:9px}.live-game-answer-waiting{align-items:flex-start;padding:14px}.live-game-waiting-check{flex-basis:40px;height:40px}.live-game-answer-waiting b{font-size:16px}.live-game-results{padding:30px 17px 19px;display:block}.live-game-results-hero{padding:8px 4px 25px}.live-game-results-hero h1{font-size:42px}.live-game-results-board{max-height:none}.admin-game-page{padding-top:30px}.admin-game-page .admin-heading h1{font-size:43px}.admin-game-heading-actions{margin-top:4px}.admin-game-control{border-radius:24px;margin-top:27px;padding:17px 13px 13px}.admin-game-control-heading{display:block}.admin-game-control-heading h2{font-size:37px}.admin-game-control-heading p{font-size:11px}.admin-game-connection{margin-top:15px}.admin-activity-picker{margin-top:27px}.admin-activity-grid{gap:7px}.admin-activity-card{min-height:118px;padding:11px}.admin-activity-card strong{margin-top:9px;font-size:11px}.admin-activity-card small{font-size:8px}.admin-activity-icon{border-radius:10px;width:32px;height:32px}.admin-live-console{margin-top:20px;display:block}.admin-live-console-main,.admin-live-scoreboard{border-radius:18px;padding:15px}.admin-live-scoreboard{margin-top:9px}.admin-live-current-question>strong{font-size:22px}.admin-live-secondary-actions{grid-template-columns:1fr;display:grid}.admin-live-secondary-actions .button{justify-content:flex-start}.admin-live-scoreboard .live-game-leaderboard{max-height:285px}.admin-game-section-heading{align-items:flex-start;display:block}.admin-game-section-heading>span{margin-top:9px;display:block}.admin-question-options{grid-template-columns:1fr}.admin-question-settings{grid-template-columns:minmax(0,1fr) 1fr}.admin-question-settings label:first-child{grid-column:1/-1}.admin-question-settings label:nth-child(2),.admin-question-settings label:nth-child(3){min-width:0}.live-game-waiting-layout{min-height:inherit;padding:32px 22px 28px;display:block}.live-game-waiting-main{display:block}.live-game-waiting-mark{width:70px;margin:0 0 24px}.live-game-waiting-copy h1{font-size:clamp(45px,13vw,62px)}.live-game-waiting-copy p{font-size:13px}.live-game-waiting-meta{gap:7px;margin-top:24px;line-height:1.4}.live-game-waiting-note{border-top:1px solid #ffffff26;border-left:0;min-height:113px;margin-top:42px;padding:20px 0 0}.live-game-waiting-note strong{margin-top:16px;font-size:26px}.live-game-waiting-monogram{margin-top:16px;padding-top:12px}}@media (max-width:360px){.live-game-answer{min-height:103px}.live-game-answer strong{font-size:10px}.live-game-answer-grid{gap:6px}.admin-activity-card{min-height:125px}.admin-activity-card small{display:none}}@media (prefers-reduced-motion:reduce){.live-game-shell:before,.live-game-loading-orb,.live-game-timer.is-low,.admin-game-connection.is-loading span{animation:none!important}.live-game-answer,.admin-activity-card{transition:none!important}.live-game-question-progress span,.admin-live-progress span{transition:none}}.wedding-app[data-view=home] .home-menu-screen,.wedding-app[data-view=home] .home-menu-grid,.wedding-app[data-view=home] .home-menu-card,.wedding-app[data-view=home] .home-menu-card-copy{min-width:0}.wedding-app[data-view=home] .home-menu-screen{box-sizing:border-box;align-content:start;width:100%}@media (max-width:720px){.wedding-app[data-view=home] .home-menu-screen{min-height:calc(100svh - 64px);padding:32px 18px calc(32px + env(safe-area-inset-bottom))}.wedding-app[data-view=home] .home-menu-grid{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:0}.wedding-app[data-view=home] .home-menu-card{width:100%;min-height:132px;padding:16px}.wedding-app[data-view=home] .home-menu-card-copy{width:100%;padding-top:16px}.wedding-app[data-view=home] .home-menu-card-copy small{max-width:calc(100% - 30px)}}@media (max-width:420px){.wedding-app[data-view=home] .home-menu-screen{min-height:calc(100svh - 64px);padding:22px 14px max(18px, env(safe-area-inset-bottom))}.wedding-app[data-view=home] .home-menu-intro h1{margin:14px 0 12px;font-size:clamp(39px,12vw,50px)}.wedding-app[data-view=home] .home-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:0}.wedding-app[data-view=home] .home-menu-card{min-height:112px;padding:12px}.wedding-app[data-view=home] .home-menu-icon{border-radius:11px;width:36px;height:36px}.wedding-app[data-view=home] .home-menu-card-copy{gap:3px;padding-top:10px}.wedding-app[data-view=home] .home-menu-card-copy strong{font-size:14px}.wedding-app[data-view=home] .home-menu-card-copy small{font-size:9px}}@media (max-width:720px){.mobile-bottom-nav button{color:#6e5962}.mobile-bottom-nav button.active{color:#a6455f}.theme-dark .mobile-bottom-nav button{color:#ebebf5b8}.theme-dark .mobile-bottom-nav button.active{color:#6fb2ff}}:where(.wedding-app button,.wedding-app a.button,.status-page a.button){transform-origin:50%;transition:background-color .22s var(--ease-apple), border-color .22s var(--ease-apple), box-shadow .22s var(--ease-apple), color .22s var(--ease-apple), filter .22s var(--ease-apple), opacity .22s var(--ease-apple), transform .22s var(--ease-apple)}:where(.wedding-app button,.wedding-app a.button,.status-page a.button) svg{transition:transform .22s var(--ease-apple)}@media (hover:hover) and (pointer:fine){:where(.wedding-app button,.wedding-app a.button,.status-page a.button):not(:disabled):hover{filter:brightness(1.045)}}:where(.wedding-app button,.wedding-app a.button,.status-page a.button):not(:disabled):active{filter:brightness(.96);opacity:.82;transform:scale(.96)}:where(.wedding-app button,.wedding-app a.button,.status-page a.button):not(:disabled):active svg{transform:scale(.86)}.wedding-app[data-view=gallery] .app-content{padding-bottom:0}.wedding-app[data-view=gallery] .app-footer{display:none}.wedding-app[data-view=gallery] .gallery-photo-only{min-height:calc(100svh - 74px);padding-bottom:max(24px, env(safe-area-inset-bottom));padding-top:20px}.gallery-photo-only .gallery-photo-nav{-webkit-backdrop-filter:blur(24px)saturate(170%);backdrop-filter:blur(24px)saturate(170%);background:#fffafa94;border:.5px solid #ffebef57;border-radius:26px;grid-template-columns:minmax(0,1fr) auto;gap:4px;width:100%;padding:4px;display:grid;box-shadow:0 10px 30px #562c361a,inset 0 1px #ffffffb8}.gallery-photo-only .gallery-photo-nav:before{display:none}.gallery-photo-only .gallery-photo-nav>.gallery-scope-tabs{box-shadow:none;background:0 0;border:0;border-radius:22px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding:0;display:grid}.gallery-photo-only .gallery-scope-tabs button{text-overflow:ellipsis;width:100%;overflow:hidden}.gallery-photo-only .gallery-scope-tabs button.active{background:#ffffffb3;box-shadow:0 4px 14px #562c361f,inset 0 1px #ffffffd6}.gallery-photo-only .gallery-photo-nav .gallery-upload-cta{margin:0;box-shadow:0 6px 16px #c45d743d,inset 0 1px #ffffff4d}.gallery-photo-only .gallery-tools{-webkit-backdrop-filter:blur(22px)saturate(165%);backdrop-filter:blur(22px)saturate(165%);background:#fffafa7a;border:.5px solid #ffebef47;border-radius:26px;grid-template-columns:minmax(0,1fr) auto;gap:4px;padding:4px;display:grid;box-shadow:0 8px 25px #562c3614,inset 0 1px #ffffffa8}.gallery-tools-actions{align-items:center;gap:4px;min-width:0;display:flex}.gallery-selection-toggle{color:var(--tint);white-space:nowrap;background:0 0;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:6px;min-height:48px;padding:0 12px;display:inline-flex}.gallery-selection-toggle.active{background:var(--tint);color:#fff;box-shadow:0 5px 14px #c45d7438,inset 0 1px #ffffff3d}.gallery-selection-toggle svg{flex:none}.gallery-selection-toggle span{font-size:11px;font-weight:650}.gallery-photo-only .gallery-tools .glass-search{box-shadow:none;background:0 0;border:0;min-height:48px}.gallery-photo-only .gallery-tools .glass-search:focus-within{box-shadow:none;background:#ffffff5c;border:0}.gallery-photo-only .gallery-tools .glass-icon-button{background:#ffffff61;border:0;width:48px;height:48px;box-shadow:inset 0 1px #ffffff8c}.gallery-selection-toolbar{-webkit-backdrop-filter:blur(22px)saturate(165%);backdrop-filter:blur(22px)saturate(165%);background:linear-gradient(120deg,#fff8fad1,#ffffff85);border:.5px solid #c45d743b;border-radius:22px;justify-content:space-between;align-items:center;gap:14px;min-width:0;margin:0 0 16px;padding:10px 11px 10px 15px;display:flex;box-shadow:0 10px 26px #562c361a,inset 0 1px #ffffffbd}.gallery-selection-toolbar>div{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.gallery-selection-toolbar strong{color:var(--label);font-size:12px;line-height:1.2}.gallery-selection-toolbar small{color:var(--label-2);font-size:10px;line-height:1.25}.gallery-selection-download{background:var(--tint);color:#fff;white-space:nowrap;border:0;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:40px;padding:0 13px;display:inline-flex;box-shadow:0 6px 16px #c45d7438,inset 0 1px #ffffff47}.gallery-selection-download span{font-size:11px;font-weight:700}.gallery-selection-download:disabled{box-shadow:none;cursor:not-allowed;opacity:.46}.theme-dark .gallery-selection-toggle{color:#ffafc2}.theme-dark .gallery-selection-toggle.active{color:#1d1015}.theme-dark .gallery-selection-toolbar{background:linear-gradient(120deg,#371d26e6,#1f1319db);border-color:#ffb1c533;box-shadow:0 12px 32px #00000040,inset 0 1px #ffffff1a}.theme-dark .gallery-selection-toolbar strong{color:#fff4f6}.theme-dark .gallery-selection-toolbar small{color:#ffebefa3}.gallery-photo-only .gallery-only-grid .media-tile.selection-mode{box-shadow:0 0 0 2px #c45d745c,0 12px 28px #562c3624}.gallery-photo-only .gallery-only-grid .media-tile.selection-mode.is-selected{box-shadow:0 0 0 2px var(--tint), 0 15px 32px #c45d7438}.media-selection-mark{color:var(--tint);height:30px;transition:background-color .24s var(--ease-apple), color .24s var(--ease-apple), transform .24s var(--ease-apple), box-shadow .24s var(--ease-apple);z-index:6;background:#ffffffdb;border:1px solid #fffffff5;border-radius:50%;justify-content:center;align-items:center;width:30px;display:inline-flex;position:absolute;top:9px;left:9px;box-shadow:0 5px 14px #20101633}.media-tile.is-selected .media-selection-mark{background:var(--tint);color:#fff;border-color:#ffffffdb;transform:scale(1.08);box-shadow:0 7px 18px #c45d7457}.media-tile.selection-mode:active .media-selection-mark{transform:scale(.92)}.gallery-photo-only .public-gallery,.gallery-photo-only .personal-gallery{animation:gallery-surface-in .48s var(--ease-apple) both}.gallery-photo-only .gallery-scope-tabs button[aria-selected=true] svg,.gallery-photo-only .photo-view-tabs button.active{animation:gallery-control-pop .32s var(--ease-apple) both}.gallery-photo-only .empty-state,.gallery-photo-only .personal-library-empty{min-height:clamp(210px,100svh - 420px,340px);margin-top:14px}.theme-dark .gallery-photo-only .gallery-photo-nav,.theme-dark .gallery-photo-only .gallery-tools{background:#25171cad;border-color:#ffebef24;box-shadow:0 12px 32px #00000042,inset 0 1px #ffffff1c}.theme-dark .gallery-photo-only .gallery-scope-tabs button.active,.theme-dark .gallery-photo-only .gallery-tools .glass-icon-button,.theme-dark .gallery-photo-only .gallery-tools .glass-search:focus-within{background:#ffebef1a;box-shadow:inset 0 1px #ffffff1a}@media (max-width:720px){.wedding-app[data-view=gallery] .gallery-photo-only{box-sizing:border-box;min-height:calc(100svh - 64px);padding:12px 0 max(88px, calc(env(safe-area-inset-bottom) + 76px))}.gallery-photo-only .gallery-photo-nav{border-radius:24px;top:71px}.gallery-photo-only .gallery-tools{border-radius:24px;margin-bottom:10px}.gallery-selection-toolbar{margin-bottom:12px;padding-left:13px}.gallery-photo-only .empty-state,.gallery-photo-only .personal-library-empty{min-height:clamp(180px,100svh - 420px,300px)}}@media (max-width:360px){.gallery-photo-only .gallery-scope-tabs button svg{display:none}.gallery-photo-only .gallery-scope-tabs button{padding-inline:5px;font-size:10.5px}.gallery-selection-toggle{padding-inline:8px}.gallery-selection-toggle span{display:none}}@media (prefers-reduced-motion:reduce){:where(.wedding-app button,.wedding-app a.button,.status-page a.button),:where(.wedding-app button,.wedding-app a.button,.status-page a.button) svg{transition:none!important;animation:none!important}}@media (max-width:720px) and (max-height:650px){.gallery-photo-only .empty-state,.gallery-photo-only .personal-library-empty{min-height:150px;padding:14px 18px}.gallery-photo-only .empty-state .empty-icon{font-size:26px;line-height:1}.gallery-photo-only .empty-state h3{margin:7px 0 4px;font-size:18px}.gallery-photo-only .empty-state p{margin-bottom:10px;font-size:9px;line-height:1.35}.gallery-photo-only .empty-state .button{min-height:36px;padding:0 14px}}.wedding-app[data-view=quiz] .app-content,.wedding-app[data-view=quiz-result] .app-content{padding-bottom:0}.live-game-shell{--game-white:var(--ink);--game-muted:var(--muted);background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:28px;max-width:920px;min-height:520px;box-shadow:0 14px 44px #3a232b0f}.live-game-shell:before,.live-game-shell:after,.admin-game-control:before{display:none}.live-game-shell .eyebrow{color:var(--tint)}.live-game-shell .eyebrow:before{display:none}.live-game-shell h1,.live-game-shell h1 em,.admin-game-control-heading h2,.admin-live-current-question>strong,.admin-game-section-heading h3{color:var(--ink);font-family:var(--sans);letter-spacing:-.045em;font-style:normal;font-weight:700}.live-game-shell h1{margin:16px 0 18px;font-size:clamp(38px,5.4vw,62px);line-height:.98}.live-game-shell p{color:var(--muted);font-size:14px;line-height:1.5}.live-game-orb,.live-game-loading-orb,.live-game-paused-mark,.live-game-waiting-mark{background:var(--rose);box-shadow:none;color:var(--tint);border:0;width:56px;height:56px}.live-game-loading-orb span{background:var(--tint);box-shadow:none}.live-game-primary,.admin-game-main-action,.admin-question-save{background:var(--tint);box-shadow:none;color:#fff;border-radius:999px}.live-game-primary:hover,.admin-game-main-action:hover,.admin-question-save:hover{background:var(--tint);box-shadow:none;transform:none}.live-game-waiting-layout{grid-template-columns:minmax(0,1fr);gap:32px;min-height:500px;padding:clamp(36px,6vw,64px)}.live-game-waiting-main{gap:20px}.live-game-waiting-mark{flex-basis:56px;margin-top:0}.live-game-waiting-mark .event-logo{display:none}.live-game-waiting-pill,.live-game-ready,.live-game-status-badge{background:var(--ivory);color:var(--muted);border:0}.live-game-pulse{box-shadow:none;background:#34c759}.live-game-waiting-note{border:0;border-top:1px solid var(--line);flex-direction:row;align-items:center;min-height:0;padding:20px 0 0}.live-game-waiting-note>span{color:var(--muted)}.live-game-waiting-note strong{color:var(--ink);font-family:var(--sans);letter-spacing:-.02em;font-size:16px;font-weight:600;line-height:1.25}.live-game-waiting-monogram{color:var(--muted);border:0;padding:0}.live-game-header{padding:36px 38px 0}.live-game-lobby-grid{gap:10px;padding:32px 38px 38px}.live-game-code-card,.live-game-players-card,.live-game-results-board,.admin-live-console-main,.admin-live-scoreboard{background:var(--ivory);box-shadow:none;border:0;border-radius:18px}.live-game-mini-label,.admin-game-section-label{color:var(--muted)}.live-game-code-card>strong,.live-game-card-heading,.live-game-card-heading strong,.live-game-player-copy strong,.live-game-player-score{color:var(--ink)}.live-game-card-heading small,.live-game-player-copy small{color:var(--muted)}.live-game-player-row{background:0 0;border:0;border-radius:12px;min-height:52px}.live-game-player-row+.live-game-player-row{border-top:1px solid var(--line);border-radius:0}.live-game-player-row.is-you{background:var(--rose)}.live-game-player-avatar{background:var(--sand);color:var(--ink);border:0}.live-game-question{padding:32px 38px 38px}.live-game-question-progress,.admin-live-progress{background:var(--sand);height:3px}.live-game-question-progress span,.admin-live-progress span{background:var(--tint)}.live-game-timer{background:conic-gradient(var(--tint) var(--timer-progress), var(--sand) 0);flex-basis:64px;height:64px}.live-game-timer:before{background:var(--paper);inset:4px}.live-game-timer svg{color:var(--tint)}.live-game-timer strong{color:var(--ink)}.live-game-timer small{color:var(--muted)}.live-game-question-copy{margin:46px auto 28px}.live-game-points{color:var(--tint)}.live-game-answer-grid{gap:10px}.live-game-answer{background:var(--answer-background,var(--ivory));color:var(--answer-foreground,#fff);border:1px solid #0000;border-radius:16px;min-height:82px;box-shadow:0 8px 18px #3a232b1f,inset 0 1px #fff3}.answer-coral{--answer-background:#e21b3c}.answer-blue{--answer-background:#1368ce}.answer-amber{--answer-background:#d89e00;--answer-foreground:#241a00}.answer-green{--answer-background:#26890c}.live-game-answer:hover{filter:brightness(1.06)saturate(1.06);border-color:#ffffff57;transform:translateY(-2px);box-shadow:0 12px 22px #3a232b2e,inset 0 1px #ffffff42}.live-game-answer.selected{filter:brightness(1.08);border-color:#ffffffd1;box-shadow:0 0 0 3px #ffffff8f,0 12px 22px #3a232b33}.live-game-answer-shape{color:inherit;font-family:var(--sans);background:#ffffff2e;border:1px solid #ffffff57;font-size:13px;font-weight:700}.live-game-answer i{color:inherit;background:#ffffff3d}.live-game-answer-waiting{background:var(--ivory);border:0}.live-game-waiting-check{color:#248a3d;background:#34c75921}.live-game-answer-waiting strong{color:var(--ink)}.live-game-answer-waiting span{color:var(--muted)}.live-game-answer-waiting b{color:var(--tint)}.live-game-result-score{border-color:var(--line)}.live-game-result-score strong{color:var(--tint);font-family:var(--sans);font-weight:700}.live-game-result-score span{color:var(--muted)}.admin-game-control{background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:24px;box-shadow:0 14px 44px #3a232b0f}.admin-game-control .eyebrow{color:var(--tint)}.admin-game-control-heading p,.admin-game-connection,.admin-live-session-id,.admin-live-current-question>small{color:var(--muted)}.admin-game-connection span{box-shadow:none;background:#34c759}.admin-activity-grid{gap:8px}.admin-activity-card{background:var(--ivory);color:var(--ink);border:1px solid #0000;border-radius:16px;min-height:112px}.admin-activity-card:hover{background:var(--rose);transform:none}.admin-activity-card.selected{background:var(--rose);border-color:#c45d7442}.admin-activity-icon{background:var(--paper);color:var(--tint)}.admin-activity-card small{color:var(--muted)}.admin-live-console{gap:10px}.admin-live-current-question{border-color:var(--line)}.admin-live-current-question>span{color:var(--tint)}.admin-live-secondary-actions .button{border-color:var(--line);color:var(--muted)}.admin-live-secondary-actions .button:hover{background:var(--rose)}.admin-live-secondary-actions .danger{color:#ff3b30}.admin-quiz-source-note,.admin-activity-note{background:var(--ivory);color:var(--muted);border:0}.admin-quiz-source-note strong,.admin-activity-note strong{color:var(--ink)}@keyframes quiz-minimal-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.live-game-shell,.admin-game-control{animation:quiz-minimal-in .38s var(--ease-apple) both}@media (max-width:720px){.live-game-shell{border-radius:22px;min-height:calc(100svh - 148px)}.live-game-landing{padding:34px 20px 28px}.live-game-shell h1{font-size:clamp(36px,11vw,48px)}.live-game-waiting-layout{padding:30px 20px 26px}.live-game-waiting-main{display:block}.live-game-waiting-mark{margin-bottom:22px}.live-game-waiting-note{align-items:flex-start;gap:14px;margin-top:28px;padding-top:16px}.live-game-waiting-note>span{display:none}.live-game-waiting-note strong{font-size:14px}.live-game-header{padding:26px 18px 0}.live-game-lobby-grid{padding:24px 18px 18px}.live-game-question{padding:22px 14px 16px}.live-game-question-copy{margin:34px auto 22px}.live-game-answer{min-height:96px}.admin-game-control{border-radius:22px;padding:16px 12px 12px}}@media (prefers-reduced-motion:reduce){.live-game-shell,.admin-game-control{animation:none!important}}@media (max-width:720px){.mobile-bottom-nav{-webkit-backface-visibility:hidden;backface-visibility:hidden;contain:layout paint;z-index:1000;width:min(100% - 24px,430px);transform:translate(-50%);bottom:max(12px, calc(env(safe-area-inset-bottom) + 8px))!important;inset-inline:auto!important;margin:0!important;position:fixed!important;top:auto!important;left:50%!important;right:auto!important}.wedding-app.sheet-open .mobile-bottom-nav{transform:translate(-50%,18px)}.app-content{scroll-padding-bottom:calc(94px + env(safe-area-inset-bottom))}}@media (max-width:390px){.mobile-bottom-nav{width:calc(100% - 18px)}}.gallery-photo-only .gallery-only-grid .challenge-media{box-shadow:0 12px 30px #b04c6733,0 0 0 2px #cc5c7833}.gallery-photo-only .gallery-only-grid .challenge-media:hover{box-shadow:0 18px 40px #b04c6747,0 0 0 2px #cc5c7857}.media-challenge-badge{color:#fff;letter-spacing:.05em;text-transform:uppercase;z-index:4;background:#be4c69db;border:.5px solid #ffffff6b;border-radius:999px;align-items:center;gap:5px;min-height:28px;padding:5px 9px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:8px;left:8px;box-shadow:0 5px 16px #2e10182e}.media-challenge-copy{-webkit-backdrop-filter:blur(14px)saturate(125%);backdrop-filter:blur(14px)saturate(125%);color:#fff;text-align:left;z-index:3;background:#1d0a10d6;border-top:.5px solid #ffffff29;flex-direction:column;gap:4px;padding:9px 12px 10px;display:flex;position:absolute;bottom:0;left:0;right:0}.media-challenge-copy small{color:#ffffffb8;letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:650}.media-challenge-copy strong{color:#fff;letter-spacing:-.02em;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:700;line-height:1.15;display:-webkit-box;overflow:hidden}.photo-viewer-challenge{background:#ca537133;border:.5px solid #ffb8ca4d;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;min-height:28px;margin-bottom:4px;padding:5px 10px;font-weight:650;display:inline-flex;color:#ffd4df!important;font-size:11px!important}.sheet-challenge-context{background:#d6627e1a;border:.5px solid #c24c6933;border-radius:16px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;margin:16px 0;padding:11px 13px;display:grid}.sheet-challenge-context>span{color:var(--tint);background:#c24c6924;border-radius:11px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.sheet-challenge-context div{flex-direction:column;gap:2px;min-width:0;display:flex}.sheet-challenge-context small{color:var(--label-2);font-size:10px}.sheet-challenge-context strong{color:var(--label);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sheet-challenge-context b{color:var(--tint);font-size:10px;font-weight:650}.admin-activity-grid{grid-template-columns:minmax(0,280px)}@media (max-width:720px){.media-challenge-badge{min-height:24px;padding:4px 7px;font-size:8px;top:6px;left:6px}.media-challenge-copy{padding:8px 9px 9px}.media-challenge-copy small{font-size:8px}.media-challenge-copy strong{font-size:12px}.sheet-challenge-context{grid-template-columns:34px minmax(0,1fr)}.sheet-challenge-context b{grid-column:2}}.wedding-app{width:100%;min-height:100svh}.app-content{max-width:none}.view-stage{max-width:1320px;margin-inline:auto}.content-page,.admin-page,.gallery-page,.ranking-page{width:100%}.gallery-page,.ranking-page{max-width:1180px}.wedding-app[data-view=home] .app-topbar{display:none}.wedding-app[data-view=home] .app-layout,.wedding-app[data-view=home] .view-stage,.wedding-app[data-view=home] .home-menu-screen{min-height:100svh}.wedding-app[data-view=home] .home-menu-screen{align-items:start;padding:clamp(30px,5vh,56px) clamp(24px,4.5vw,64px);max-width:1120px!important}.wedding-app[data-view=home] .home-menu-grid{gap:clamp(12px,1.4vw,18px)}.wedding-app[data-view=home] .home-menu-brand{justify-content:center;align-items:center;width:100%;margin-bottom:clamp(18px,3vh,30px);font-size:clamp(34px,4vw,48px);display:flex}.wedding-app[data-view=home] .home-menu-brand .app-logo-image{filter:drop-shadow(0 0 1px #ffffffe6)drop-shadow(0 10px 24px #00000047)}.wedding-app[data-view=home] .home-menu-card{min-height:clamp(210px,28vh,270px);padding:clamp(20px,2vw,28px)}.wedding-app[data-view=home] .home-menu-icon{width:50px;height:50px}.wedding-app[data-view=home] .home-menu-card-copy strong{font-size:clamp(20px,1.65vw,24px)}.wedding-app[data-view=home] .home-menu-card-copy small{font-size:13px}@media (min-width:721px){.app-layout{grid-template-columns:232px minmax(0,1fr)}.app-sidebar{height:calc(100svh - 74px);padding:42px 20px 28px;position:sticky;top:74px;overflow-y:auto}.app-sidebar .side-link{border-radius:14px;min-height:46px;padding:0 14px}.app-sidebar .side-link.active{background:#ffffffb8;box-shadow:inset 0 1px #fffc}.app-content{padding:0 clamp(30px,4vw,72px) 56px}.content-page{padding-top:clamp(44px,6vh,72px)}.gallery-page .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-content{max-width:none}.admin-page{max-width:1280px}}@media (min-width:1500px){.app-layout{grid-template-columns:248px minmax(0,1fr)}.view-stage{max-width:1440px}.gallery-page,.ranking-page{max-width:1280px}.gallery-page .gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.wedding-app[data-view=home] .home-menu-screen{max-width:1240px!important}}@media (max-width:1024px) and (min-width:721px){.app-layout{grid-template-columns:196px minmax(0,1fr)}.app-sidebar{padding-inline:14px}.app-content{padding-inline:28px}.admin-layout{display:block}.admin-side-nav{z-index:8;flex-direction:row;margin-bottom:16px;display:flex;position:sticky;top:82px;overflow-x:auto}.admin-side-nav>button{flex:none;min-width:128px}.admin-side-foot{display:none}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-two-col,.admin-live-stream-grid,.admin-live-console{grid-template-columns:minmax(0,1fr)}}@media (max-width:720px){.app-topbar{height:64px;padding:0 16px}.app-layout{min-height:calc(100svh - 64px)}.app-content,.admin-content{padding:0 16px calc(104px + env(safe-area-inset-bottom))}.mobile-page-title{display:none}.content-page,.admin-page{padding-top:24px}.page-intro h1,.form-heading h1,.required-page h1{font-size:clamp(40px,12vw,54px);line-height:.96}.page-intro p,.form-heading>p,.required-page>p{font-size:15px;line-height:1.5}.challenge-grid{grid-template-columns:minmax(0,1fr)}.challenge-card{min-height:210px}.live-game-shell{min-height:0}.live-game-landing{min-height:0;padding:32px 20px 40px}.admin-login-page{align-items:center;min-height:calc(100svh - 64px);padding:24px 0 32px}.admin-login-card{border-radius:24px;max-width:500px;padding:28px 22px}.admin-page{padding-bottom:28px}.admin-heading,.admin-live-stream-heading,.admin-game-control-heading{align-items:flex-start}.admin-side-nav{z-index:8;margin-inline:-4px;padding:7px;position:sticky;top:70px}.admin-side-nav>button{min-height:44px;padding-inline:12px}.admin-panel,.admin-game-control,.admin-live-stream-form,.admin-live-preview,.admin-live-comments{border-radius:20px}.gallery-photo-only,.gallery-page{min-height:0}.mobile-bottom-nav{min-height:68px}.wedding-app[data-view=home] .app-layout,.wedding-app[data-view=home] .view-stage,.wedding-app[data-view=home] .home-menu-screen{min-height:100svh}.wedding-app[data-view=home] .home-menu-screen{padding:max(18px, env(safe-area-inset-top)) 14px max(18px, env(safe-area-inset-bottom));align-items:center;display:grid}.wedding-app[data-view=home] .home-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wedding-app[data-view=home] .home-menu-card{min-height:clamp(138px,19.5svh,170px);padding:15px}.wedding-app[data-view=home] .home-menu-icon{width:42px;height:42px}.wedding-app[data-view=home] .home-menu-card-copy{gap:4px;padding-top:15px}.wedding-app[data-view=home] .home-menu-card-copy strong{font-size:17px}.wedding-app[data-view=home] .home-menu-card-copy small{max-width:calc(100% - 8px);font-size:10px}}@media (max-width:350px){.app-content,.admin-content{padding-inline:12px}.wedding-app[data-view=home] .home-menu-screen{padding-inline:10px}.wedding-app[data-view=home] .home-menu-grid{gap:7px}.wedding-app[data-view=home] .home-menu-card{min-height:130px;padding:12px}.wedding-app[data-view=home] .home-menu-card-copy strong{font-size:15px}.wedding-app[data-view=home] .home-menu-card-copy small{font-size:9px}}.ranking-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.ranking-heading h1{color:var(--label);letter-spacing:-.07em;margin:14px 0 0;font-size:clamp(38px,5vw,64px);line-height:.95}.ranking-heading h1 em{color:var(--tint);font-style:normal}.ranking-block-heading span{color:var(--label-2);font-size:11px}.ranking-page>.leaderboard-card{padding:clamp(16px,2.2vw,26px);overflow:hidden}.ranking-block-heading{justify-content:space-between;align-items:center;display:flex}.ranking-block-heading strong{color:var(--label);letter-spacing:-.02em;font-size:14px}.leaderboard-winner{justify-content:center;margin-top:12px;display:flex}.podium-card{background:var(--bg-cell);border:.5px solid var(--separator);color:var(--label);text-align:center;border-radius:24px 24px 14px 14px;flex-direction:column;align-items:center;width:min(100%,460px);min-height:242px;padding:19px 13px 16px;display:flex;position:relative;overflow:hidden}.podium-card:after{background:var(--tint);content:"";opacity:.27;height:5px;position:absolute;bottom:0;left:0;right:0}.podium-place-1{background:linear-gradient(180deg, var(--tint-soft), var(--bg-cell));border-color:color-mix(in srgb, var(--tint) 48%, var(--separator));min-height:310px}.podium-rank{background:var(--bg-2);border:.5px solid var(--separator);color:var(--label-2);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-bottom:11px;font-size:11px;font-weight:700;display:inline-flex}.podium-place-1 .podium-rank{background:var(--tint);color:#fff;border-color:#0000}.leaderboard-avatar{background:var(--tint-soft);border:.5px solid color-mix(in srgb, var(--tint) 30%, var(--separator));color:var(--tint);border-radius:50%;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;font-size:11px;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.leaderboard-avatar.podium-avatar{flex-basis:68px;width:68px;height:68px;margin-bottom:13px}.podium-card>strong{letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;overflow:hidden}.podium-card>small{color:var(--label-2);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:4px;font-size:10px;overflow:hidden}.podium-card>b{color:var(--tint);font-family:var(--serif);margin-top:auto;font-size:25px;font-weight:400;line-height:1}.podium-card>b small{color:var(--label-2);font-family:var(--font-stack);text-transform:uppercase;margin-left:4px;font-size:8px}.ranking-page .podium-card{--podium-accent:var(--tint);--podium-soft:var(--tint-soft);--podium-border:var(--separator);--podium-shadow:transparent;background:linear-gradient(180deg, var(--podium-soft), var(--bg-cell) 70%);border-color:var(--podium-border);box-shadow:0 14px 30px var(--podium-shadow), inset 0 1px 0 #ffffff14}.ranking-page .podium-place-1{--podium-accent:#f2c45f;--podium-soft:#f2c45f33;--podium-border:#f2c45fb3;--podium-shadow:#f2c45f2e}.ranking-page .podium-card:after{background:var(--podium-accent);opacity:.72}.ranking-page .podium-rank{background:var(--podium-soft);border-color:color-mix(in srgb, var(--podium-accent) 72%, transparent);color:var(--podium-accent)}.ranking-page .podium-place-1 .podium-rank{background:var(--podium-accent);color:#25191c;border-color:#0000}.ranking-page .podium-card .leaderboard-avatar.podium-avatar{background:var(--podium-soft);border-color:color-mix(in srgb, var(--podium-accent) 72%, var(--separator));box-shadow:0 0 0 5px color-mix(in srgb, var(--podium-accent) 14%, transparent);color:var(--podium-accent)}.ranking-page .podium-card>b{color:var(--podium-accent)}.ranking-players-card{margin-top:14px}.ranking-player-list{gap:1px;margin:14px calc(-1*clamp(16px,2.2vw,26px)) calc(-1*clamp(16px,2.2vw,26px));display:grid}.ranking-player-row{background:var(--bg-cell);border-top:.5px solid var(--separator);content-visibility:auto;contain-intrinsic-size:auto 68px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:68px;padding:10px clamp(16px,2.2vw,26px);display:grid}.ranking-player-row.is-you{background:var(--tint-soft)}.ranking-player-name{min-width:0}.ranking-player-name strong,.ranking-player-name small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ranking-player-name strong{color:var(--label);font-size:14px}.ranking-player-name small{color:var(--label-2);margin-top:3px;font-size:10px}.ranking-player-row>b{color:var(--tint);font-family:var(--serif);font-size:22px;font-weight:400}.ranking-player-row>b small{color:var(--label-2);font-family:var(--font-stack);text-transform:uppercase;margin-left:4px;font-size:8px}@media (max-width:720px){.ranking-heading{align-items:flex-start;gap:12px;margin-bottom:18px}.ranking-heading h1{margin-top:11px;font-size:clamp(34px,10vw,45px)}.ranking-page>.leaderboard-card{border-radius:22px;padding:13px}.ranking-player-list{margin:12px -13px -13px}.ranking-player-row{padding-left:13px;padding-right:13px}.leaderboard-winner{margin-top:10px}.podium-card{border-radius:18px 18px 11px 11px;width:100%;min-height:260px;padding:18px 12px 16px}.podium-place-1{min-height:260px}.podium-rank{width:23px;height:23px;margin-bottom:8px;font-size:9px}.leaderboard-avatar.podium-avatar{flex-basis:72px;width:72px;height:72px;margin-bottom:13px}.podium-card>strong{font-size:15px}.podium-card>small{margin-top:4px;font-size:9px}.podium-card>b{font-size:27px}}@media (max-width:350px){.ranking-heading h1{font-size:32px}.podium-card>strong{font-size:14px}}.admin-game-state-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:24px;display:grid}.admin-game-state-item{background:var(--ivory);border:1px solid var(--line);border-radius:15px;flex-direction:column;justify-content:space-between;min-height:76px;padding:13px 14px;display:flex}.admin-game-state-item>span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:700}.admin-game-state-item>strong{color:var(--ink);letter-spacing:-.02em;margin-top:8px;font-size:15px}.admin-game-state-item.is-low{background:color-mix(in srgb, var(--tint) 10%, var(--ivory));border-color:color-mix(in srgb, var(--tint) 38%, var(--line))}.admin-game-state-item.is-low>strong,.admin-live-current-question-meta>strong.is-low{color:#ff3b30}.admin-live-current-question-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-live-current-question-meta>span{color:var(--tint);letter-spacing:.12em;text-transform:uppercase;font-size:9px}.admin-live-current-question-meta>strong{background:var(--rose);color:var(--tint);letter-spacing:-.01em;white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:13px}@media (max-width:720px){.admin-game-state-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.admin-game-state-item{min-height:68px;padding:11px 12px}.admin-game-state-item>strong{font-size:13px}.admin-live-current-question-meta>strong{padding:5px 8px;font-size:12px}}.live-game-round-results{grid-template-columns:minmax(290px,.72fr) minmax(520px,1.28fr);align-items:stretch;gap:clamp(18px,3vw,42px);max-width:none;min-height:520px;padding:clamp(28px,5vw,76px);display:grid}.live-game-round-results-hero{flex-direction:column;justify-content:center;min-width:0;padding:10px 0;display:flex}.live-game-round-results-mark{animation:quiz-round-pop .55s var(--ease-apple) both;background:var(--rose);color:var(--tint);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:24px;display:flex}.live-game-round-results.is-correct .live-game-round-results-mark{animation:quiz-winner-mark .78s var(--ease-apple) both;position:relative;box-shadow:0 0 #34c75947}.live-game-round-results.is-correct .live-game-round-results-mark:before{content:"";border:2px solid #34c75959;border-radius:50%;animation:.9s ease-out .18s both quiz-winner-ring;position:absolute;inset:-8px}.live-game-round-results.is-incorrect .live-game-round-results-mark{animation:quiz-loser-shake .62s 80ms var(--ease-apple) both}.live-game-round-results.is-incorrect .live-game-round-results-hero{animation:quiz-loser-reveal .52s var(--ease-apple) both}.live-game-outcome-particles{pointer-events:none;position:absolute;inset:0}.live-game-outcome-particles span{animation:quiz-winner-particle .78s var(--particle-delay) var(--ease-apple) both;background:#27a94a;border-radius:50%;width:5px;height:5px;position:absolute;top:calc(50% - 2.5px);left:calc(50% - 2.5px)}.live-game-round-results-hero>.eyebrow{animation:quiz-round-rise .55s 50ms var(--ease-apple) both}.live-game-round-results h1{margin:17px 0 16px;font-size:clamp(42px,5.3vw,74px);line-height:.94}.live-game-round-results h1 em{color:var(--tint);font-style:normal}.live-game-round-results-hero>p{animation:quiz-round-rise .55s .12s var(--ease-apple) both;max-width:390px;margin:0}.live-game-round-personal{animation:quiz-round-rise .55s .18s var(--ease-apple) both;border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:29px;padding-top:16px;display:grid}.live-game-round-personal>div{min-width:0}.live-game-round-personal span,.live-game-round-personal small{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:8px;display:block}.live-game-round-personal strong{color:var(--ink);letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;margin:7px 0 4px;font-size:17px;display:block;overflow:hidden}.live-game-round-personal>div:first-child strong{color:var(--tint);font-size:31px}.live-game-round-personal small{letter-spacing:0;text-transform:none;font-size:8px}.live-game-round-results-board{animation:quiz-round-rise .6s .1s var(--ease-apple) both;background:var(--ivory);border-radius:22px;align-self:center;min-width:0;padding:clamp(18px,2.5vw,28px)}.live-game-round-heading{justify-content:space-between;align-items:flex-end;display:flex}.live-game-round-heading h2{color:var(--ink);letter-spacing:-.05em;margin:9px 0 0;font-size:clamp(23px,2.5vw,34px)}.live-game-round-heading>span{color:var(--muted);font-size:10px}.live-game-round-winners{border-bottom:1px solid var(--line);margin-top:19px;padding-bottom:16px}.live-game-round-winners-label{color:var(--tint);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;font-size:9px;font-weight:700;display:flex}.live-game-round-winners>div{flex-wrap:wrap;gap:7px;margin-top:11px;display:flex}.live-game-round-winner{background:var(--paper);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:4px 8px 4px 4px;display:inline-flex}.live-game-round-winner .live-game-player-avatar{flex-basis:25px;width:25px;height:25px}.live-game-round-winner strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:9px;overflow:hidden}.live-game-round-winner b{animation:quiz-round-score .6s .3s var(--ease-apple) both;color:var(--tint);white-space:nowrap;font-size:10px}.live-game-round-no-winner{color:var(--muted);font-size:10px}.live-game-answer-distribution{border-bottom:1px solid var(--line);padding:18px 0 20px}.live-game-answer-distribution-heading{justify-content:space-between;align-items:flex-end;display:flex}.live-game-answer-distribution-heading h3{color:var(--ink);letter-spacing:-.045em;margin:7px 0 0;font-size:clamp(18px,2vw,25px)}.live-game-answer-distribution-heading>span{color:var(--muted);white-space:nowrap;font-size:9px}.live-game-answer-results{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:8px;margin-top:16px;display:grid}.live-game-answer-result{--answer-result-color:#e21b3c;--answer-result-soft:#e21b3c24;min-width:0}.live-game-answer-result.answer-blue{--answer-result-color:#1368ce;--answer-result-soft:#1368ce24}.live-game-answer-result.answer-amber{--answer-result-color:#bd8500;--answer-result-soft:#d89e002e}.live-game-answer-result.answer-green{--answer-result-color:#26890c;--answer-result-soft:#26890c24}.live-game-answer-result-track{background:var(--answer-result-soft);border-radius:11px 11px 5px 5px;align-items:end;height:86px;padding:4px;display:flex;overflow:hidden}.live-game-answer-result-track>span{animation:quiz-answer-bar-in .65s var(--ease-apple) both;background:var(--answer-result-color);min-height:5px;transition:height .6s var(--ease-apple);border-radius:7px 7px 3px 3px;width:100%;display:block}.live-game-answer-result-count{align-items:center;gap:6px;margin-top:7px;display:flex}.live-game-answer-result-count>span{background:var(--answer-result-color);color:#fff;border-radius:6px;flex:0 0 22px;justify-content:center;align-items:center;height:22px;font-size:9px;font-weight:700;display:inline-flex}.live-game-answer-result-count strong{color:var(--answer-result-color);font-family:var(--serif);font-size:20px;font-weight:400}.live-game-answer-result-label{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:9px;line-height:1.25;display:block;overflow:hidden}.live-game-answer-result>small{color:var(--muted);margin-top:3px;font-size:8px;display:block}@keyframes quiz-answer-bar-in{0%{opacity:0;transform-origin:bottom;transform:scaleY(.35)}to{opacity:1;transform-origin:bottom;transform:scaleY(1)}}.live-game-round-podium{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:8px;min-height:240px;margin-top:22px;display:grid}.live-game-round-podium-card{animation:quiz-round-podium .7s var(--ease-apple) both;background:var(--paper);border:1px solid var(--line);text-align:center;border-radius:17px 17px 10px 10px;flex-direction:column;justify-content:flex-end;align-items:center;min-height:178px;padding:13px 8px 14px;display:flex;position:relative;overflow:hidden}.live-game-round-podium-card.rank-1{min-height:230px;animation-delay:.16s}.live-game-round-podium-card.rank-2{min-height:201px;animation-delay:80ms}.live-game-round-podium-card.rank-3{min-height:183px;animation-delay:.24s}.live-game-round-podium-card.is-you{border-color:color-mix(in srgb, var(--tint) 42%, var(--line))}.live-game-round-podium-card.scored:after{background:var(--rose);content:"";filter:blur(14px);opacity:.75;border-radius:50%;width:80px;height:80px;position:absolute;top:24px}.live-game-round-podium-rank{background:var(--sand);color:var(--muted);z-index:1;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-bottom:9px;font-size:10px;font-weight:700;display:flex;position:relative}.rank-1 .live-game-round-podium-rank{background:var(--tint);color:#fff}.live-game-round-podium-card .live-game-player-avatar{border:3px solid var(--paper);z-index:1;flex-basis:57px;width:57px;height:57px;position:relative}.live-game-round-podium-card>strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:9px;font-size:12px;overflow:hidden}.live-game-round-podium-score{color:var(--muted);margin-top:4px;font-size:9px}.live-game-round-points{animation:quiz-round-score .6s .45s var(--ease-apple) both;background:var(--rose);color:var(--tint);z-index:1;border-radius:999px;margin-top:8px;padding:5px 8px;font-size:9px;position:relative}.live-game-round-rest{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.live-game-round-rest-heading{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.live-game-round-rest-heading span{color:var(--ink);font-size:12px;font-weight:700}.live-game-round-rest-heading small{color:var(--muted);font-size:9px}.live-game-round-rest .live-game-player-row{min-height:50px}@keyframes quiz-round-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes quiz-round-pop{0%{opacity:0;transform:scale(.72)rotate(-8deg)}70%{transform:scale(1.08)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes quiz-round-score{0%{opacity:0;transform:scale(.6)translateY(8px)}70%{transform:scale(1.12)translateY(-1px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes quiz-round-podium{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes quiz-winner-mark{0%{opacity:0;transform:scale(.55)rotate(-12deg)}60%{opacity:1;transform:scale(1.14)rotate(4deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes quiz-winner-ring{0%{opacity:.8;transform:scale(.75)}to{opacity:0;transform:scale(1.35)}}@keyframes quiz-winner-particle{0%{opacity:0;transform:rotate(var(--particle-angle)) translateY(0) scale(.35)}35%{opacity:1}to{opacity:0;transform:rotate(var(--particle-angle)) translateY(-34px) scale(1)}}@keyframes quiz-loser-shake{0%{opacity:0;transform:translate(0)rotate(0)scale(.78)}25%{opacity:1;transform:translate(-5px)rotate(-5deg)scale(1.02)}50%{transform:translate(5px)rotate(5deg)scale(1.02)}75%{transform:translate(-3px)rotate(-3deg)scale(1)}to{opacity:1;transform:translate(0)rotate(0)scale(1)}}@keyframes quiz-loser-reveal{0%{opacity:.72;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.wedding-app.quiz-live-mode .app-topbar,.wedding-app.quiz-live-mode .app-sidebar,.wedding-app.quiz-live-mode .mobile-page-title,.wedding-app.quiz-live-mode .mobile-bottom-nav,.wedding-app.quiz-live-mode>.app-layout>.app-content>.demo-notice{display:none!important}.wedding-app.quiz-live-mode .app-layout{min-height:100svh;display:block}.wedding-app.quiz-live-mode .app-content{flex-direction:column;width:100%;min-height:100svh;padding:0;display:flex}.wedding-app.quiz-live-mode .view-stage{flex:1;width:100%;max-width:none;min-height:100svh;display:flex}.wedding-app.quiz-live-mode .quiz-test-mode{flex:1;min-height:100svh;display:flex}.wedding-app.quiz-live-mode .quiz-test-banner{display:none}.wedding-app.quiz-live-mode .live-game-shell{box-shadow:none;border:0;border-radius:0;flex:1;width:100%;max-width:none;min-height:100svh}.wedding-app.quiz-live-mode .live-game-question{padding:clamp(34px,6vh,82px) clamp(36px,8vw,160px)}.wedding-app.quiz-live-mode .live-game-round-results{padding:clamp(30px,6vh,82px) clamp(36px,7vw,120px)}@media (max-width:720px){.live-game-round-results{min-height:0;padding:29px 16px 38px;display:block;overflow-y:auto}.live-game-round-results-hero{padding:0 3px 27px}.live-game-round-results-mark{width:54px;height:54px;margin-bottom:20px}.live-game-round-results h1{font-size:clamp(37px,10vw,52px)}.live-game-round-results-hero>p{font-size:12px}.live-game-round-personal{gap:7px;margin-top:23px;padding-top:13px}.live-game-round-personal strong{font-size:13px}.live-game-round-personal>div:first-child strong{font-size:25px}.live-game-round-personal span,.live-game-round-personal small{font-size:7px}.live-game-round-results-board{border-radius:18px;padding:15px}.live-game-round-heading h2{font-size:24px}.live-game-round-winners{overflow:hidden}.live-game-round-winners>div{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.live-game-round-winner{flex:none}.live-game-answer-distribution{padding:15px 0 17px}.live-game-answer-distribution-heading h3{font-size:20px}.live-game-answer-results{gap:6px;margin-top:13px}.live-game-answer-result-track{height:70px}.live-game-answer-result-count{gap:4px;margin-top:5px}.live-game-answer-result-count>span{border-radius:5px;flex-basis:19px;height:19px;font-size:8px}.live-game-answer-result-count strong{font-size:17px}.live-game-answer-result-label{font-size:8px}.live-game-round-podium{gap:5px;min-height:190px;margin-top:17px}.live-game-round-podium-card{border-radius:14px 14px 9px 9px;min-height:140px;padding:10px 5px 11px}.live-game-round-podium-card.rank-1{min-height:190px}.live-game-round-podium-card.rank-2{min-height:164px}.live-game-round-podium-card.rank-3{min-height:147px}.live-game-round-podium-card .live-game-player-avatar{flex-basis:47px;width:47px;height:47px}.live-game-round-podium-card>strong{margin-top:7px;font-size:10px}.live-game-round-podium-score{font-size:8px}.live-game-round-points{margin-top:6px;padding:4px 6px;font-size:8px}.live-game-round-rest{margin-top:17px;padding-top:15px}.wedding-app.quiz-live-mode .live-game-question{padding:22px 15px 28px}.wedding-app.quiz-live-mode .live-game-round-results{padding:29px 16px 38px}}@media (prefers-reduced-motion:reduce){.live-game-round-results-mark,.live-game-round-results.is-correct .live-game-round-results-mark:before,.live-game-round-results.is-incorrect .live-game-round-results-hero,.live-game-outcome-particles span,.live-game-round-results-hero>.eyebrow,.live-game-round-results-hero>p,.live-game-round-personal,.live-game-round-results-board,.live-game-round-podium-card,.live-game-round-winner b,.live-game-round-points{animation:none!important}}.live-game-timer{--timer-color:var(--tint);background:conic-gradient(from -90deg, var(--timer-color) var(--timer-progress), var(--sand) 0);box-shadow:0 10px 25px color-mix(in srgb, var(--timer-color) 22%, transparent), inset 0 0 0 1px #fff6;transition:background .25s linear,box-shadow .35s,transform .25s}.live-game-timer:before{background:var(--paper);z-index:0;box-shadow:inset 0 0 0 1px #48252e0f}.live-game-timer:after{border:2px solid #ffffff57;border-left-color:var(--timer-color);content:"";pointer-events:none;z-index:0;border-radius:50%;animation:4.5s linear infinite quiz-timer-orbit;position:absolute;inset:-3px}.live-game-timer>svg{animation:2.6s ease-in-out infinite quiz-timer-clock}.live-game-timer>strong{animation:quiz-timer-number .34s var(--ease-apple) both}.live-game-timer.is-warning{--timer-color:#c78926}.live-game-timer.is-critical{--timer-color:#e21b3c;animation:.9s ease-in-out infinite quiz-timer-critical}.live-game-timer.is-critical:after{animation-duration:1.15s}.live-game-timer.is-critical>svg{animation-duration:.8s}@keyframes quiz-timer-orbit{to{transform:rotate(360deg)}}@keyframes quiz-timer-number{0%{opacity:.35;transform:scale(.78)}70%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes quiz-timer-clock{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-1px)rotate(-8deg)}}@keyframes quiz-timer-critical{0%,to{box-shadow:0 10px 25px color-mix(in srgb, var(--timer-color) 20%, transparent), inset 0 0 0 1px #fff6;transform:scale(1)}50%{box-shadow:0 13px 31px color-mix(in srgb, var(--timer-color) 38%, transparent), inset 0 0 0 1px #ffffff94;transform:scale(1.045)}}@media (prefers-reduced-motion:reduce){.live-game-timer,.live-game-timer:after,.live-game-timer>svg,.live-game-timer>strong{transition:none!important;animation:none!important}}.app-notice{animation:site-notice-in .34s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;background:var(--glass-regular,#ffffffd1);border:.5px solid var(--glass-border,#48252e29);color:var(--label,var(--ink));border-radius:18px;grid-template-columns:31px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:58px;margin:14px 0;padding:10px 12px;display:grid;box-shadow:0 12px 28px #562c361a,inset 0 1px #ffffffb8}.app-notice-icon{animation:site-notice-icon-in .42s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) 40ms both;color:#319364;background:#34c75924;border:.5px solid #34c75947;border-radius:50%;justify-content:center;align-items:center;width:31px;height:31px;font-size:16px;font-weight:750;display:inline-flex}.app-notice-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.app-notice-copy strong{color:var(--label,var(--ink));letter-spacing:-.01em;font-size:11px;font-weight:700}.app-notice-copy>span{color:var(--label-2,var(--muted));overflow-wrap:anywhere;font-size:11px;line-height:1.38}.app-notice-action{justify-content:flex-end;align-items:center;display:inline-flex}.app-notice-action .button,.app-notice-action>button:not(.app-notice-dismiss){white-space:nowrap;min-height:36px}.app-notice-dismiss{color:var(--label-2,var(--muted));background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:20px;line-height:1;transition:background .2s,color .2s,transform .2s;display:inline-flex}.app-notice-dismiss:hover{color:var(--label,var(--ink));background:#80616c1f;transform:rotate(5deg)scale(1.04)}.app-notice-error{background:#d65d591a;border-color:#d65d5942}.app-notice-error .app-notice-icon{color:#c05a55;background:#d65d5924;border-color:#d65d594d}.app-notice-info{background:#147ef514;border-color:#147ef533}.app-notice-info .app-notice-icon{color:var(--blue,#147ef5);background:#147ef521;border-color:#147ef540}.gallery-notice{margin-top:12px}.admin-notice{margin:0 0 14px}.admin-data-notice{margin:0}.profile-picker-notice{margin-top:16px}.photo-viewer-feedback{align-self:center;width:calc(100% - 36px);max-width:620px;margin:-16px 18px 12px}.photo-viewer .app-notice{background:#26272deb;border-color:#ffffff29;box-shadow:0 12px 26px #0000004d,inset 0 1px #ffffff1a}.photo-viewer .app-notice-copy strong{color:#fff}.photo-viewer .app-notice-copy>span{color:#ffffffad}.photo-viewer .app-notice-dismiss{color:#ffffff9e}.photo-viewer .app-notice-dismiss:hover{color:#fff;background:#ffffff1a}.app-notice.live-room-alert,.app-notice.admin-live-error,.app-notice.admin-game-error{margin:-12px 0 18px}.app-notice.admin-game-error{margin:14px 0 18px}.app-notice.admin-live-error{margin:18px 0 0}.app-notice.native-camera-error{margin-top:12px}.app-notice-action>.admin-game-retry{align-self:center}.confirm-backdrop{-webkit-backdrop-filter:blur(14px)saturate(120%);backdrop-filter:blur(14px)saturate(120%);z-index:200;background:#05060a9e;justify-content:center;align-items:center;padding:20px;animation:.24s both site-confirm-backdrop-in;display:flex;position:fixed;inset:0}.confirm-dialog{animation:site-confirm-in .34s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;color:#fff8f8;background:linear-gradient(145deg,#2b242b,#17171d);border:.5px solid #ffebef38;border-radius:24px;width:100%;max-width:410px;padding:24px;box-shadow:0 26px 80px #00000070,inset 0 1px #ffffff1c}.confirm-dialog-icon{color:#f1a4b3;background:#ee9aaa29;border:.5px solid #ee9aaa5c;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;font-weight:750;display:inline-flex}.confirm-dialog h2{letter-spacing:-.04em;margin:18px 0 8px;font-size:22px}.confirm-dialog p{color:#fff8f8ab;margin:0;font-size:13px;line-height:1.45}.confirm-dialog-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:23px;display:grid}.confirm-dialog-actions button{border-radius:999px;min-height:46px;padding:0 14px;transition:background .2s,border-color .2s,transform .2s}.confirm-dialog-actions button:hover{transform:translateY(-1px)}.confirm-dialog-cancel{color:#fff8f8d1;background:#ffffff14;border:.5px solid #fff3}.confirm-dialog-cancel:hover{background:#ffffff21}.confirm-dialog-confirm{color:#241a1e;background:#ee9aaa;border:.5px solid #ffffff3b;font-weight:700}.confirm-dialog-confirm:hover{background:#f4afbc}.confirm-dialog-actions button:disabled{cursor:wait;opacity:.58;transform:none}.admin-delete-step{animation:admin-delete-step-in .22s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.admin-delete-code-label{color:#fff8f8c2;letter-spacing:.08em;text-transform:uppercase;margin:20px 0 7px;font-size:11px;font-weight:700;display:block}.admin-delete-code-input{box-sizing:border-box;color:#fff8f8;font:inherit;letter-spacing:.16em;text-transform:none;background:#ffffff17;border:.5px solid #ffebef45;border-radius:13px;outline:none;width:100%;min-height:49px;padding:0 14px;font-size:17px;font-weight:700;transition:background .2s,border-color .2s,box-shadow .2s}.admin-delete-code-input::placeholder{color:#fff8f859;letter-spacing:.16em}.admin-delete-code-input:focus{background:#ffffff21;border-color:#ee9aaa;box-shadow:0 0 0 3px #ee9aaa29}.admin-delete-code-hint{color:#fff8f87a;margin-top:8px;font-size:11px;line-height:1.4;display:block}.admin-delete-dialog .confirm-dialog-confirm:disabled{color:#241a1e94;cursor:not-allowed;background:#ee9aaa59}@keyframes site-notice-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes site-notice-icon-in{0%{opacity:0;transform:scale(.62)rotate(-12deg)}70%{opacity:1;transform:scale(1.08)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes site-confirm-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes site-confirm-in{0%{opacity:0;transform:translateY(14px)scale(.94)}70%{opacity:1;transform:translateY(-2px)scale(1.01)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes admin-delete-step-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@media (max-width:560px){.app-notice{grid-template-columns:29px minmax(0,1fr) auto;gap:8px;min-height:54px;padding:9px 10px}.app-notice-icon{width:29px;height:29px;font-size:14px}.app-notice-copy strong,.app-notice-copy>span{font-size:10px}.app-notice-action .button,.app-notice-action>button:not(.app-notice-dismiss){min-height:34px;padding-inline:10px}.confirm-backdrop{padding:16px}.confirm-dialog{border-radius:22px;padding:21px 18px 18px}.confirm-dialog h2{font-size:21px}.confirm-dialog p{font-size:12px}}@media (prefers-reduced-motion:reduce){.app-notice,.app-notice-icon,.confirm-backdrop,.confirm-dialog,.admin-delete-step{animation:none!important}.app-notice-dismiss,.confirm-dialog-actions button{transition:none!important}}.challenges-page .page-intro p{max-width:360px}.challenge-levels{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:760px;margin:28px 0 0;display:grid}.challenge-level{background:var(--glass-regular);border:.5px solid var(--glass-border);border-radius:17px;flex-direction:column;align-items:flex-start;gap:4px;min-height:66px;padding:13px 14px;display:flex}.challenge-level b{color:var(--label);font-size:11px;font-weight:650}.challenge-level small{color:var(--label-2);font-size:10px}.challenge-level:before{background:var(--tint);content:"";border-radius:50%;width:6px;height:6px;margin-bottom:3px}.challenge-level.medium:before{background:#e0a04f}.challenge-level.hard:before{background:#dd667f}.challenge-notice{max-width:760px;margin:16px 0 -2px}.challenge-filter-panel{background:var(--glass-regular);border:.5px solid var(--glass-border);border-radius:24px;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px;max-width:920px;margin:24px 0 18px;padding:18px;display:grid;box-shadow:0 12px 32px #202b4012}.challenge-filter-group{min-width:0}.challenge-filter-label{color:var(--label-2);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:650;display:block}.challenge-filter-panel .filter-row{gap:7px;margin:9px 0 0;padding:0 0 2px}.challenge-filter-panel .filter{min-height:40px;transition:background-color .2s var(--ease-apple,ease), border-color .2s var(--ease-apple,ease), color .2s var(--ease-apple,ease), transform .2s var(--ease-apple,ease);border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-size:11px;display:inline-flex}.challenge-filter-panel .filter:hover{transform:translateY(-1px)}.challenge-filter-panel .filter span{margin-left:7px;font-size:9px;font-weight:700}.challenge-filter-panel .challenge-filter-easy.active{background:#4d8c65;border-color:#4d8c65}.challenge-filter-panel .challenge-filter-medium.active{background:#a26c28;border-color:#a26c28}.challenge-filter-panel .challenge-filter-hard.active{background:#bd4e68;border-color:#bd4e68}.challenge-filter-panel .challenge-filter-easy:not(.active){border-color:color-mix(in srgb, #4d8c65 28%, var(--glass-border))}.challenge-filter-panel .challenge-filter-medium:not(.active){border-color:color-mix(in srgb, #a26c28 28%, var(--glass-border))}.challenge-filter-panel .challenge-filter-hard:not(.active){border-color:color-mix(in srgb, #bd4e68 28%, var(--glass-border))}.challenge-filter-summary{border-top:.5px solid var(--separator);color:var(--label-2);grid-column:1/-1;justify-content:space-between;align-items:center;min-height:36px;padding-top:13px;font-size:11px;display:flex}.challenge-filter-summary strong{color:var(--label);font-size:14px}.challenge-filter-summary button{color:var(--tint);cursor:pointer;background:0 0;border:0;min-height:36px;padding:0 2px 0 14px;font-size:11px;font-weight:650}.challenge-filter-panel+.challenge-grid{margin-top:0}.challenge-empty-state{margin-top:18px}.challenge-card{animation:challenge-card-in .42s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;border-radius:25px;gap:0;min-height:268px;padding:20px}.challenge-card:nth-child(2){animation-delay:35ms}.challenge-card:nth-child(3){animation-delay:70ms}.challenge-card:nth-child(4){animation-delay:.105s}.challenge-card:nth-child(5){animation-delay:.14s}.challenge-card:nth-child(6){animation-delay:.175s}.challenge-card:nth-child(7){animation-delay:.21s}.challenge-card:nth-child(8){animation-delay:.245s}.challenge-card:nth-child(9){animation-delay:.28s}.challenge-card:nth-child(10){animation-delay:.315s}.challenge-card:nth-child(11){animation-delay:.35s}.challenge-card:nth-child(12){animation-delay:.385s}.challenge-card.is-full{border-color:color-mix(in srgb, var(--tint) 28%, var(--glass-border))}.challenge-card.is-complete{border-color:color-mix(in srgb, #70b989 38%, var(--glass-border))}.challenge-card .challenge-top{margin-bottom:17px}.challenge-icon{border-radius:15px;width:48px;height:48px}.points-badge{border-radius:10px;font-size:10px;font-weight:650}.challenge-card-labels{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.challenge-difficulty{border-radius:999px;align-items:center;gap:5px;min-height:25px;padding:0 9px;display:inline-flex}.challenge-difficulty b{font-size:10px;font-weight:650}.challenge-difficulty small{font-size:10px}.challenge-difficulty.easy{color:#4d8c65;background:#70b98924}.challenge-difficulty.medium{color:#a26c28;background:#e0a04f29}.challenge-difficulty.hard{color:#bd4e68;background:#dd667f26}.challenge-proof{color:var(--label-3);font-size:10px}.challenge-card h3{color:var(--label);font-family:var(--font-stack,Arial, sans-serif);letter-spacing:-.035em;margin:15px 0 9px;font-size:clamp(18px,2vw,22px);font-weight:650;line-height:1.05}.challenge-card p{color:var(--label-2);max-width:300px;font-size:12px;line-height:1.42}.challenge-footer{color:var(--label-2);min-height:32px;padding-top:14px;font-size:10px}.challenge-footer span.is-success{color:#4d8c65}.challenge-footer span.is-muted{color:var(--label-3)}.challenge-footer b{color:var(--tint);font-family:var(--font-stack,Arial, sans-serif);transition:transform .2s var(--ease-apple,ease);font-size:22px}.challenge-card:hover .challenge-footer b{transform:translate(3px)}.detail-page{max-width:840px}.detail-hero{border-radius:28px;max-width:820px;padding:28px 30px 29px}.detail-hero-top{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.detail-hero .detail-icon{background:var(--tint-soft);border-radius:16px;justify-content:center;align-items:center;width:54px;height:54px;margin:0;display:inline-flex}.detail-difficulty{flex-direction:column;gap:2px;min-height:45px;padding:7px 12px}.detail-difficulty small{color:currentColor;opacity:.78;font-size:10px}.detail-hero h1{color:var(--label);font-family:var(--font-stack,Arial, sans-serif);letter-spacing:-.065em;max-width:740px;margin:14px 0 12px;font-size:clamp(35px,6vw,68px);font-weight:700;line-height:.94}.detail-hero p{color:var(--label-2);max-width:520px;margin:0;font-size:14px;line-height:1.45}.detail-hero-footer{flex-wrap:wrap;align-items:center;gap:12px;margin-top:21px;display:flex}.detail-hero .point-pill{background:var(--tint);border-radius:999px;margin:0;padding:9px 12px;font-size:11px}.detail-people-count{color:var(--label-2);font-size:11px}.detail-grid{gap:12px;margin-top:12px}.detail-card{border-radius:25px;padding:25px 24px}.detail-card h2,.challenge-participants-card h2{color:var(--label);font-family:var(--font-stack,Arial, sans-serif);letter-spacing:-.045em;margin:12px 0 18px;font-size:25px;font-weight:650}.detail-card ol{color:var(--label-2);margin-bottom:22px;font-size:12px;line-height:1.45}.detail-card li{margin-bottom:9px}.detail-action-card .button{border-radius:999px;min-height:46px}.detail-action-card .button:disabled{cursor:not-allowed;opacity:.6}.challenge-start-note{color:var(--label-3);margin-top:12px;font-size:10px;line-height:1.4;display:block}.detail-card.pale .rule-row{border-bottom-color:var(--separator);color:var(--label-2)}.detail-card.pale .rule-row strong{color:var(--label);font-weight:600}.challenge-participants-card{max-width:820px;margin-top:12px}.challenge-participants-heading{justify-content:space-between;align-items:flex-start;display:flex}.challenge-participants-heading h2{margin-bottom:0}.challenge-participants-heading>b{background:var(--tint-soft);color:var(--tint);border-radius:50%;justify-content:center;align-items:center;min-width:38px;height:38px;font-size:13px;display:inline-flex}.challenge-participant-list{flex-wrap:wrap;gap:9px;margin-top:21px;display:flex}.challenge-participant{background:var(--bg-2,#ffffff73);border:.5px solid var(--glass-border);border-radius:999px;align-items:center;gap:8px;min-height:42px;padding:4px 12px 4px 4px;display:inline-flex}.challenge-participant strong{color:var(--label);font-size:11px;font-weight:600}.challenge-participant-avatar{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--tint);border-radius:50%;flex:0 0 32px;justify-content:center;align-items:center;width:32px;height:32px;font-size:10px;display:inline-flex;position:relative;overflow:hidden}.challenge-participants-empty{color:var(--label-2);margin:20px 0 0;font-size:12px}@keyframes challenge-card-in{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@media (max-width:720px){.challenge-levels{gap:6px;margin-top:22px}.challenge-level{min-height:61px;padding:11px 10px}.challenge-level b{font-size:10px}.challenge-level small{font-size:9px}.challenge-filter-panel{border-radius:21px;grid-template-columns:minmax(0,1fr);gap:15px;margin-top:18px;padding:15px}.challenge-filter-panel .filter-row{margin-top:8px;padding-bottom:0;display:grid;overflow:visible}.challenge-filter-panel .challenge-proof-filter-row{grid-template-columns:repeat(3,minmax(0,1fr))}.challenge-filter-panel .challenge-difficulty-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.challenge-filter-panel .filter{width:100%;min-height:42px;padding-inline:8px}.challenge-filter-summary{grid-column:1}.challenge-card{min-height:226px;padding:18px}.challenge-card h3{font-size:19px}.challenge-card p{font-size:12px}.detail-hero{border-radius:23px;padding:22px 19px 23px}.detail-hero-top{margin-bottom:20px}.detail-hero .detail-icon{border-radius:14px;width:48px;height:48px}.detail-difficulty{min-height:42px;padding:6px 10px}.detail-hero h1{font-size:clamp(34px,11vw,51px)}.detail-hero p{font-size:13px}.detail-card{border-radius:22px;padding:21px 18px}.detail-card h2,.challenge-participants-card h2{font-size:23px}.challenge-participant-list{gap:7px}}@media (prefers-reduced-motion:reduce){.challenge-card{animation:none!important}.challenge-card .challenge-footer b,.challenge-filter-panel .filter{transition:none!important}}.gallery-photo-only .gallery-only-grid .media-art:after{display:none}.gallery-photo-only .gallery-only-grid .remote-media-image{background:var(--bg-2);isolation:isolate;position:relative;overflow:hidden}.gallery-photo-only .gallery-only-grid .remote-media-backdrop,.gallery-photo-only .gallery-only-grid .remote-media-foreground{background-position:50%;background-repeat:no-repeat;position:absolute;inset:0}.gallery-photo-only .gallery-only-grid .remote-media-backdrop{filter:none;opacity:1;z-index:0;background-size:contain;transition:none;transform:none}.gallery-photo-only .gallery-only-grid .remote-media-foreground{object-fit:contain;z-index:1;background-size:contain;width:100%;height:100%;display:block}.gallery-photo-only .gallery-only-grid .media-tile:hover .remote-media-image{filter:saturate(1.03);transform:none}.gallery-photo-only .gallery-only-grid .media-art>video{background:var(--bg-2);object-fit:contain}.gallery-loading-state{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(7px,1.05vw,12px);display:grid}.gallery-loading-tile{aspect-ratio:1;background:linear-gradient(120deg, var(--bg-2), var(--glass-regular) 45%, var(--bg-2));border:.5px solid var(--glass-border);border-radius:clamp(15px,1.7vw,22px);position:relative;overflow:hidden}.gallery-loading-tile:after{content:"";background:linear-gradient(105deg,#0000 25%,#ffffff29 50%,#0000 75%);animation:1.35s ease-in-out infinite gallery-loading-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes gallery-loading-shimmer{to{transform:translate(100%)}}@media (max-width:720px){.gallery-loading-state{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.gallery-loading-tile:after{animation:none;transform:none}}.wedding-app :where(.button,.gallery-upload-cta,.library-upload-button,.glass-icon-button,.mobile-back,.sheet-cancel,.empty-upload-link,.live-game-primary,.admin-game-main-action,.admin-question-save,.photo-viewer-bottom button,.photo-viewer-menu button,.confirm-dialog-actions button,.app-notice-dismiss,.filter,.gallery-scope-tabs button,.photo-view-tabs button,.gallery-filter-sheet button,.side-link,.mobile-bottom-nav button):not(:disabled){touch-action:manipulation;transition:background .24s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), border-color .24s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), box-shadow .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), color .24s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), filter .24s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), opacity .24s ease, transform .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1))}.wedding-app :where(.home-menu-card,.action-card,.feature-card,.challenge-card,.media-tile,.memory-card,.admin-activity-card,.profile-card){transform-origin:50%;transition:background .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), border-color .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), box-shadow .32s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), filter .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), opacity .24s ease, transform .32s var(--ease-apple,cubic-bezier(.22, .8, .26, 1))}.wedding-app :where(.button,.gallery-upload-cta,.library-upload-button,.glass-icon-button,.mobile-back,.sheet-cancel,.empty-upload-link,.live-game-primary,.admin-game-main-action,.admin-question-save,.photo-viewer-bottom button,.photo-viewer-menu button,.confirm-dialog-actions button,.app-notice-dismiss,.filter,.gallery-scope-tabs button,.photo-view-tabs button,.gallery-filter-sheet button,.side-link,.mobile-bottom-nav button,.home-menu-card,.action-card,.feature-card,.challenge-card,.media-tile,.memory-card,.admin-activity-card,.profile-card):not(:disabled):active{opacity:.84;transform:scale(.965)}@media (hover:hover) and (pointer:fine){.wedding-app :where(.button,.gallery-upload-cta,.library-upload-button,.glass-icon-button,.mobile-back,.sheet-cancel,.empty-upload-link,.live-game-primary,.admin-game-main-action,.admin-question-save,.photo-viewer-bottom button,.photo-viewer-menu button,.confirm-dialog-actions button,.app-notice-dismiss,.filter,.gallery-scope-tabs button,.photo-view-tabs button,.gallery-filter-sheet button,.side-link,.mobile-bottom-nav button):not(:disabled):hover{filter:brightness(1.045);transform:translateY(-2px)}.wedding-app :where(.glass-icon-button,.app-notice-dismiss,.photo-viewer-bottom button,.photo-viewer-menu button,.mobile-bottom-nav button):not(:disabled):hover{transform:scale(1.045)}.wedding-app :where(.home-menu-card,.action-card,.feature-card,.challenge-card,.media-tile,.memory-card,.admin-activity-card,.profile-card):hover{filter:brightness(1.018);transform:translateY(-4px)}.wedding-app :where(.home-menu-card,.action-card,.feature-card,.challenge-card,.media-tile,.memory-card,.admin-activity-card,.profile-card):hover:after{opacity:1}}.wedding-app :where(.button,.gallery-upload-cta,.library-upload-button,.empty-upload-link,.live-game-primary,.admin-game-main-action,.admin-question-save,.home-menu-card,.action-card,.feature-card,.challenge-card,.media-tile,.memory-card,.admin-activity-card,.profile-card){will-change:transform}.wedding-app :where(.button svg,.gallery-upload-cta svg,.empty-upload-link svg,.live-game-primary svg,.admin-game-main-action svg,.home-menu-arrow,.action-card-arrow,.feature-arrow,.challenge-footer b){transition:transform .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1))}@media (hover:hover) and (pointer:fine){.wedding-app :where(.button,.gallery-upload-cta,.empty-upload-link,.live-game-primary,.admin-game-main-action):hover svg,.wedding-app :where(.home-menu-card,.action-card,.feature-card):hover :where(.home-menu-arrow,.action-card-arrow,.feature-arrow),.wedding-app .challenge-card:hover .challenge-footer b{transform:translate(4px)}}.wedding-app :where(.gallery-scope-tabs button.active,.photo-view-tabs button.active,.gallery-filter-sheet button.active){animation:motion-pill-settle .32s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.gallery-photo-only .gallery-only-grid .media-art{position:relative}.gallery-photo-only .gallery-only-grid .media-art:before{content:"";opacity:.72;pointer-events:none;transition:transform .62s var(--ease-apple,cubic-bezier(.22, .8, .26, 1));z-index:2;background:linear-gradient(108deg,#0000 28%,#fff3 49%,#0000 69%);position:absolute;inset:0;transform:translate(-115%)}@media (hover:hover) and (pointer:fine){.gallery-photo-only .gallery-only-grid .media-tile:hover .media-art:before{transform:translate(115%)}}.gallery-photo-only .gallery-only-grid .media-tile:focus-visible{outline:none;box-shadow:0 0 0 3px #c45d7457,0 14px 34px #562c3629}.photo-viewer-overlay,.sheet-backdrop{animation:.3s both motion-backdrop-in}.photo-viewer{animation:motion-viewer-in .42s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.photo-viewer-art>img,.photo-viewer-art>video{animation:motion-media-in .5s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) 60ms both}.wedding-app :where(.admin-native-camera-control,.live-comment-login,.live-comment-input-row>button,.admin-live-comment-row>button):not(:disabled){touch-action:manipulation;transition:background .24s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), border-color .24s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), box-shadow .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), color .24s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), opacity .24s ease, transform .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1))}.wedding-app :where(.admin-native-camera-control,.live-comment-login,.live-comment-input-row>button,.admin-live-comment-row>button):not(:disabled):active{opacity:.84;transform:scale(.96)}@media (hover:hover) and (pointer:fine){.wedding-app :where(.admin-native-camera-control,.live-comment-login,.live-comment-input-row>button,.admin-live-comment-row>button):not(:disabled):hover{filter:brightness(1.04);transform:translateY(-2px);box-shadow:0 8px 18px #562c361f}}.live-game-question{animation:quiz-question-in .42s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.live-game-answer-grid>.live-game-answer{animation:quiz-answer-in .42s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.live-game-answer-grid>.live-game-answer:nth-child(2){animation-delay:45ms}.live-game-answer-grid>.live-game-answer:nth-child(3){animation-delay:90ms}.live-game-answer-grid>.live-game-answer:nth-child(4){animation-delay:.135s}.live-game-answer.selected{animation:quiz-answer-selected .3s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.live-game-answer-waiting{animation:quiz-waiting-in .38s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.admin-activity-grid>.admin-activity-card{animation:admin-activity-in .38s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.admin-activity-grid>.admin-activity-card:nth-child(2){animation-delay:45ms}.admin-activity-grid>.admin-activity-card:nth-child(3){animation-delay:90ms}.challenge-level{animation:challenge-level-in .38s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.challenge-level:nth-child(2){animation-delay:55ms}.challenge-level:nth-child(3){animation-delay:.11s}.challenge-card:hover .challenge-icon,.challenge-card:focus-within .challenge-icon{transform:rotate(-4deg)scale(1.06)}.challenge-icon{transition:background .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), color .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)), transform .3s var(--ease-apple,cubic-bezier(.22, .8, .26, 1))}.challenge-participant{animation:participant-in .34s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.challenge-participant:nth-child(2){animation-delay:35ms}.challenge-participant:nth-child(3){animation-delay:70ms}.challenge-participant:nth-child(4){animation-delay:.105s}.app-notice{position:relative;overflow:hidden}.app-notice:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 25%,#ffffff52 50%,#0000 75%);animation:.9s .1s both notice-sheen;position:absolute;inset:0;transform:translate(-120%)}.app-notice>*{z-index:1;position:relative}.confirm-dialog-icon{animation:confirm-icon-in .38s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) 80ms both}@keyframes motion-pill-settle{0%{opacity:.55;transform:scale(.95)}70%{opacity:1;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@keyframes motion-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes motion-viewer-in{0%{opacity:0;transform:scale(.975)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes motion-media-in{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes quiz-question-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes quiz-answer-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes quiz-answer-selected{0%{transform:scale(.965)}65%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes quiz-waiting-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes admin-activity-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes challenge-level-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes participant-in{0%{opacity:0;transform:translateY(5px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes notice-sheen{to{transform:translate(120%)}}@keyframes confirm-icon-in{0%{opacity:0;transform:scale(.72)rotate(-8deg)}70%{opacity:1;transform:scale(1.08)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}@media (hover:none){.wedding-app .home-menu-card:hover,.wedding-app .action-card:hover,.wedding-app .feature-card:hover,.wedding-app .challenge-card:hover,.wedding-app .media-tile:hover,.wedding-app .memory-card:hover,.wedding-app .admin-activity-card:hover,.wedding-app .profile-card:hover{filter:none;transform:none}.gallery-photo-only .gallery-only-grid .media-tile:hover .media-art:before{transform:translate(-115%)}}@media (prefers-reduced-motion:reduce){.wedding-app *,.wedding-app :before,.wedding-app :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.wedding-app :where(.button,.gallery-upload-cta,.library-upload-button,.glass-icon-button,.mobile-back,.sheet-cancel,.empty-upload-link,.live-game-primary,.admin-game-main-action,.admin-question-save,.photo-viewer-bottom button,.photo-viewer-menu button,.confirm-dialog-actions button,.app-notice-dismiss,.filter,.gallery-scope-tabs button,.photo-view-tabs button,.gallery-filter-sheet button,.side-link,.mobile-bottom-nav button):not(:disabled):active,.wedding-app :where(.admin-native-camera-control,.live-comment-login,.live-comment-input-row>button,.admin-live-comment-row>button):not(:disabled):active{opacity:1;transform:none}}html[data-wedding-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fbf4f5}html[data-wedding-theme=light] body{color:#25191c;background:#fbf4f5}.wedding-app[data-view=home] .home-menu-screen{align-items:start}@media (max-width:720px){.wedding-app[data-view=home] .home-menu-screen{padding-top:max(24px, env(safe-area-inset-top));align-items:start}}.event-schedule-content{place-content:start;gap:clamp(14px,2.8vh,28px);padding:clamp(26px,5vh,54px) clamp(18px,5vw,72px) clamp(22px,4vh,42px)}.event-schedule-content .countdown-copy{max-width:780px}.event-schedule-content .countdown-copy h1{margin-top:12px}.event-schedule-content .countdown-copy p{color:#fff7f8b8;margin:14px auto 0;font-size:clamp(12px,1.2vw,15px)}.event-schedule-content .countdown-grid{max-width:930px;margin:0 auto}.event-schedule-stops{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:1000px;display:grid}.schedule-stop-card{-webkit-backdrop-filter:blur(18px)saturate(150%);background:#ffffff18;border:.5px solid #ffffff40;border-radius:20px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px 12px;min-width:0;padding:14px 16px;display:grid;box-shadow:inset 0 1px #ffffff2e,0 14px 28px #00000029}.schedule-stop-heading{flex-direction:column;align-items:center;gap:6px;display:flex}.schedule-stop-heading span{background:var(--countdown-pink);color:#351c26;border-radius:50%;justify-content:center;align-items:center;width:27px;height:27px;font-size:11px;font-weight:750;display:inline-flex}.schedule-stop-heading strong{color:var(--countdown-peach);letter-spacing:.08em;white-space:nowrap;font-size:10px}.schedule-stop-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.schedule-stop-copy strong{color:#fff7f8;letter-spacing:-.025em;overflow-wrap:anywhere;font-size:clamp(13px,1.5vw,17px);line-height:1.12}.schedule-stop-copy small{color:#fff7f89e;font-size:10px}.schedule-stop-links{flex-wrap:wrap;grid-column:2;gap:7px;display:flex}.schedule-stop-links a{color:#fff7f8;min-height:29px;transition:background .22s var(--ease-apple), border-color .22s var(--ease-apple), transform .22s var(--ease-apple);background:#fff7f81a;border:1px solid #fff7f833;border-radius:999px;align-items:center;gap:5px;padding:0 10px;font-size:9px;text-decoration:none;display:inline-flex}.schedule-stop-links a:hover{background:#fff7f833;border-color:#fff7f875;transform:translateY(-1px)}.schedule-open-banner{color:#fff7f8d1;background:#fff7f81a;border:1px solid #fff7f82e;border-radius:999px;align-items:center;gap:8px;min-height:32px;padding:0 13px;font-size:11px;display:inline-flex}.schedule-open-dot{background:#7ee39c;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #7ee39c1f,0 0 12px #7ee39cbd}.schedule-home-note{color:#fff7f87a;text-align:center;font-size:10px}.event-schedule-content .countdown-footer{gap:8px}.gallery-photo-only:before,.gallery-photo-only:after,.gallery-photo-only .gallery-photo-nav:before,.gallery-photo-only .gallery-photo-nav:after{content:none!important;display:none!important}.gallery-photo-only{overflow-x:clip}.gallery-photo-only .gallery-photo-nav{background:var(--glass-regular);border:.5px solid var(--glass-border);border-radius:24px;grid-template-columns:minmax(0,1fr) 56px;align-items:center;gap:8px;width:100%;min-height:64px;padding:6px;display:grid;position:sticky;top:86px;overflow:visible}.gallery-photo-only .gallery-photo-nav>.gallery-scope-tabs{grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;min-width:0;height:52px;display:grid;overflow:hidden}.gallery-photo-only .gallery-scope-tabs button{text-overflow:ellipsis;white-space:nowrap;min-width:0;min-height:52px;padding-inline:clamp(7px,1vw,16px);overflow:hidden}.gallery-photo-only .gallery-photo-nav .gallery-upload-cta{aspect-ratio:1;border-radius:50%;flex:0 0 52px;justify-content:center;align-self:center;align-items:center;width:52px;min-width:52px;height:52px;min-height:52px;margin:0;padding:0;display:inline-flex}.gallery-photo-only .gallery-photo-nav .gallery-upload-cta strong{display:none}.gallery-photo-only .gallery-photo-nav .gallery-upload-cta svg{width:24px;height:24px}.theme-dark .gallery-photo-only .gallery-photo-nav{background:#1b1216eb;border-color:#ffebef2e}.theme-dark .gallery-photo-only .gallery-photo-nav>.gallery-scope-tabs{background:0 0}.wedding-app.theme-dark,html[data-wedding-theme=dark] .wedding-app{--app-bg:#120d0f;--surface:#1d1518;--surface-soft:#21181b;--green-soft:#34c75929;--peach-soft:#f3948b2e;--lavender-soft:#ee9aaa24;--text-strong:#f5f5f7;--text-soft:#f5ebeea8;--border-soft:#d68f9b47;color:#f5f5f7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#120d0f}.wedding-app.theme-dark .app-topbar,html[data-wedding-theme=dark] .wedding-app .app-topbar{background:0 0;border-color:#0000}.wedding-app.theme-dark .app-topbar:before,html[data-wedding-theme=dark] .wedding-app .app-topbar:before{border-bottom-color:#d68f9b2e;background:linear-gradient(#0d0a0bf5,#0d0a0bd1)!important}.wedding-app.theme-dark .mobile-page-title,html[data-wedding-theme=dark] .wedding-app .mobile-page-title{box-shadow:none;border:0;background:0 0!important;display:none!important}.theme-dark .action-card.mint{color:#f5f5f7;background:linear-gradient(145deg,#4a2935eb,#25191deb)!important}.theme-dark .action-card.peach,.theme-dark .action-card.lavender{color:#f5f5f7;background:linear-gradient(145deg,#492830eb,#1f1619eb)!important}.theme-dark .library-privacy{color:#b5efc2;background:#34c75929}.theme-dark .library-privacy strong{color:#b5efc2}.theme-dark .library-privacy p{color:#e1f5e5b8}.admin-setting-button{cursor:pointer;font:inherit}.admin-setting-button.is-enabled{background:var(--tint);color:#fff}.ranking-empty{color:var(--muted);padding:18px 0;font-size:12px}.live-game-round-results.is-correct .live-game-round-results-mark{color:#27a94a;background:#34c75929}.live-game-round-results.is-incorrect .live-game-round-results-mark{color:#c47700;background:#ff950029}@media (max-width:720px){.event-schedule-content{padding:24px 14px max(18px, env(safe-area-inset-bottom));gap:14px}.event-schedule-content .countdown-copy h1{font-size:clamp(40px,12vw,58px)}.event-schedule-content .countdown-copy p{margin-top:10px;font-size:11px}.event-schedule-content .countdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.event-schedule-content .countdown-unit{min-height:84px;padding:14px 4px 11px}.event-schedule-content .countdown-unit strong{font-size:clamp(30px,10vw,48px)}.event-schedule-content .countdown-unit span{margin-top:9px;font-size:7px}.event-schedule-stops{grid-template-columns:1fr;gap:8px}.schedule-stop-card{border-radius:16px;gap:8px 10px;padding:11px 12px}.schedule-stop-links a{min-height:30px;font-size:9px}.schedule-home-note{font-size:9px}.event-schedule-content .countdown-footer{gap:7px}.event-schedule-content .countdown-date{font-size:9px}.gallery-photo-only .gallery-photo-nav{grid-template-columns:minmax(0,1fr) 50px;min-height:60px;padding:4px;top:72px}.gallery-photo-only .gallery-photo-nav>.gallery-scope-tabs{height:50px}.gallery-photo-only .gallery-scope-tabs button{min-height:50px;padding-inline:6px}.gallery-photo-only .gallery-photo-nav .gallery-upload-cta{flex-basis:50px;width:50px;min-width:50px;height:50px;min-height:50px}.mobile-bottom-nav{gap:0;padding-inline:4px}.mobile-bottom-nav>button{flex:1 1 0;min-width:0;padding-inline:2px}.mobile-bottom-nav>button small{font-size:8px}.mobile-bottom-nav .mobile-add-button{flex:0 0 54px}}@media (max-width:380px){.event-schedule-content,.schedule-stop-card{padding-inline:10px}.gallery-photo-only .gallery-photo-nav{grid-template-columns:minmax(0,1fr) 46px}.gallery-photo-only .gallery-scope-tabs button{padding-inline:4px;font-size:10px}.gallery-photo-only .gallery-photo-nav .gallery-upload-cta{flex-basis:46px;width:46px;min-width:46px;height:46px;min-height:46px}.mobile-bottom-nav .mobile-add-button{flex-basis:48px}}.wedding-app:before{display:none!important}.view-stage{animation:final-view-slide-in .34s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.gallery-photo-only .public-gallery,.gallery-photo-only .moment-stream,.gallery-photo-only .empty-state{animation:final-surface-slide-in .38s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.gallery-photo-only .gallery-only-grid .media-tile{animation:final-tile-slide-in .42s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;animation-delay:calc(var(--gallery-index,0) * 45ms)}@keyframes final-view-slide-in{0%{opacity:1;transform:translateY(7px)}to{opacity:1;transform:translate(0,0)}}@keyframes final-surface-slide-in{0%{opacity:1;transform:translateY(6px)}to{opacity:1;transform:translate(0,0)}}@keyframes final-tile-slide-in{0%{opacity:1;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translate(0,0)scale(1)}}@media (prefers-reduced-motion:reduce){.view-stage,.gallery-photo-only .public-gallery,.gallery-photo-only .moment-stream,.gallery-photo-only .empty-state,.gallery-photo-only .gallery-only-grid .media-tile{animation:none!important;transform:none!important}}.photo-viewer-menu{animation:menu-pop-in .24s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;transform-origin:100% 0;will-change:opacity, transform}.photo-viewer-menu button{animation:menu-item-in .22s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.photo-viewer-menu button:nth-child(2){animation-delay:35ms}.photo-viewer-menu button:nth-child(3){animation-delay:70ms}.photo-viewer-details,.gallery-photo-only .gallery-filter-sheet,.admin-question-editor[open] .admin-question-form{animation:menu-panel-in .28s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;transform-origin:top;will-change:opacity, transform}.sheet-heading,.sheet-access-note,.sheet-challenge-context,.sheet-actions,.sheet-cancel{animation:menu-item-in .3s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.sheet-heading{animation-delay:35ms}.sheet-access-note,.sheet-challenge-context{animation-delay:65ms}.sheet-actions{animation-delay:95ms}.sheet-cancel{animation-delay:.135s}.sheet-actions>button,.sheet-actions>label{animation:menu-item-in .25s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both}.sheet-actions>:nth-child(2){animation-delay:45ms}.sheet-actions>:nth-child(3){animation-delay:90ms}@keyframes menu-pop-in{0%{opacity:0;transform:translateY(-6px)scale(.96)}72%{opacity:1;transform:translateY(1px)scale(1.012)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes menu-panel-in{0%{opacity:0;transform:translateY(-7px)scaleY(.965)}to{opacity:1;transform:translate(0,0)scaleY(1)}}@keyframes menu-item-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translate(0,0)}}@media (prefers-reduced-motion:reduce){.photo-viewer-menu,.photo-viewer-menu button,.photo-viewer-details,.gallery-photo-only .gallery-filter-sheet,.admin-question-editor[open] .admin-question-form,.sheet-heading,.sheet-access-note,.sheet-challenge-context,.sheet-actions,.sheet-actions>button,.sheet-actions>label,.sheet-cancel{will-change:auto;animation:none!important;transform:none!important}}.profile-card-featured{--profile-highlight:#c45d74;box-shadow:0 8px 22px #c45d741f,inset 0 1px #ffffff9e}.profile-card-groom{background:linear-gradient(145deg, #ffe8eff0, var(--bg-cell));border-color:#c45d7494}.profile-card-bride{--profile-highlight:#db7e97;background:linear-gradient(145deg, #ffeff5eb, var(--bg-cell));border-color:#db7e9775}.profile-card-godmother{--profile-highlight:#c48668;background:linear-gradient(145deg, #ffefe2f2, var(--bg-cell));border-color:#c486688f}.profile-card-godfather{--profile-highlight:#5b8fb4;background:linear-gradient(145deg, #e6f2fbf5, var(--bg-cell));border-color:#5b8fb48f}.profile-card-father{--profile-highlight:#7895a7;background:linear-gradient(145deg, #eef4f7eb, var(--bg-cell));border-color:#7895a76b}.profile-card-mother{--profile-highlight:#ad8d9b;background:linear-gradient(145deg, #f7eef2eb, var(--bg-cell));border-color:#ad8d9b6b}.profile-card-featured:hover{border-color:var(--tint);box-shadow:0 11px 26px #c45d742e,inset 0 1px #ffffffad}.profile-card-featured .profile-avatar{border-color:#c45d747a;box-shadow:0 5px 15px #c45d742b}.profile-card-copy .profile-card-role{background:color-mix(in srgb, var(--profile-highlight) 13%, transparent);border:.5px solid color-mix(in srgb, var(--profile-highlight) 24%, transparent);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-self:center;width:max-content;padding:4px 7px;font-size:8px;font-weight:750;line-height:1;color:var(--profile-highlight)!important}.theme-dark .profile-card-groom{background:linear-gradient(145deg, #c45d7438, var(--bg-cell));border-color:#f291a49e}.theme-dark .profile-card-bride{background:linear-gradient(145deg, #db7e972e, var(--bg-cell));border-color:#f291a47a}.theme-dark .profile-card-godmother{background:linear-gradient(145deg, #c4866833, var(--bg-cell));border-color:#eab19194}.theme-dark .profile-card-godfather{background:linear-gradient(145deg, #5b8fb433, var(--bg-cell));border-color:#96c7e694}.theme-dark .profile-card-father{background:linear-gradient(145deg, #7895a729, var(--bg-cell));border-color:#a4c1d06b}.theme-dark .profile-card-mother{background:linear-gradient(145deg, #ad8d9b29, var(--bg-cell));border-color:#d5b2c16b}@media (prefers-reduced-motion:reduce){.profile-card-featured{box-shadow:none}}.live-game-landing.live-game-waiting{text-align:center;justify-content:center;align-items:center;min-height:520px;padding:clamp(30px,5vw,68px)}.quiz-waiting-layout{grid-template-columns:minmax(170px,.7fr) minmax(0,1fr);align-items:center;gap:clamp(28px,6vw,76px);width:100%;max-width:820px;display:grid}.quiz-waiting-photos{justify-self:center;width:min(100%,280px)}.quiz-waiting-photo-frame{aspect-ratio:3/4;background:var(--ivory);border:1px solid var(--line);isolation:isolate;border-radius:28px;position:relative;overflow:hidden;transform:rotate(-2deg);box-shadow:0 24px 46px #3a232b1f,0 0 0 8px #ffffff61}.quiz-waiting-photo-frame:after{content:"";pointer-events:none;z-index:1;background:linear-gradient(145deg,#ffffff3d,#0000 38%,#3a232b1a);position:absolute;inset:0}.quiz-waiting-photo{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.quiz-waiting-photo-previous{z-index:1}.quiz-waiting-photo-active{animation:quiz-waiting-photo-crossfade .82s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;z-index:2}@keyframes quiz-waiting-photo-crossfade{0%{opacity:0;transform:scale(1.035)}48%{opacity:.9}to{opacity:1;transform:scale(1)}}.quiz-waiting-photo-progress{justify-content:center;gap:4px;max-width:220px;margin:17px auto 0;display:flex}.quiz-waiting-photo-progress span{background:var(--sand);min-width:0;height:3px;transition:background .3s var(--ease-apple,cubic-bezier(.22, .8, .26, 1));border-radius:999px;flex:1 1 0}.quiz-waiting-photo-progress span.is-active{background:var(--tint)}.quiz-waiting-copy{text-align:left;min-width:0}.quiz-waiting-copy .live-game-waiting-simple{max-width:none}.quiz-waiting-copy .live-game-waiting-simple .eyebrow{justify-content:flex-start}.quiz-waiting-copy .live-game-waiting-simple h1{margin:16px 0 0}@media (max-width:720px){.live-game-landing.live-game-waiting{min-height:calc(100svh - 148px);padding:28px 18px 34px}.quiz-waiting-layout{flex-direction:column;gap:20px;max-width:320px;display:flex}.quiz-waiting-photos{width:min(100%,205px)}.quiz-waiting-photo-frame{border-radius:24px;transform:rotate(-1.5deg)}.quiz-waiting-photo-progress{margin-top:13px}.quiz-waiting-copy{text-align:center}.quiz-waiting-copy .live-game-waiting-simple .eyebrow{justify-content:center}.quiz-waiting-copy .live-game-waiting-simple h1{margin-top:12px;font-size:clamp(39px,11vw,50px)}}@media (prefers-reduced-motion:reduce){.quiz-waiting-photo,.quiz-waiting-photo-progress span{transition:none;animation:none!important}}.messages-page{max-width:1180px;padding-bottom:92px}.messages-hero{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.messages-hero>div:first-child{min-width:0}.messages-hero h1{margin:18px 0 14px}.messages-hero p{max-width:500px;margin:0}.messages-hero h1 em{color:var(--tint);font-style:italic}.messages-hero-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.messages-hero-actions .button{justify-content:center}.messages-profile-pill{background:var(--glass-clear,var(--surface-soft));border:.5px solid var(--glass-border,var(--border-soft));color:var(--label,var(--text-strong));border-radius:999px;align-items:center;gap:9px;min-height:44px;padding:5px 13px 5px 6px;display:inline-flex}.messages-profile-pill strong{font-size:12px}.messages-profile-avatar,.message-entry-avatar,.message-preview-avatar,.admin-message-avatar{background:var(--tint-soft,var(--blue-soft));color:var(--tint,var(--blue));border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:relative;overflow:hidden}.message-entry-avatar{width:42px;height:42px}.message-preview-avatar{width:62px;height:62px;margin-bottom:12px}.admin-message-avatar{width:42px;height:42px}.messages-profile-avatar .avatar-image,.message-entry-avatar .avatar-image,.message-preview-avatar .avatar-image,.admin-message-avatar .avatar-image{width:100%;height:100%}.message-tree-layout{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:16px;margin-top:28px;display:grid}.message-tree-card,.messages-wall{background:var(--glass-regular,var(--surface));border:.5px solid var(--glass-border,var(--border-soft));box-shadow:var(--glass-shadow,0 18px 45px #1f2b411f);border-radius:30px;min-width:0;padding:22px}.message-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:17px;display:flex}.message-section-heading h2{color:var(--label,var(--text-strong));letter-spacing:-.05em;margin:9px 0 0;font-size:clamp(24px,3vw,34px)}.message-count,.message-wall-mark{color:var(--tint,var(--blue));white-space:nowrap;font-size:12px;font-weight:700}.message-wall-mark{font-size:24px;line-height:1}.message-tree-stage{background:radial-gradient(circle at 20% 20%, #ffffffb3, transparent 34%), radial-gradient(circle at 80% 12%, var(--tint-soft,#147ef521), transparent 31%), linear-gradient(145deg, var(--surface-soft,#f8fafc), var(--glass-clear,#ffffff4d));border:.5px solid var(--glass-border,var(--border-soft));border-radius:24px;min-height:470px;position:relative;overflow:hidden}.theme-dark .message-tree-stage{background:radial-gradient(circle at 20% 20%,#ffffff14,#0000 34%),radial-gradient(circle at 80% 12%,#3d9bff29,#0000 31%),linear-gradient(145deg,#23181de6,#160f12eb)}.message-tree-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.message-tree-svg path{fill:none;opacity:.46;stroke:var(--tint,var(--blue));stroke-linecap:round;stroke-width:3px}.message-tree-leaves{position:absolute;inset:0}.tree-leaf{animation:message-leaf-in .56s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) var(--leaf-delay,0s) both;background:color-mix(in srgb, var(--tint,#147ef5) 12%, var(--surface,#fff));border:1px solid color-mix(in srgb, var(--tint,#147ef5) 38%, transparent);color:var(--tint,var(--blue));height:44px;left:var(--leaf-left);top:var(--leaf-top);transform:translate(-50%, -50%) rotate(var(--leaf-rotate)) scale(1);transition:background .22s var(--ease-apple), box-shadow .22s var(--ease-apple), transform .22s var(--ease-apple);border-radius:15px 15px 15px 3px;justify-content:center;align-items:center;width:44px;padding:0;display:inline-flex;position:absolute}.tree-leaf span{font-size:21px;line-height:1}.tree-leaf-heart{background:color-mix(in srgb, #f16f91 17%, var(--surface,#fff));color:#d25478;border-color:#f16f9175}.tree-leaf-flower{background:color-mix(in srgb, #a273d4 17%, var(--surface,#fff));color:#8050b4;border-color:#a273d46e}.tree-leaf.is-pending{opacity:.64;border-style:dashed}:is(.tree-leaf:hover,.tree-leaf:focus-visible){z-index:3;transform:translate(-50%,-50%)rotate(0)scale(1.16);box-shadow:0 10px 22px #1a2b4729}.tree-leaf-loading{background:var(--glass-clear,#ffffff4d);border-style:dashed;border-color:var(--glass-border,var(--border-soft));opacity:.68;animation:1.1s ease-in-out infinite alternate message-leaf-pulse}.tree-leaf-loading:after{content:"";opacity:.42;background:currentColor;border-radius:50%;width:7px;height:7px}.message-tree-root{background:var(--tint,var(--blue));border:6px solid var(--glass-regular,var(--surface));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:24px;display:inline-flex;position:absolute;bottom:19px;left:50%;transform:translate(-50%);box-shadow:0 8px 20px #1f2b412b}.message-tree-empty{color:var(--label-2,var(--text-soft));text-align:center;flex-direction:column;align-items:center;display:flex;position:absolute;inset:50% 24px auto;transform:translateY(-50%)}.message-tree-empty>span{color:var(--tint,var(--blue));margin-bottom:12px;font-size:30px}.message-tree-empty strong{color:var(--label,var(--text-strong));font-size:17px}.message-tree-empty small{margin-top:6px;font-size:12px}.message-tree-more{color:var(--label-2,var(--text-soft));text-align:center;margin-top:13px;font-size:11px;display:block}.messages-wall{flex-direction:column;min-height:100%;display:flex}.messages-wall-list{flex-direction:column;flex:1;gap:7px;display:flex}.message-entry-card{color:var(--label,var(--text-strong));text-align:left;min-width:0;transition:background .22s var(--ease-apple), border-color .22s var(--ease-apple), transform .22s var(--ease-apple);background:0 0;border:.5px solid #0000;border-radius:19px;align-items:center;gap:12px;width:100%;padding:11px;display:flex}:is(.message-entry-card:hover,.message-entry-card:focus-visible){background:var(--tint-soft,var(--blue-soft));border-color:color-mix(in srgb, var(--tint,#147ef5) 28%, transparent);transform:translateY(-2px)}.message-entry-card.is-pending{opacity:.72}.message-entry-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.message-entry-copy strong{font-size:13px}.message-entry-copy small{color:var(--label-2,var(--text-soft));font-size:10px}.message-entry-copy>span{color:var(--label-2,var(--text-soft));-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.message-entry-decoration{color:var(--tint,var(--blue));flex:none;font-size:20px}.messages-wall-empty{color:var(--label-2,var(--text-soft));text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:180px;display:flex}.messages-wall-empty strong{color:var(--label,var(--text-strong));font-size:15px}.messages-wall-empty span{margin-top:6px;font-size:11px}.messages-wall-loading{justify-content:center}.messages-wall-loading span{background:var(--tint-soft,var(--blue-soft));opacity:.7;border-radius:999px;height:52px;animation:1.3s ease-in-out infinite alternate message-loading-shimmer}.messages-wall-loading span:nth-child(2){width:90%;animation-delay:.16s}.messages-wall-loading span:nth-child(3){width:72%;animation-delay:.32s}.messages-profile-entry .messages-hero{display:block}.messages-profile-picker{max-width:820px;margin-top:28px}.message-composer-backdrop,.message-preview-backdrop{z-index:70;background:#0f121b7a;justify-content:center;align-items:center;padding:18px;animation:.2s both message-backdrop-in;display:flex;position:fixed;inset:0}.message-composer,.message-preview{animation:message-dialog-in .42s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;background:var(--paper,var(--surface));border:.5px solid var(--glass-border,var(--border-soft));box-shadow:0 28px 80px #0d121f40, var(--glass-shadow,none);color:var(--label,var(--text-strong));border-radius:28px;width:100%;max-width:630px;max-height:min(780px,100svh - 32px);padding:26px;position:relative;overflow:auto}.message-composer-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.message-composer-heading h2{color:var(--label,var(--text-strong));letter-spacing:-.06em;margin:10px 0 24px;font-size:32px;line-height:.96}.message-composer-heading h2 em{color:var(--tint,var(--blue));font-style:italic}.message-preview-close{background:var(--glass-clear,#ffffff4d);border:.5px solid var(--glass-border,var(--border-soft));color:var(--label-2,var(--text-soft));height:38px;transition:background .22s var(--ease-apple), color .22s var(--ease-apple), transform .22s var(--ease-apple);border-radius:50%;justify-content:center;align-items:center;width:38px;padding:0;display:inline-flex}.message-preview-close:hover{background:var(--tint-soft,var(--blue-soft));color:var(--tint,var(--blue));transform:rotate(5deg)scale(1.05)}.message-field{display:block;position:relative}.message-field>span,.message-option-group legend{color:var(--label,var(--text-strong));margin-bottom:8px;font-size:12px;font-weight:700;display:block}.message-field textarea{background:var(--surface-soft,#f8fafc);border:.5px solid var(--border-soft,var(--line));color:var(--label,var(--text-strong));resize:vertical;border-radius:17px;width:100%;min-height:112px;padding:14px 14px 30px;display:block}.message-field textarea::placeholder{color:var(--label-2,var(--muted))}.message-field textarea:focus{border-color:var(--tint,var(--blue));box-shadow:0 0 0 4px var(--tint-soft,var(--blue-soft));outline:none}.message-field>small{color:var(--label-2,var(--text-soft));font-size:10px;position:absolute;bottom:10px;right:12px}.message-option-group{border:0;margin:22px 0 0;padding:0}.message-decoration-options,.message-contribution-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.message-decoration-options button,.message-contribution-options button{background:var(--surface-soft,#f8fafc);border:.5px solid var(--border-soft,var(--line));color:var(--label-2,var(--text-soft));min-height:65px;transition:background .22s var(--ease-apple), border-color .22s var(--ease-apple), color .22s var(--ease-apple), transform .22s var(--ease-apple);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:8px;display:flex}.message-decoration-options button:hover,.message-contribution-options button:hover{transform:translateY(-2px)}.message-decoration-options button.selected,.message-contribution-options button.selected{background:var(--tint-soft,var(--blue-soft));border-color:var(--tint,var(--blue));color:var(--tint,var(--blue));box-shadow:0 7px 18px color-mix(in srgb, var(--tint,#147ef5) 16%, transparent)}.message-decoration-options button>span{font-size:24px;line-height:1}.message-decoration-options button small,.message-contribution-options button small{font-size:10px}.message-contribution-options{grid-template-columns:repeat(5,minmax(0,1fr))}.message-contribution-options button strong{font-size:17px}.message-contribution-note{color:var(--label-2,var(--text-soft));margin:10px 0 0;font-size:11px;line-height:1.4}.message-payment-methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.message-payment-methods>button{background:var(--surface-soft,#f8fafc);border:.5px solid var(--border-soft,var(--line));color:var(--label-2,var(--text-soft));text-align:left;min-height:72px;transition:background .22s var(--ease-apple), border-color .22s var(--ease-apple), box-shadow .22s var(--ease-apple), color .22s var(--ease-apple), transform .22s var(--ease-apple);border-radius:17px;align-items:center;gap:11px;padding:12px;display:flex}.message-payment-methods>button:hover{transform:translateY(-2px)}.message-payment-methods>button.selected{background:var(--tint-soft,var(--blue-soft));border-color:var(--tint,var(--blue));box-shadow:0 9px 22px color-mix(in srgb, var(--tint,#147ef5) 15%, transparent);color:var(--tint,var(--blue))}.message-payment-methods>button>span:last-child{flex-direction:column;gap:2px;min-width:0;display:flex}.message-payment-methods strong{color:var(--label,var(--text-strong));font-size:12px}.message-payment-methods small{font-size:10px;line-height:1.25}.message-payment-method-icon{background:var(--paper,var(--surface));border:.5px solid var(--border-soft,var(--line));border-radius:12px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:11px;font-weight:900;display:inline-flex}.message-payment-methods>button.selected .message-payment-method-icon{background:var(--tint,var(--blue));color:#fff;border-color:#0000}.message-in-person-note{animation:message-payment-in .32s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;background:linear-gradient(135deg, color-mix(in srgb, var(--tint,#c95f7c) 11%, var(--paper,#fff)), var(--paper,#fff));border:.5px solid color-mix(in srgb, var(--tint,#c95f7c) 28%, transparent);border-radius:17px;align-items:center;gap:12px;margin-top:12px;padding:14px;display:flex}.message-in-person-note>span:first-child{background:var(--tint,var(--blue));color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.message-in-person-note>span:last-child{flex-direction:column;gap:3px;display:flex}.message-in-person-note strong{color:var(--label,var(--text-strong));font-size:12px}.message-in-person-note small{color:var(--label-2,var(--text-soft));font-size:10px;line-height:1.35}.message-custom-contribution-choice strong{font-size:14px!important}.message-custom-amount{animation:message-payment-in .32s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;background:var(--surface-soft,#f8fafc);border:.5px solid var(--border-soft,var(--line));border-radius:17px;justify-content:space-between;align-items:center;gap:14px;margin-top:10px;padding:12px 14px;display:flex}.message-custom-amount label{flex-direction:column;gap:3px;display:flex}.message-custom-amount label strong{color:var(--label,var(--text-strong));font-size:12px}.message-custom-amount label small{color:var(--label-2,var(--text-soft));font-size:10px}.message-custom-amount-input{background:var(--paper,var(--surface));border:.5px solid var(--border-soft,var(--line));color:var(--tint,var(--blue));border-radius:13px;flex:none;align-items:center;gap:4px;min-width:112px;padding:3px 10px;font-weight:800;display:flex}.message-custom-amount-input:focus-within{border-color:var(--tint,var(--blue));box-shadow:0 0 0 4px var(--tint-soft,var(--blue-soft))}.message-custom-amount-input input{-webkit-appearance:textfield;appearance:textfield;color:var(--label,var(--text-strong));text-align:right;background:0 0;border:0;outline:0;width:70px;min-width:0;padding:7px 0;font-size:20px;font-weight:800}.message-custom-amount-input input::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}.message-custom-amount-input input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.message-payment-card{animation:message-payment-in .36s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;background:linear-gradient(135deg, color-mix(in srgb, var(--tint,#c95f7c) 13%, var(--paper,#fff)), color-mix(in srgb, #fff 88%, var(--tint,#c95f7c)));border:.5px solid color-mix(in srgb, var(--tint,#c95f7c) 34%, transparent);border-radius:19px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-top:12px;padding:13px;display:grid}.message-payment-mark{background:var(--tint,var(--blue));box-shadow:0 8px 20px color-mix(in srgb, var(--tint,#c95f7c) 24%, transparent);color:#fff;letter-spacing:.04em;border-radius:13px;justify-content:center;align-items:center;width:42px;height:42px;font-size:11px;font-weight:900;display:inline-flex}.message-payment-copy{flex-direction:column;min-width:0;display:flex}.message-payment-copy small{color:var(--label-2,var(--text-soft));font-size:10px;font-weight:700}.message-payment-copy strong{color:var(--label,var(--text-strong));letter-spacing:.02em;font-size:20px;line-height:1.15}.message-payment-copy>span{color:var(--label-2,var(--text-soft));margin-top:3px;font-size:10px}.message-payment-card>button{background:var(--paper,var(--surface));border:.5px solid var(--border-soft,var(--line));color:var(--tint,var(--blue));min-height:38px;transition:background .2s var(--ease-apple), color .2s var(--ease-apple), transform .2s var(--ease-apple);border-radius:999px;padding:0 13px;font-size:10px;font-weight:800}.message-payment-card>button:hover{background:var(--tint,var(--blue));color:#fff;transform:translateY(-1px)}.message-composer-actions{justify-content:flex-end;gap:9px;margin-top:25px;display:flex}.message-composer-actions .button{justify-content:center}.message-preview{text-align:center;max-width:420px;padding:28px}.message-preview-close{position:absolute;top:15px;right:15px}.message-preview-avatar{margin-left:auto;margin-right:auto}.message-preview .eyebrow{justify-content:center}.message-preview .eyebrow:before{display:none}.message-preview blockquote{color:var(--label,var(--text-strong));font-family:var(--serif);margin:14px 0 18px;font-size:27px;line-height:1.05}.message-preview>strong{color:var(--label-2,var(--text-soft));font-size:12px}.message-preview-status{color:var(--label-2,var(--text-soft));max-width:250px;margin:12px auto 0;font-size:11px;line-height:1.4;display:block}.admin-messages-panel{margin-top:28px}.admin-message-list{flex-direction:column;gap:8px;display:flex}.admin-message-row{background:var(--surface-soft,var(--bg-cell));border:.5px solid var(--border-soft,var(--line));border-radius:18px;align-items:center;gap:12px;min-width:0;padding:13px;display:flex}.admin-message-row.pending_payment{border-color:#f2a85c6b}.admin-message-copy{flex:1;min-width:0}.admin-message-copy>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-message-copy strong{color:var(--label,var(--text-strong));font-size:13px}.admin-message-copy p{color:var(--label-2,var(--text-soft));overflow-wrap:anywhere;margin:5px 0;font-size:12px;line-height:1.35}.admin-message-copy>small{color:var(--label-2,var(--text-soft));font-size:10px;display:block}.message-status{border-radius:999px;padding:4px 7px;font-size:9px}.status-pending_payment{color:#b7651b;background:#f2a85c26}.status-published{color:#27884a;background:#34c7591f}.status-hidden,.status-rejected{color:#ba4e49;background:#d65d591c}.admin-message-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.admin-message-actions .button{justify-content:center}.theme-dark .status-pending_payment{color:#ffc47f}.theme-dark .status-published{color:#8fe0ac}.theme-dark .status-hidden,.theme-dark .status-rejected{color:#ffaaa5}@keyframes message-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes message-dialog-in{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes message-leaf-in{0%{opacity:0;transform:translate(-50%,-40%)rotate(0)scale(.5)}to{opacity:1;transform:translate(-50%, -50%) rotate(var(--leaf-rotate)) scale(1)}}@keyframes message-leaf-pulse{0%{opacity:.28;transform:translate(-50%,-50%)scale(.88)}to{opacity:.78;transform:translate(-50%,-50%)scale(1)}}@keyframes message-loading-shimmer{0%{opacity:.25;transform:translate(-2%)}to{opacity:.7;transform:translate(2%)}}@keyframes message-payment-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:900px){.message-tree-layout{grid-template-columns:1fr}.messages-wall{min-height:300px}}@media (max-width:720px){.messages-page{padding-bottom:38px}.messages-hero{flex-direction:column;align-items:flex-start;gap:20px}.messages-hero-actions{justify-content:flex-start;width:100%}.messages-hero-actions .button{flex:210px}.messages-profile-pill{flex:none}.message-tree-layout{margin-top:20px}.message-tree-card,.messages-wall{border-radius:24px;padding:15px}.message-tree-stage{min-height:380px}.tree-leaf{width:38px;height:38px}.tree-leaf span{font-size:18px}.message-tree-root{width:60px;height:60px;bottom:14px}.message-composer-backdrop{align-items:stretch;height:100dvh;padding:0}.message-composer{overscroll-behavior:contain;max-width:none;height:100dvh;max-height:100dvh;padding:max(20px, env(safe-area-inset-top)) 16px max(20px, env(safe-area-inset-bottom));scroll-padding-bottom:max(20px, env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;border:0;border-radius:0;width:100vw}.message-preview{border-radius:24px;padding:20px 16px}.message-composer-heading h2{margin-bottom:19px;font-size:29px}.message-decoration-options{grid-template-columns:repeat(3,minmax(0,1fr))}.message-payment-methods{grid-template-columns:1fr}.message-field textarea{min-height:102px}.message-custom-amount{flex-direction:column;align-items:stretch;gap:10px}.message-custom-amount-input{justify-content:flex-end;width:100%;min-height:58px}.message-custom-amount-input input{text-align:left;flex:1;width:100%;font-size:25px}.message-payment-card{grid-template-columns:auto 1fr}.message-payment-card>button{grid-column:1/-1;width:100%}.message-composer-actions{flex-direction:column-reverse}.message-composer-actions .button{width:100%}.admin-message-row{flex-wrap:wrap;align-items:flex-start}.admin-message-actions{width:calc(100% - 54px);margin-left:54px}.admin-message-actions .button{flex:130px}}@media (prefers-reduced-motion:reduce){.tree-leaf,.tree-leaf-loading,.message-composer-backdrop,.message-preview-backdrop,.message-composer,.message-preview,.messages-wall-loading span,.message-custom-amount,.message-payment-card,.message-in-person-note{transition:none!important;animation:none!important}}.wedding-app[data-view=home] .home-menu-screen{box-sizing:border-box}@media (min-width:721px){.wedding-app[data-view=home] .home-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1500px){.wedding-app[data-view=home] .home-menu-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:720px){.wedding-app[data-view=home] .home-menu-screen{min-height:100svh;padding:max(16px, env(safe-area-inset-top)) 14px max(16px, env(safe-area-inset-bottom))}.wedding-app[data-view=home] .home-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.wedding-app[data-view=home] .home-menu-card{min-height:124px;padding:11px}.wedding-app[data-view=home] .home-menu-icon{width:36px;height:36px}.wedding-app[data-view=home] .home-menu-card-copy{gap:3px;padding-top:9px}.wedding-app[data-view=home] .home-menu-card-copy strong{font-size:clamp(12px,3.9vw,16px);line-height:1.05}.wedding-app[data-view=home] .home-menu-card-copy small{font-size:clamp(8px,2.4vw,10px);line-height:1.2}.wedding-app[data-view=home] .home-menu-arrow{font-size:17px;top:9px;right:9px}}@media (max-width:350px){.wedding-app[data-view=home] .home-menu-screen{padding-inline:10px}.wedding-app[data-view=home] .home-menu-grid{gap:7px}.wedding-app[data-view=home] .home-menu-card{padding:9px}.wedding-app[data-view=home] .home-menu-icon{width:32px;height:32px}.wedding-app[data-view=home] .home-menu-card-copy{padding-top:7px}}.wedding-app[data-view=mario] .app-layout{min-height:calc(100svh - 74px);display:block}.wedding-app[data-view=mario] .app-sidebar,.wedding-app[data-view=mario] .mobile-page-title,.wedding-app[data-view=mario] .mobile-bottom-nav,.wedding-app[data-view=mario]>.app-layout>.app-content>.demo-notice{display:none!important}.wedding-app[data-view=mario] .app-content{max-width:none;padding:0}.wedding-app[data-view=mario] .view-stage{min-height:calc(100svh - 74px)}.mario-profile-entry{max-width:820px;margin:0 auto}.mario-profile-entry .profile-picker{margin-top:0}.message-tree-card{background:linear-gradient(145deg, var(--glass-regular,var(--surface)), color-mix(in srgb, var(--tint-soft,var(--blue-soft)) 18%, var(--glass-regular,var(--surface))))}.messages-wall{background:linear-gradient(160deg, var(--glass-regular,var(--surface)), color-mix(in srgb, var(--surface-soft,#f8fafc) 72%, var(--glass-regular,var(--surface))))}.message-tree-stage-3d{background:radial-gradient(circle at 50% 10%, #ffffffd1, transparent 25%), radial-gradient(circle at 12% 70%, color-mix(in srgb, var(--tint,var(--blue)) 12%, transparent), transparent 30%), linear-gradient(155deg, color-mix(in srgb, var(--surface-soft,#f8fafc) 85%, white), var(--glass-clear,#ffffff3d));isolation:isolate;perspective:1100px;min-height:clamp(470px,42vw,580px);transform-style:preserve-3d}.theme-dark .message-tree-stage-3d{background:radial-gradient(circle at 50% 8%,#ffbdc71f,#0000 26%),radial-gradient(circle at 12% 70%,#63abff24,#0000 31%),linear-gradient(155deg,#301e26f5,#140e13fa)}.message-tree-stage-3d:before{content:"";opacity:.28;pointer-events:none;z-index:0;background-image:linear-gradient(#ffffff1f 1px,#0000 1px),linear-gradient(90deg,#ffffff1f 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#00000057,#0000 63%);mask-image:linear-gradient(#00000057,#0000 63%)}.message-tree-stage-3d:after{border-radius:inherit;content:"";pointer-events:none;z-index:5;border:1px solid #ffffff3d;position:absolute;inset:0;box-shadow:inset 0 -80px 100px #2c162314,inset 0 1px #ffffff85}.theme-dark .message-tree-stage-3d:after{border-color:#ffebf029;box-shadow:inset 0 -80px 100px #0003,inset 0 1px #ffffff1f}.message-tree-sky{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.message-tree-sky span{background:radial-gradient(circle, color-mix(in srgb, var(--tint,var(--blue)) 65%, white), transparent 70%);opacity:.24;border-radius:50%;width:8px;height:8px;animation:6s ease-in-out infinite message-tree-light-float;position:absolute}.message-tree-sky span:first-child{top:20%;left:13%}.message-tree-sky span:nth-child(2){width:5px;height:5px;animation-delay:-1.8s;top:28%;right:18%}.message-tree-sky span:nth-child(3){width:6px;height:6px;animation-delay:-3.2s;top:11%;left:29%}.message-tree-sky span:nth-child(4){animation-delay:-4.4s;top:15%;right:30%}.message-tree-sky span:nth-child(5){width:5px;height:5px;animation-delay:-2.4s;bottom:31%;right:10%}.message-tree-canopy{pointer-events:none;height:46%;transform-style:preserve-3d;z-index:1;width:74%;position:absolute;top:4%;left:13%;transform:translateZ(-70px)rotateX(7deg)rotateY(-8deg)}.tree-canopy-orb{background:radial-gradient(circle at 31% 27%, #ffe9ebfa 0 7%, color-mix(in srgb, var(--tint,var(--blue)) 58%, white) 26%, color-mix(in srgb, var(--tint,var(--blue)) 35%, #1c5d8c) 66%, #2c1f3fb8 100%);transform:translateZ(var(--orb-depth,0px));border:1px solid #ffffff4d;border-radius:50%;display:block;position:absolute;box-shadow:inset -17px -22px 24px #1f2a5233,inset 10px 8px 15px #fff3,0 25px 32px #2b2f5924}.tree-canopy-orb:after{content:"";opacity:.45;background:radial-gradient(circle,#fff9,#0000 67%);border-radius:50%;width:35%;height:35%;position:absolute;top:15%;left:22%}.tree-canopy-orb.orb-one{width:33%;height:44%;top:36%;left:3%}.tree-canopy-orb.orb-two{--orb-depth:22px;width:41%;height:58%;top:5%;left:20%}.tree-canopy-orb.orb-three{--orb-depth:12px;width:37%;height:50%;top:28%;right:5%}.tree-canopy-orb.orb-four{--orb-depth:34px;width:34%;height:40%;bottom:1%;left:38%}.tree-canopy-orb.orb-five{--orb-depth:14px;width:25%;height:30%;top:4%;right:1%}.message-tree-ground{pointer-events:none;z-index:1;width:74%;height:93px;position:absolute;bottom:11px;left:13%;transform:translateZ(-15px)rotateX(63deg)}.message-tree-ground:before{content:"";background:radial-gradient(#41253a40,#0000 69%);position:absolute;inset:15% 6%}.message-tree-ground span{background:radial-gradient(ellipse at 32% 28%, #ffffff85, color-mix(in srgb, var(--tint,var(--blue)) 34%, transparent) 45%, #3a1f3529 74%, transparent 75%);border:1px solid #ffffff4d;border-radius:50%;position:absolute;inset:18% 8%}.message-tree-svg{filter:url(#message-tree-svg-shadow);transform-origin:50% 92%;z-index:2;transform:translateZ(8px)rotateY(-5deg)scale(1.035)}.message-tree-svg-floor{fill:#33193021;stroke:none!important}.message-tree-svg-trunk-shadow{filter:blur(4px);transform:translate(8px,8px);fill:none!important;opacity:.2!important;stroke:#2e1d2d!important;stroke-width:48px!important}.message-tree-svg-trunk-back{stroke-linecap:round;fill:none!important;opacity:.95!important;stroke:#4c3039!important;stroke-width:43px!important}.message-tree-svg-trunk{stroke-linecap:round;fill:none!important;opacity:1!important;stroke:url(#message-tree-trunk-gradient)!important;stroke-width:31px!important}.message-tree-svg-trunk-highlight{stroke-linecap:round;fill:none!important;opacity:.55!important;stroke:#ffdddfcc!important;stroke-width:6px!important}.message-tree-svg-branches path{stroke-linecap:round;fill:none!important;opacity:.98!important;stroke:url(#message-tree-branch-gradient)!important;stroke-width:18px!important}.message-tree-leaves{pointer-events:none;transform-style:preserve-3d;z-index:3;position:absolute;inset:0;transform:translateZ(35px)}.message-tree-leaves .tree-leaf{pointer-events:auto}.tree-leaf{animation:message-leaf-in-3d .56s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) var(--leaf-delay,0s) both;background:linear-gradient(145deg, #ffffff9e, color-mix(in srgb, var(--tint,#147ef5) 19%, var(--surface,#fff)) 43%, color-mix(in srgb, var(--tint,#147ef5) 31%, #6a4760));transform:translate3d(-50%, -50%, var(--leaf-depth,18px)) rotateZ(var(--leaf-rotate)) rotateX(0deg) scale(1);transform-style:preserve-3d;border-color:#ffffff80;box-shadow:inset 6px 6px 8px #ffffff40,inset -7px -9px 11px #301e432e,0 13px 20px #331f432b}.tree-leaf:before{border-radius:inherit;content:"";opacity:.64;pointer-events:none;background:linear-gradient(130deg,#ffffffb3,#0000 52%);position:absolute;inset:2px}.tree-leaf:after{content:"";filter:blur(4px);pointer-events:none;z-index:-1;background:#522a462e;border-radius:50%;width:70%;height:9px;position:absolute;bottom:-7px;left:15%;transform:rotate(-18deg)}.tree-leaf span{filter:drop-shadow(0 1px 1px #ffffff57);z-index:1;position:relative}.tree-leaf-heart{background:linear-gradient(145deg,#ffedf1b8,#ee9aaa 49%,#a65473)}.tree-leaf-flower{background:linear-gradient(145deg,#fff5ffb3,#b48ed9 48%,#6e4a9f)}.tree-leaf.is-pending{opacity:.68;box-shadow:inset 6px 6px 8px #ffffff29,inset -7px -9px 11px #301e432e,0 13px 20px #331f431c}:is(.tree-leaf:hover,.tree-leaf:focus-visible){transform:translate3d(-50%, -50%, calc(var(--leaf-depth,18px) + 18px)) rotateZ(0deg) rotateX(-8deg) scale(1.16);box-shadow:inset 7px 7px 10px #ffffff4d,inset -8px -10px 13px #301e4333,0 18px 29px #331f4340}.tree-leaf:active{transform:translate3d(-50%, -50%, calc(var(--leaf-depth,18px) + 8px)) rotateZ(0deg) scale(.98)}.tree-leaf-loading{background:linear-gradient(145deg,#ffffff6e,#a57ea338);animation:1.1s ease-in-out infinite alternate message-leaf-pulse-3d}.message-tree-root{z-index:4;background:linear-gradient(145deg,#f4bcc6 0%,#c56680 48%,#63364e 100%);border-color:#ffffffb8;flex-direction:column;gap:1px;width:78px;height:78px;bottom:18px;transform:translate(-50%)translateZ(52px)rotateX(7deg);box-shadow:inset 7px 6px 8px #ffffff40,inset -8px -9px 11px #30172f40,0 17px 26px #30183140}.message-tree-root:before{content:"";border:1px solid #fff6;border-radius:50%;position:absolute;inset:5px}.message-tree-root>span{filter:drop-shadow(0 2px 2px #47172e3d);font-size:23px;line-height:1;position:relative}.message-tree-root small{color:#ffffffc7;letter-spacing:.1em;text-transform:uppercase;font-size:8px;position:relative}.message-tree-more{position:relative}@keyframes message-tree-light-float{0%,to{opacity:.16;transform:translate(0,0)scale(.8)}50%{opacity:.46;transform:translateY(-9px)scale(1.15)}}@keyframes message-leaf-in-3d{0%{opacity:0;transform:translate(-50%,-42%)rotate(0)rotateX(54deg)scale(.45)}to{opacity:1;transform:translate3d(-50%, -50%, var(--leaf-depth,18px)) rotateZ(var(--leaf-rotate)) rotateX(0deg) scale(1)}}@keyframes message-leaf-pulse-3d{0%{opacity:.25;transform:translate(-50%,-50%)rotateX(15deg)scale(.88)}to{opacity:.78;transform:translate3d(-50%,-50%,22px)rotateX(0)scale(1)}}@media (max-width:720px){.message-tree-stage-3d{min-height:390px}.message-tree-canopy{width:84%;height:43%;top:5%;left:8%}.message-tree-ground{width:84%;left:8%}.message-tree-svg{transform:translateZ(8px)rotateY(-4deg)scale(1.04)}.message-tree-root{width:65px;height:65px;bottom:14px;transform:translate(-50%)translateZ(40px)rotateX(7deg)}.message-tree-root>span{font-size:20px}.message-tree-root small{font-size:7px}.tree-leaf{box-shadow:inset 5px 5px 7px #ffffff40,inset -6px -7px 9px #301e432e,0 9px 15px #331f4329}}@media (max-width:360px){.message-tree-stage-3d{min-height:350px}.message-tree-root{width:58px;height:58px;bottom:12px}.message-tree-root small{display:none}}@media (prefers-reduced-motion:reduce){.message-tree-sky span,.message-tree-stage-3d .tree-leaf,.message-tree-root{transition:none!important;animation:none!important}.message-tree-stage-3d .tree-leaf{transform:translate3d(-50%, -50%, var(--leaf-depth,18px)) rotateZ(var(--leaf-rotate)) scale(1)}}@media (max-width:720px){.messages-page{padding-bottom:104px}.message-tree-stage-3d{min-height:340px}}@media (max-width:360px){.message-tree-stage-3d{min-height:320px}}.wedding-app[data-view=messages] .app-layout{min-height:calc(100svh - 82px);display:block}.wedding-app[data-view=messages] .app-sidebar,.wedding-app[data-view=messages] .mobile-page-title,.wedding-app[data-view=messages] .mobile-bottom-nav{display:none!important}.wedding-app[data-view=messages] .app-content{max-width:none;padding:0}.wedding-app[data-view=messages] .view-stage{min-height:calc(100svh - 82px)}.wedding-app[data-view=messages] .messages-page{box-sizing:border-box;max-width:none;min-height:calc(100svh - 82px);padding:26px clamp(24px,4vw,64px) 32px}@media (min-width:721px){.wedding-app[data-view=messages] .messages-hero{min-height:104px}.wedding-app[data-view=messages] .messages-hero h1{margin:12px 0 10px;font-size:clamp(46px,5vw,72px)}.wedding-app[data-view=messages] .message-tree-layout{grid-template-columns:minmax(0,1fr) minmax(330px,390px);min-height:calc(100svh - 236px);margin-top:20px}.wedding-app[data-view=messages] .message-tree-card,.wedding-app[data-view=messages] .messages-wall{min-height:calc(100svh - 236px)}.wedding-app[data-view=messages] .message-tree-card{padding:24px}.wedding-app[data-view=messages] .message-tree-stage-3d{height:calc(100svh - 356px);min-height:520px}.wedding-app[data-view=messages] .messages-wall{max-height:calc(100svh - 236px);overflow:auto}}@media (max-width:720px){.wedding-app[data-view=messages] .app-layout,.wedding-app[data-view=messages] .view-stage,.wedding-app[data-view=messages] .messages-page{min-height:calc(100svh - 64px)}.wedding-app[data-view=messages] .messages-page{padding:18px 12px 28px}.wedding-app[data-view=messages] .messages-hero{gap:14px}.wedding-app[data-view=messages] .messages-hero h1{margin:10px 0 8px;font-size:clamp(42px,12vw,58px)}.wedding-app[data-view=messages] .messages-hero p{max-width:330px;font-size:14px}.wedding-app[data-view=messages] .messages-hero-actions{gap:8px;width:100%}.wedding-app[data-view=messages] .messages-hero-actions .button{flex:1 1 0;min-width:0}.wedding-app[data-view=messages] .message-tree-layout{gap:14px;margin-top:16px}.wedding-app[data-view=messages] .message-tree-card,.wedding-app[data-view=messages] .messages-wall{padding:14px}.wedding-app[data-view=messages] .message-tree-stage-3d{height:max(390px,100svh - 360px);min-height:max(390px,100svh - 360px)}.wedding-app[data-view=messages] .messages-wall{min-height:260px}}@media (max-width:360px){.wedding-app[data-view=messages] .messages-page{padding-left:10px;padding-right:10px}.wedding-app[data-view=messages] .message-tree-stage-3d{height:max(360px,100svh - 350px);min-height:max(360px,100svh - 350px)}}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry){min-height:calc(100svh - 82px);padding:0;position:relative}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero{pointer-events:none;z-index:12;align-items:flex-start;position:absolute;top:clamp(24px,4vw,48px);left:clamp(24px,6vw,86px);right:clamp(24px,6vw,86px)}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero>div:first-child{max-width:560px}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero h1{margin:12px 0 10px;font-size:clamp(46px,5vw,76px)}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero p{max-width:470px}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero-actions{pointer-events:auto;position:absolute;top:5px;right:0}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .message-tree-layout{min-height:calc(100svh - 82px);margin-top:0;display:block}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .message-tree-card{border-left:0;border-right:0;border-radius:0;height:calc(100svh - 82px);min-height:calc(100svh - 82px);padding:0;position:relative;overflow:hidden}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .message-tree-card>.message-section-heading{display:none}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .message-tree-stage-3d{border:0;border-radius:0;height:100%;min-height:0}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .message-tree-more{display:none}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-wall{max-width:1180px;min-height:300px;max-height:none;margin:18px auto 34px;overflow:visible}.wedding-app[data-view=messages] .messages-page.messages-profile-entry{max-width:1180px;margin:0 auto;padding:62px 0 74px}.wedding-app[data-view=messages] .messages-page.messages-profile-entry .messages-hero{align-items:flex-start;display:block;position:static}@media (max-width:720px){.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry){min-height:calc(100svh - 64px)}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero{gap:14px;top:20px;left:16px;right:16px}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero h1{margin:10px 0 8px;font-size:clamp(42px,12vw,58px)}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero p{max-width:330px;font-size:14px}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero-actions{gap:8px;width:100%;position:static}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero-actions .button{flex:1 1 0;min-width:0}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .message-tree-layout{min-height:calc(100svh - 64px)}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .message-tree-card{height:calc(100svh - 64px);min-height:calc(100svh - 64px)}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-wall{margin:14px 12px 28px}.wedding-app[data-view=messages] .messages-page.messages-profile-entry{padding:38px 16px 52px}}@media (max-width:360px){.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero{left:12px;right:12px}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-wall{margin-left:10px;margin-right:10px}}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero>div:first-child{background:color-mix(in srgb, var(--bg,#fff) 70%, transparent);border:.5px solid var(--glass-border,#ffffff47);-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);border-radius:24px;padding:14px 18px 16px;box-shadow:0 14px 34px #1b121f1f,inset 0 1px #fff3}.theme-dark .wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero>div:first-child{background:#1b1218a8;border-color:#ffebf029;box-shadow:0 14px 34px #0003,inset 0 1px #ffffff17}@media (max-width:720px){.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero>div:first-child{border-radius:21px;width:100%;padding:12px 14px 14px}}.wedding-app[data-view=messages] .message-tree-card{background:#150d12;box-shadow:0 28px 90px #230f1940}.wedding-app[data-view=messages] .message-tree-stage-3d,.wedding-app[data-view=messages].theme-dark .message-tree-stage-3d{isolation:isolate;perspective:none;background:#150d12}.wedding-app[data-view=messages] .message-tree-stage-3d:before{opacity:1;z-index:2;background-color:#0000;background-image:linear-gradient(90deg,#0f070cad 0%,#0f070c57 31%,#0000 58%),linear-gradient(#0e070b14 55%,#0e070b75 100%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:auto;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;inset:0;-webkit-mask-image:none;mask-image:none}.wedding-app[data-view=messages] .message-tree-stage-3d:after{border-radius:inherit;z-index:7;border-color:#ffe2e12e;box-shadow:inset 0 1px #ffffff1a,inset 0 -100px 130px #0e070b2e}.message-tree-art{pointer-events:none;z-index:0;display:block;position:absolute;inset:0;overflow:hidden}.message-tree-image{object-fit:cover;object-position:center;transform-origin:58% 68%;width:100%;height:100%;animation:1.15s cubic-bezier(.22,.8,.26,1) both message-tree-image-in,14s ease-in-out 1.15s infinite alternate message-tree-image-breathe;display:block}.wedding-app[data-view=messages] .message-tree-sky{z-index:3}.wedding-app[data-view=messages] .message-tree-sky span{opacity:.7;background:radial-gradient(circle,#ffe7b9f2,#ffb99a40 45%,#0000 72%);box-shadow:0 0 12px #ffcda76b}.wedding-app[data-view=messages] .message-tree-leaves{pointer-events:none;z-index:4;inset:3% 2% 12% 23%;transform:none}.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf{animation:message-keepsake-in .64s cubic-bezier(.22, .8, .26, 1) var(--leaf-delay,0s) both;color:#fff9f4;height:43px;transform:translate3d(-50%, -50%, 0) rotate(var(--leaf-rotate));background:radial-gradient(circle at 30% 23%,#ffffffeb,#f4b4b7eb 35%,#a34d69f5 78%);border:1px solid #fff4eeb8;border-radius:50% 50% 50% 12px;width:43px;box-shadow:inset 4px 4px 7px #ffffff3d,inset -6px -8px 10px #4d1c302e,0 10px 24px #27101c59,0 0 0 5px #ffcac814}.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf:before{opacity:.72;background:linear-gradient(135deg,#ffffffc7,#0000 50%);inset:3px}.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf:after{filter:blur(5px);background:#1c0a1347;bottom:-7px}.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf-heart{background:radial-gradient(circle at 30% 23%,#fff8f5,#ef9cae 38%,#ad4c72 82%)}.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf-flower{background:radial-gradient(circle at 30% 23%,#fffdf8,#e8c392 36%,#b77b63 82%)}:is(.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf:hover,.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf:focus-visible){transform:translate3d(-50%,-50%,26px)rotate(0)scale(1.16);box-shadow:inset 4px 4px 7px #ffffff4d,inset -6px -8px 10px #4d1c302e,0 16px 34px #27101c75,0 0 0 7px #ffdcce29}.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf:active{transform:translate3d(-50%,-50%,12px)rotate(0)scale(.97)}.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf-loading{background:#ffe2da33;border-color:#ffece666;animation:1.2s ease-in-out infinite alternate message-keepsake-loading}.wedding-app[data-view=messages] .message-tree-empty{color:#fff4efc2;bottom:30px;z-index:5;-webkit-backdrop-filter:blur(14px)saturate(130%);backdrop-filter:blur(14px)saturate(130%);background:#190c139e;border:.5px solid #ffe1da38;border-radius:22px;width:min(330px,100% - 32px);padding:16px 22px;inset:auto auto 30px 50%;transform:translate(-50%);box-shadow:0 16px 38px #0f050a40}.wedding-app[data-view=messages] .message-tree-empty>span{color:#ef9aae;margin-bottom:7px;font-size:21px}.wedding-app[data-view=messages] .message-tree-empty strong{color:#fff9f5}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero>div:first-child{background:linear-gradient(145deg,#160a11bf,#23111b85);border-color:#ffe1da38;box-shadow:0 18px 48px #0c04084d,inset 0 1px #ffffff1a}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero .eyebrow,.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero h1,.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero p{color:#fff8f5}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero h1 em{color:#f3a2b2}.wedding-app[data-view=messages] .messages-page:not(.messages-profile-entry) .messages-hero p{color:#fff4efb8}.wedding-app[data-view=messages] .messages-profile-pill{color:#fff8f5;-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);background:#1b0d1594;border-color:#ffe4de3d}@keyframes message-tree-image-in{0%{filter:saturate(.82)brightness(.76);opacity:0;transform:scale(1.045)}to{filter:saturate()brightness();opacity:1;transform:scale(1)}}@keyframes message-tree-image-breathe{0%{transform:scale(1)}to{transform:scale(1.018)}}@keyframes message-keepsake-in{0%{opacity:0;transform:translate(-50%,-38%)rotate(0)scale(.42)}to{opacity:1;transform:translate3d(-50%, -50%, 0) rotate(var(--leaf-rotate)) scale(1)}}@keyframes message-keepsake-loading{0%{opacity:.3;transform:translate(-50%,-50%)scale(.82)}to{opacity:.78;transform:translate(-50%,-50%)scale(1)}}@media (max-width:720px){.wedding-app[data-view=messages] .message-tree-stage-3d:before{background:linear-gradient(#0f070c8f 0%,#0f070c1f 46%,#0f070c70 100%)}.wedding-app[data-view=messages] .message-tree-image{object-position:center}.wedding-app[data-view=messages] .message-tree-leaves{inset:28% 3% 8%}.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf{width:38px;height:38px}.wedding-app[data-view=messages] .message-tree-empty{bottom:22px}}@media (prefers-reduced-motion:reduce){.message-tree-image,.wedding-app[data-view=messages] .message-tree-leaves .tree-leaf,.wedding-app[data-view=messages] .message-tree-sky span{transition:none!important;animation:none!important}}@media (max-width:720px){.wedding-app :where(button,a.button):not(:disabled){transition:background-color .18s ease, border-color .18s ease, color .18s ease, opacity .18s ease, transform .18s var(--ease-apple,cubic-bezier(.22, .8, .26, 1));will-change:auto}.wedding-app :where(.home-menu-card,.action-card,.feature-card,.challenge-card,.media-tile,.memory-card,.admin-activity-card,.profile-card){will-change:auto}.wedding-app .challenge-grid .challenge-card{contain-intrinsic-size:226px;content-visibility:auto}.wedding-app .app-topbar:before,.wedding-app .mobile-bottom-nav,.wedding-app .gallery-photo-only .gallery-photo-nav,.wedding-app .gallery-photo-only .gallery-tools,.wedding-app :where(.glass,.glass-card,.glass-pill,.glass-toolbar,.glass-navigation,.glass-modal,.glass-sheet,.glass-button){-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%)}}.admin-gallery-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.admin-gallery-heading .panel-heading{flex:1;margin-bottom:0}.admin-gallery-type-summary{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.admin-gallery-type-summary span{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--label-2);border-radius:999px;align-items:center;gap:5px;padding:7px 9px;font-size:10px;display:inline-flex}.admin-gallery-type-summary svg{color:var(--tint)}.admin-gallery-controls{background:var(--bg-2);border:.5px solid var(--glass-border);border-radius:18px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;margin:0 0 12px;padding:8px;display:grid}.admin-gallery-select-all{flex-wrap:wrap;align-items:center;gap:9px;min-width:0;display:flex}.admin-gallery-checkbox,.moderation-select-control{color:var(--label);cursor:pointer;align-items:center;gap:9px;min-height:36px;display:inline-flex}.admin-gallery-checkbox input,.moderation-select-control input{opacity:0;pointer-events:none;position:absolute}.admin-gallery-checkbox>span,.moderation-select-control>span{background:var(--glass-regular);border:1px solid var(--glass-border);border-radius:8px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.admin-gallery-checkbox>span:after,.moderation-select-control>span:after{content:"";border-bottom:2px solid #0000;border-right:2px solid #0000;width:5px;height:10px;transform:rotate(45deg)translate(-1px,-1px)}.admin-gallery-checkbox input:checked+span,.moderation-select-control input:checked+span{background:var(--tint);border-color:var(--tint)}.admin-gallery-checkbox input:checked+span:after,.moderation-select-control input:checked+span:after{border-color:#fff}:is(.admin-gallery-checkbox input:focus-visible+span,.moderation-select-control input:focus-visible+span){outline:2px solid var(--tint);outline-offset:3px}.admin-gallery-checkbox.is-partial>span{background:var(--tint-soft);border-color:var(--tint)}.admin-gallery-checkbox.is-partial>span:after{background:var(--tint);border:0;width:10px;height:2px;transform:none}.admin-gallery-checkbox strong{font-size:11px;font-weight:650}.admin-gallery-clear-selection{color:var(--tint);background:0 0;border:0;padding:6px;font-size:10px}.admin-gallery-page-size{align-items:center;gap:4px;display:inline-flex}.admin-gallery-page-size>span{color:var(--label-3);white-space:nowrap;margin-right:4px;font-size:10px}.admin-gallery-page-size button{color:var(--label-2);background:0 0;border:0;border-radius:999px;min-width:38px;min-height:34px;padding:0 9px;font-size:11px}.admin-gallery-page-size button.active{background:var(--tint);color:#fff}.admin-gallery-page-size button:hover{background:var(--tint-soft);color:var(--label)}.admin-gallery-bulk-delete{white-space:nowrap;gap:7px;min-height:38px!important}.admin-gallery-bulk-delete:not(:disabled){color:#c05a55;border-color:#d65d593d}.admin-gallery-page-caption{color:var(--label-2);justify-content:space-between;align-items:center;min-height:24px;margin:0 0 4px;font-size:10px;display:flex}.admin-gallery-page-caption strong{color:var(--label);font-weight:650}.admin-gallery-page-caption>b{color:var(--tint);font-size:10px}.moderation-list{border-top:1px solid var(--separator)}.moderation-row{transition:background .2s var(--ease-apple), border-color .2s var(--ease-apple), transform .2s var(--ease-apple)}.moderation-row.is-selected{background:var(--tint-soft);border-radius:14px;margin-inline:-8px;padding-inline:8px}.moderation-select-control{flex:0 0 22px;gap:0;min-height:22px}.moderation-select-control>span{width:20px;height:20px}.moderation-video-poster{background-position:50%;background-repeat:no-repeat;background-size:cover;align-items:center;position:relative}.moderation-video-poster:after{content:"";background:linear-gradient(#0000 40%,#080a0f59);position:absolute;inset:0}.moderation-video-play{color:var(--tint);z-index:1;background:#ffffffe0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding-left:1px;font-size:10px;display:inline-flex;position:relative}.admin-gallery-pagination{justify-content:center;align-items:center;gap:5px;margin-top:18px;display:flex}.admin-gallery-pagination button{background:var(--bg-2);border:.5px solid var(--glass-border);color:var(--label-2);border-radius:11px;justify-content:center;align-items:center;min-width:36px;height:36px;padding:0 9px;font-size:11px;display:inline-flex}.admin-gallery-pagination button:hover:not(:disabled){background:var(--tint-soft);color:var(--label);transform:translateY(-1px)}.admin-gallery-pagination button[aria-current=page]{background:var(--tint);border-color:var(--tint);color:#fff}.admin-gallery-pagination button:disabled{opacity:.4}@media (max-width:720px){.admin-gallery-heading{flex-direction:column;align-items:flex-start;gap:10px}.admin-gallery-heading .panel-heading{width:100%}.admin-gallery-type-summary{justify-content:flex-start}.admin-gallery-controls{grid-template-columns:1fr;align-items:stretch}.admin-gallery-page-size{justify-content:space-between}.admin-gallery-page-size>span{margin-right:auto}.admin-gallery-bulk-delete{width:100%}.admin-gallery-page-caption{flex-direction:column;align-items:flex-start;gap:2px;padding:4px 0}.moderation-row.is-selected{margin-inline:-4px;padding-inline:4px}.moderation-row.has-select .moderation-copy{flex-basis:calc(100% - 100px)}.moderation-row.has-select .moderation-status{margin-left:90px}.moderation-row.has-select .moderation-actions{width:calc(100% - 90px);margin-left:90px}}.wedding-app[data-view=admin] .admin-app-layout{grid-template-columns:minmax(0,1fr)}.wedding-app[data-view=admin] .admin-app-layout .admin-content{width:100%;max-width:1460px;margin:0 auto;padding-left:clamp(18px,5vw,80px);padding-right:clamp(18px,5vw,80px)}.wedding-app[data-view=admin-login] .admin-app-layout{grid-template-columns:minmax(0,1fr)}.wedding-app[data-view=admin] .admin-topbar,.wedding-app[data-view=admin-login] .admin-topbar{background:var(--glass-regular);border-bottom:.5px solid var(--glass-border);box-shadow:0 8px 28px #1f2b410d}.admin-page{max-width:1400px;padding-top:clamp(28px,4vw,54px);padding-bottom:86px}.admin-heading{border-bottom:.5px solid var(--separator);align-items:flex-end;padding-bottom:25px}.admin-heading h1{font-size:clamp(45px,5vw,70px)}.admin-heading-copy{max-width:360px}.admin-heading-actions{gap:9px}.admin-heading-actions .button,.admin-state-pill{min-height:42px}.admin-state-pill{background:var(--bg-cell);box-shadow:0 5px 16px #1f2b410f}.admin-layout{grid-template-columns:246px minmax(0,1fr);gap:28px;margin-top:28px}.admin-side-nav{background:var(--glass-regular);border:.5px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:25px;flex-direction:column;align-self:start;gap:0;padding:13px;display:flex;position:sticky;top:93px}.admin-nav-intro{border-bottom:.5px solid var(--separator);flex-direction:column;gap:4px;padding:5px 10px 16px;display:flex}.admin-nav-intro>span,.admin-nav-group-label,.admin-side-foot>span{color:var(--label-3);letter-spacing:.13em;text-transform:uppercase;font-size:9px;font-weight:700}.admin-nav-intro strong{color:var(--label);letter-spacing:-.03em;font-size:16px}.admin-nav-intro small{color:var(--label-2);font-size:10px}.admin-nav-groups{gap:17px;padding:16px 0 4px;display:grid}.admin-nav-group{gap:4px;display:grid}.admin-nav-group-label{padding:0 10px 4px}.admin-nav-group>button{color:var(--label-2);text-align:left;min-height:49px;transition:background .22s var(--ease-apple), color .22s var(--ease-apple), transform .22s var(--ease-apple), box-shadow .22s var(--ease-apple);background:0 0;border:0;border-radius:15px;justify-content:flex-start;align-items:center;gap:10px;width:100%;padding:6px 10px;display:flex;position:relative}.admin-nav-group>button:hover{background:var(--tint-soft);color:var(--label);transform:translate(2px)}.admin-nav-group>button.active{background:linear-gradient(135deg, var(--tint-soft), #ffffff2e);box-shadow:inset 0 0 0 .5px var(--glass-border), 0 5px 14px #147ef514;color:var(--tint)}.theme-dark .admin-nav-group>button.active{background:linear-gradient(135deg,#3d9bff33,#ffffff0d)}.admin-nav-icon{background:var(--bg-2);border:.5px solid var(--glass-border);color:var(--label-2);height:32px;transition:background .22s var(--ease-apple), color .22s var(--ease-apple), transform .22s var(--ease-apple);border-radius:11px;flex:0 0 32px;justify-content:center;align-items:center;width:32px;display:inline-flex}.admin-nav-group>button:hover .admin-nav-icon,.admin-nav-group>button.active .admin-nav-icon{background:var(--tint);border-color:var(--tint);color:#fff;transform:scale(1.04)}.admin-nav-button-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.admin-nav-button-copy b{color:currentColor;font-size:12px;font-weight:650}.admin-nav-button-copy small{color:var(--label-3);font-size:9px;line-height:1.2}.admin-nav-group>button.active .admin-nav-button-copy small{color:color-mix(in srgb, var(--tint) 68%, var(--label-2))}.admin-nav-current{background:var(--tint);border-radius:99px;width:3px;height:17px;margin-left:auto}.admin-side-foot{border-top:.5px solid var(--separator);flex-direction:column;gap:7px;margin:16px 5px 2px;padding:15px 5px 3px;display:flex}.admin-side-foot strong{color:var(--label-2);align-items:center;gap:7px;font-size:10px;display:inline-flex}.admin-connection-dot{background:#59c786;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 4px #59c78624}.admin-side-foot .integration-off .admin-connection-dot{background:var(--label-3);box-shadow:none}.admin-main{gap:16px}.admin-context-card{background:var(--glass-regular);border:.5px solid var(--glass-border);border-radius:20px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 15px;display:grid;box-shadow:0 8px 24px #1f2b410f}.admin-context-icon{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--tint);border-radius:13px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.admin-context-card>div{flex-direction:column;gap:3px;min-width:0;display:flex}.admin-context-card .eyebrow{font-size:8px}.admin-context-card .eyebrow:before{display:none}.admin-context-card strong{color:var(--label);letter-spacing:-.02em;font-size:15px}.admin-context-card small{color:var(--label-2);font-size:10px;line-height:1.35}.admin-context-card>button{background:var(--tint-soft);color:var(--tint);min-height:34px;transition:background .2s var(--ease-apple), transform .2s var(--ease-apple);border:0;border-radius:999px;padding:0 12px;font-size:10px}.admin-context-card>button:hover{background:var(--tint);color:#fff;transform:translateY(-1px)}.admin-context-card>button span{margin-left:5px;font-size:14px}.admin-summary-hero{grid-template-columns:minmax(250px,.82fr) minmax(0,1.18fr);gap:12px;display:grid}.admin-summary-hero .admin-event-card,.admin-summary-hero .admin-welcome{height:100%;min-height:184px;margin:0}.admin-summary-hero .admin-event-card{align-items:flex-start;padding:23px}.admin-summary-hero .admin-event-card>b{margin-left:auto}.admin-welcome{background:linear-gradient(135deg, var(--glass-regular), var(--tint-soft));flex-direction:column;justify-content:space-between;align-items:stretch;padding:23px 25px 21px}.theme-dark .admin-welcome{background:linear-gradient(135deg,#301f27e6,#3d9bff1a)}.admin-welcome-main{align-items:flex-start;gap:15px;display:flex}.admin-welcome-mark{background:var(--tint-soft);border:.5px solid var(--glass-border);color:var(--tint);border-radius:15px;flex:0 0 46px;justify-content:center;align-items:center;width:46px;height:46px;margin-top:1px;display:inline-flex}.admin-welcome-mark .app-logo-image{width:2.2em;height:1.2em}.admin-welcome-main>div{min-width:0}.admin-welcome .admin-date{align-self:flex-end;margin-top:18px}.stats-grid{gap:10px}.stats-grid .stat-card{min-height:108px;transition:box-shadow .22s var(--ease-apple), transform .22s var(--ease-apple);position:relative;overflow:hidden}.stats-grid .stat-card:after{content:"";opacity:.08;background:currentColor;border-radius:50%;width:54px;height:54px;position:absolute;top:-17px;right:-17px}.stats-grid .stat-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #1f2b411f}.admin-panel,.admin-event-card,.admin-welcome,.admin-context-card,.admin-side-nav{transition:border-color .22s var(--ease-apple), box-shadow .22s var(--ease-apple)}.admin-panel:hover,.admin-context-card:hover{border-color:#147ef538}@media (max-width:980px){.admin-layout{grid-template-columns:210px minmax(0,1fr)}.admin-summary-hero{grid-template-columns:1fr}}@media (max-width:720px){.wedding-app[data-view=admin] .admin-app-layout .admin-content,.wedding-app[data-view=admin-login] .admin-app-layout .admin-content{padding-left:14px;padding-right:14px}.admin-page{padding-top:28px;padding-bottom:54px}.admin-heading{align-items:flex-start;gap:17px;padding-bottom:19px}.admin-heading h1{font-size:clamp(42px,13vw,57px)}.admin-heading-copy{margin-top:10px;font-size:13px}.admin-heading-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;display:grid}.admin-heading-actions .admin-state-pill{grid-column:1/-1;justify-content:center}.admin-heading-actions .button{justify-content:center;width:100%;margin:0}.admin-layout{margin-top:20px;display:block}.admin-side-nav{border-radius:20px;margin-bottom:14px;padding:8px;display:block;position:static}.admin-nav-intro{flex-direction:column;align-items:flex-start;gap:3px;padding:2px 5px 10px;display:flex}.admin-nav-intro strong{font-size:14px}.admin-nav-intro small{text-align:left;font-size:9px}.admin-nav-groups{gap:14px;padding:14px 0 3px;display:grid}.admin-nav-group{gap:6px;display:grid}.admin-nav-group-label{padding:0 8px 1px;display:block}.admin-nav-group+.admin-nav-group{border-top:.5px solid var(--separator);padding-top:13px}.admin-nav-group>button{text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;min-height:58px;padding:8px 10px}.admin-nav-group>button:hover{transform:translateY(-1px)}.admin-nav-icon{flex-basis:29px;width:29px;height:29px}.admin-nav-button-copy{align-items:flex-start;gap:3px;max-width:100%}.admin-nav-button-copy b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;overflow:hidden}.admin-nav-button-copy small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:8.5px;overflow:hidden}.admin-nav-current{width:3px;height:24px;margin:0;position:absolute;inset:50% 10px auto auto;transform:translateY(-50%)}.admin-side-foot{display:none}.admin-main{gap:12px}.admin-context-card{border-radius:17px;grid-template-columns:auto minmax(0,1fr);gap:9px;padding:10px}.admin-context-icon{width:35px;height:35px}.admin-context-card strong{font-size:13px}.admin-context-card small{font-size:9px}.admin-context-card>button{grid-column:2;justify-self:start;min-height:30px}.admin-summary-hero .admin-event-card,.admin-summary-hero .admin-welcome{min-height:0}.admin-summary-hero .admin-event-card{padding:18px}.admin-welcome{padding:19px 18px 18px}.admin-welcome-main{gap:11px}.admin-welcome-mark{flex-basis:39px;width:39px;height:39px}.admin-welcome h2{font-size:32px}.stats-grid .stat-card{min-height:88px}}@media (prefers-reduced-motion:reduce){.admin-nav-group>button,.admin-nav-icon,.admin-context-card>button,.stats-grid .stat-card{transition:none!important}}.wedding-app.sheet-open .view-stage{animation:none!important;transform:none!important}.sheet-backdrop{box-sizing:border-box;max-height:100dvh;overflow:hidden}.upload-sheet{animation:upload-sheet-in .32s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;box-sizing:border-box;max-height:min(650px, calc(100dvh - env(safe-area-inset-top)))}@keyframes upload-sheet-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translate(0,0)}}@media (max-width:720px){.sheet-backdrop{padding-top:env(safe-area-inset-top)}.upload-sheet{max-height:calc(100dvh - env(safe-area-inset-top));padding-bottom:max(16px, env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.sheet-grabber{margin-bottom:14px}.sheet-heading h2{font-size:clamp(27px,8vw,32px)}.sheet-actions{margin-top:20px}}@media (prefers-reduced-motion:reduce){.upload-sheet{animation:none!important;transform:none!important}}.library-upload-grid{grid-template-columns:minmax(0,1fr);gap:16px}.library-upload-grid .upload-item{background:linear-gradient(135deg, var(--glass-regular), color-mix(in srgb, var(--tint-soft) 38%, var(--glass-regular)));border:.5px solid var(--glass-border);border-radius:24px;grid-template-columns:minmax(190px,230px) minmax(0,1fr) auto;align-items:stretch;gap:18px;min-height:164px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 34px #202b401a}.library-upload-grid .upload-item:before{background:radial-gradient(circle at 100% 0, color-mix(in srgb, var(--tint) 16%, transparent), transparent 48%);content:"";pointer-events:none;position:absolute;inset:0}.library-upload-grid .upload-item>*{z-index:1;position:relative}.library-upload-grid .upload-thumb{aspect-ratio:16/10;border-radius:18px;flex:none;align-self:stretch;width:100%;height:auto;min-height:132px;position:relative;overflow:hidden}.library-upload-grid .upload-thumb.video{color:#fff;background:#271d2c}.library-upload-grid .upload-item-main{flex-direction:column;justify-content:center;align-self:center;min-width:0;padding:4px 0;display:flex}.library-upload-grid .upload-item-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.library-upload-grid .upload-item-title{align-items:center;gap:8px;min-width:0;display:flex}.library-upload-grid .upload-item-top .upload-item-kind{background:var(--tint-soft);color:var(--tint);border-radius:50%;flex:0 0 30px;justify-content:center;align-items:center;width:30px;height:30px;margin:0;display:inline-flex}.library-upload-grid .upload-item-top strong{color:var(--label);letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(16px,2vw,21px);overflow:hidden}.library-upload-grid .upload-item-top .upload-item-status{background:var(--tint-soft);color:var(--tint);white-space:nowrap;border-radius:999px;flex:none;margin:0;padding:7px 10px;font-size:10px;font-weight:700;display:inline-flex}.library-upload-grid .upload-item-top .upload-item-status-processing,.library-upload-grid .upload-item-top .upload-item-status-uploading{background:color-mix(in srgb, var(--tint) 14%, transparent)}.library-upload-grid .upload-item-top .upload-item-status-error{color:#b85e68;background:#b85e6824}.library-upload-grid .upload-item .progress-track{background:color-mix(in srgb, var(--label-3) 55%, transparent);border-radius:999px;height:7px;margin:17px 0 0;overflow:hidden}.library-upload-grid .upload-item .progress-track span{background-image:linear-gradient(90deg, var(--tint), color-mix(in srgb, var(--tint) 65%, #fff), var(--tint));border-radius:inherit}.library-upload-grid .upload-item-approved .progress-track span,.library-upload-grid .upload-item-pending .progress-track span{background-image:linear-gradient(90deg,#5e9a78,#8ec69a);animation:none}.library-upload-grid .upload-item-actions{flex-direction:column;align-self:center;gap:8px;margin:0;display:flex}.library-upload-grid .upload-item-actions button{background:color-mix(in srgb, var(--bg-2) 82%, transparent);border:.5px solid var(--glass-border);color:var(--label-2);height:36px;transition:background .22s var(--ease-apple), color .22s var(--ease-apple), transform .22s var(--ease-apple);border-radius:50%;justify-content:center;align-items:center;width:36px;padding:0;font-size:19px;display:inline-flex}.library-upload-grid .upload-item-actions button:hover{background:var(--tint-soft);color:var(--tint);transform:scale(1.05)}.upload-video-preview{background:linear-gradient(135deg,#302233,#100d16);width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.upload-video-preview:after{content:"";pointer-events:none;z-index:2;background:linear-gradient(#0b081005 26%,#0b0810b8 100%);position:absolute;inset:0}.upload-video-preview>video,.upload-video-poster{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.upload-video-preview>video{opacity:.88;z-index:0}.upload-video-preview.has-poster>video{opacity:0}.upload-video-poster{animation:upload-poster-in .34s var(--ease-apple,cubic-bezier(.22, .8, .26, 1)) both;z-index:1}.upload-video-loading{z-index:1;background:linear-gradient(110deg,#0000 20%,#fff3 48%,#0000 74%);animation:1.35s ease-in-out infinite upload-preview-shimmer;position:absolute;inset:0}.upload-video-overlay{pointer-events:none;z-index:3;justify-content:space-between;align-items:flex-end;padding:12px;display:flex;position:absolute;inset:0}.upload-video-type{-webkit-backdrop-filter:blur(12px);color:#ffd8df;background:#100c168a;border:.5px solid #ffffff42;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.upload-video-play{color:#261a26;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;padding-left:2px;font-size:12px;display:inline-flex;box-shadow:0 8px 18px #00000042}@keyframes upload-poster-in{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes upload-preview-shimmer{0%,to{opacity:.18;transform:translate(-14%)}50%{opacity:.62;transform:translate(14%)}}@media (max-width:720px){.library-upload-grid{gap:12px}.library-upload-grid .upload-item{border-radius:20px;grid-template-columns:minmax(92px,31%) minmax(0,1fr) auto;gap:12px;min-height:116px;padding:10px}.library-upload-grid .upload-thumb{aspect-ratio:4/3;border-radius:14px;align-self:center;min-height:90px}.library-upload-grid .upload-item-main{padding:1px 0}.library-upload-grid .upload-item-top{flex-direction:column;align-items:flex-start;gap:8px}.library-upload-grid .upload-item-top strong{font-size:15px}.library-upload-grid .upload-item-top .upload-item-status{padding:5px 8px;font-size:9px}.library-upload-grid .upload-item .progress-track{height:6px;margin-top:12px}.library-upload-grid .upload-item-actions{gap:6px}.library-upload-grid .upload-item-actions button{width:32px;height:32px;font-size:17px}.upload-video-overlay{padding:8px}.upload-video-type{width:25px;height:25px}.upload-video-type svg{width:15px;height:15px}.upload-video-play{width:31px;height:31px;font-size:10px}}@media (max-width:375px){.library-upload-grid .upload-item{grid-template-columns:84px minmax(0,1fr) auto;gap:9px}.library-upload-grid .upload-thumb{min-height:82px}}@media (prefers-reduced-motion:reduce){.upload-video-loading,.upload-video-poster{animation:none!important}}html[data-wedding-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#120d0f!important}html[data-wedding-theme=dark] body{color:#f5f5f7!important;background:#120d0f!important}html[data-wedding-theme=dark] .wedding-app,.wedding-app.theme-dark,.wedding-app[data-theme=dark]{--ivory:#120d0f;--paper:#1d1518;--sand:#332128;--gold:#d98692;--gold-deep:#f394a5;--rose:#4a2935;--sage:#21332d;--lilac:#2b202d;--ink:#f5f5f7;--muted:#f5ebeea8;--faint:#f5ebee6b;--line:#d68f9b47;--app-bg:#120d0f;--surface:#1d1518;--surface-soft:#21181b;--green-soft:#34c75929;--peach-soft:#f3948b2e;--lavender-soft:#ee9aaa24;--text-strong:#f5f5f7;--text-soft:#f5ebeea8;--border-soft:#d68f9b47;--label:#f5f5f7;--label-2:#f5ebeea8;--label-3:#f5ebee61;--separator:#d68f9b47;--bg:#0d0a0b;--bg-2:#21181b;--bg-grouped:#120d0f;--bg-cell:#2d1e23d1;--tint:#ee9aaa;--tint-soft:#ee9aaa2e;--blue:#ee9aaa;--blue-dark:#f2bbc3;--blue-soft:#ee9aaa29;--glass-regular:#2d1e23c7;--glass-clear:#2d1e2380;--glass-border:#ffebef2b;--glass-shadow:0 14px 38px #00000061, inset 0 1px 0 #ffffff24, inset 0 0 0 .5px #ffffff14;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f5f5f7!important;background:#120d0f!important}html[data-wedding-theme=dark] .wedding-app:before{opacity:1!important;background:radial-gradient(circle at 8% 6%,#ee9aaa1f,#0000 25%),radial-gradient(circle at 95% 18%,#754f6724,#0000 27%)!important}html[data-wedding-theme=dark] .wedding-app .app-topbar,html[data-wedding-theme=dark] .wedding-app .app-topbar:before{color:var(--label)}html[data-wedding-theme=dark] .wedding-app .app-topbar:before{background:linear-gradient(#0d0a0bf7,#0d0a0bd6)!important;border-bottom-color:#d68f9b2e!important}html[data-wedding-theme=dark] .wedding-app .app-sidebar{border-color:var(--separator)!important;background:#1b1216db!important}html[data-wedding-theme=dark] .wedding-app .side-link{color:var(--label-2)!important}html[data-wedding-theme=dark] .wedding-app .side-link.active,html[data-wedding-theme=dark] .wedding-app .side-link:hover{color:var(--label)!important;background:#ffebef17!important}html[data-wedding-theme=dark] .wedding-app .brand-button strong,html[data-wedding-theme=dark] .wedding-app .brand-button small,html[data-wedding-theme=dark] .wedding-app .guest-chip,html[data-wedding-theme=dark] .wedding-app .mobile-back{color:var(--label)!important}html[data-wedding-theme=dark] .wedding-app .brand-button small,html[data-wedding-theme=dark] .wedding-app .guest-chip>span:last-child{color:var(--label-2)!important}html[data-wedding-theme=dark] .wedding-app .app-logo{color:#fff7f8!important}html[data-wedding-theme=dark] .wedding-app .app-logo-image{filter:brightness(0)invert()drop-shadow(0 0 1px #ffffffd1)drop-shadow(0 2px 5px #ffffff2e)!important}html[data-wedding-theme=dark] .wedding-app :where(.glass,.glass-card,.glass-toolbar,.glass-navigation,.glass-modal,.glass-sheet){background-color:var(--glass-regular);border-color:var(--glass-border);box-shadow:var(--glass-shadow)}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only :where(.gallery-photo-nav,.gallery-tools,.gallery-filter-sheet,.empty-state,.personal-library-empty){color:var(--label);background:#25171ce6!important;border-color:#ffebef29!important;box-shadow:0 12px 32px #0000004d,inset 0 1px #ffffff1a!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .gallery-photo-nav:before{background:#23161be0!important;border-color:#ffebef24!important;box-shadow:0 12px 32px #0000004d,inset 0 1px #ffffff1a!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .gallery-scope-tabs{background:#2d1e238f!important;border-color:#ffebef26!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .gallery-scope-tabs button{color:var(--label-2)!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .gallery-scope-tabs button.active{color:#fff7f8!important;background:#4a2f37eb!important;box-shadow:0 5px 16px #00000047,inset 0 1px #ffffff1f!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .gallery-tools .glass-search{box-shadow:none!important;background:0 0!important;border-color:#0000!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .gallery-tools .glass-search:focus-within{background:#ffebef14!important;border-color:#0000!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .glass-search input,html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .glass-search input::placeholder{color:var(--label)!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .glass-search input::placeholder{color:var(--label-2)!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .gallery-tools .glass-icon-button{color:var(--tint)!important;background:#ffebef1a!important;border-color:#ffebef24!important;box-shadow:inset 0 1px #ffffff1a!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .photo-view-tabs{background:#ffebef1a!important;border-color:#ffebef24!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .photo-view-tabs button{color:var(--label-2)!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .photo-view-tabs button.active{color:#fff7f8!important;background:#4a2f37eb!important}html[data-wedding-theme=dark] .wedding-app .gallery-photo-only .gallery-only-grid .media-art{background:var(--surface)!important}html[data-wedding-theme=dark] .wedding-app .mobile-bottom-nav{background:#1d1518f0!important;border-color:#ffebef29!important;box-shadow:0 -12px 30px #00000057,inset 0 1px #ffffff1a!important}html[data-wedding-theme=dark] .wedding-app .mobile-bottom-nav button{color:var(--label-2)!important}html[data-wedding-theme=dark] .wedding-app .mobile-bottom-nav button.active{color:var(--tint)!important;background:#ee9aaa24!important}html[data-wedding-theme=dark] .wedding-app .mobile-bottom-nav .mobile-add-button{background:var(--tint)!important;color:#2b151d!important}html[data-wedding-theme=dark] .wedding-app .gallery-selection-toolbar{background:linear-gradient(120deg,#371d26eb,#1f1319e6)!important;border-color:#ffb1c533!important}html[data-wedding-theme=dark] .wedding-app .gallery-selection-toolbar strong{color:#fff4f6!important}html[data-wedding-theme=dark] .wedding-app .gallery-selection-toolbar small{color:#ffebefa3!important}html[data-wedding-theme=dark] .wedding-app :where(.live-game-shell,.admin-game-control,.admin-login-card,.admin-panel,.admin-event-card,.admin-welcome,.admin-side-nav,.admin-state-pill,.action-card,.profile-card,.question-card,.answer-option,.countdown-card,.unlock-panel,.people-panel,.messages-wall,.message-tree-card){color:var(--ink)}html[data-wedding-theme=dark] .wedding-app :where(.live-game-shell,.admin-game-control,.admin-login-card,.admin-panel,.admin-event-card,.admin-welcome,.admin-side-nav,.admin-state-pill,.question-card,.countdown-card,.unlock-panel,.people-panel,.messages-wall,.message-tree-card){background-color:var(--surface);border-color:var(--glass-border)}html[data-wedding-theme=dark] .wedding-app :where(.text-input,.textarea,.select-input,input,textarea,select):not(.admin-delete-code-input){color:var(--ink)}html[data-wedding-theme=dark] .wedding-app :where(.text-input,.textarea,.select-input,input,textarea,select):not(.admin-delete-code-input)::placeholder{color:var(--label-2)}html[data-wedding-theme=dark] .wedding-app :where(.action-card.mint,.action-card.peach,.action-card.lavender){background:linear-gradient(145deg,#4a2935eb,#25191deb)!important}.library-upload-grid .upload-item-top .upload-item-status-queued{background:color-mix(in srgb, var(--label-3) 22%, transparent);color:var(--label-2)}.library-upload-grid .upload-item-top .upload-item-status-paused{color:#a66f32;background:#be8f5329}.library-upload-grid .upload-item-paused .progress-track span{background-image:linear-gradient(90deg,#b88950,#d2a86c)}.gallery-upload-status>span.is-paused{background:#ad7e46}.library-upload-grid .upload-item-actions button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--tint) 28%, transparent);outline:none}@media (min-width:721px){.wedding-app[data-view=home] .home-menu-screen{padding-top:24px}.wedding-app[data-view=home] .home-menu-brand{margin-bottom:8px;font-size:clamp(27px,2vw,34px)}}@media (min-width:721px) and (max-width:1599px){.wedding-app[data-view=home] .home-menu-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
