@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap";:root{--color-forest-900: #1f3d2b;--color-sage-500: #8daa91;--color-milk-100: #f4f1ea;--color-gold-500: #c6a75e;--color-sage-300: #b9ccb9;--color-ink-900: #1a2b22;--color-card: rgba(244, 241, 234, .82);--color-card-strong: rgba(244, 241, 234, .92);--color-line: rgba(31, 61, 43, .18);--font-heading: "Cormorant Garamond", "Times New Roman", serif;--font-body: "Manrope", "Inter", "Segoe UI", sans-serif;--radius-sm: 12px;--radius-md: 16px;--radius-lg: 20px;--radius-pill: 999px;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--shadow-soft: 0 14px 40px rgba(19, 39, 28, .14);--shadow-card: 0 10px 28px rgba(19, 39, 28, .12);--shadow-glow: 0 0 0 1px rgba(198, 167, 94, .24), 0 14px 30px rgba(198, 167, 94, .24);--ease-smooth: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;font-family:var(--font-body);color:var(--color-ink-900);background:radial-gradient(circle at 12% 12%,rgba(141,170,145,.22),transparent 45%),radial-gradient(circle at 88% 10%,rgba(198,167,94,.16),transparent 42%),linear-gradient(155deg,#f6f3ec,#eff2eb 48%,#eef1e8);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;color:var(--color-forest-900)}p{margin:0;line-height:1.7}button,input,textarea{font-family:inherit}button{cursor:pointer}@keyframes sectionReveal{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@supports (animation-timeline: view()){.menu-item,.timeline-item,.gallery-item,.rsvp-card,.guest-list,.map-info-card,.playlist-item,.wish-item,.challenge-list li,.capsule-title,.capsule-text,.capsule-subtext{animation-name:sectionReveal;animation-fill-mode:both;animation-duration:.9s;animation-timing-function:var(--ease-smooth);animation-timeline:view();animation-range:entry 12% cover 34%}}.splash-container{position:relative;min-height:100svh;background-size:cover;background-position:center;isolation:isolate}.splash-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 18%,rgba(141,170,145,.12),transparent 56%),radial-gradient(circle at 84% 78%,rgba(198,167,94,.1),transparent 44%),linear-gradient(160deg,#12211947,#1c2e2480);z-index:0}.splash-overlay{position:relative;z-index:2;min-height:100svh;padding:clamp(2rem,5vw,4.5rem);display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center}.splash-top{padding-top:clamp(1.5rem,6vh,4rem);animation:splashFade 1.1s var(--ease-smooth) both}.splash-title{margin-bottom:var(--space-6);font-size:clamp(2.8rem,9vw,5.8rem);color:var(--color-milk-100);letter-spacing:.14em;text-shadow:0 10px 26px rgba(8,22,15,.36)}.splash-date{margin-bottom:var(--space-10);color:#f4f1eaeb;font-size:clamp(1.2rem,3.3vw,2rem);letter-spacing:.18em;text-transform:uppercase}.splash-container .countdown{display:inline-flex;gap:.55rem;align-items:center;padding:.95rem 1.6rem;border-radius:var(--radius-pill);border:1px solid rgba(244,241,234,.25);background:#11221842;color:#f4f1eaf0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:clamp(1rem,2.8vw,1.28rem);letter-spacing:.12em}.splash-container .countdown span{color:#f7e4ad}.splash-bottom{padding-bottom:clamp(1.3rem,4vh,3rem)}.splash-btn{border:1px solid rgba(198,167,94,.48);border-radius:var(--radius-pill);padding:.95rem 2.3rem;font-size:1rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;background:linear-gradient(135deg,#c6a75e52,#8daa9133);color:var(--color-milk-100);box-shadow:var(--shadow-glow);transition:transform .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth),background .22s var(--ease-smooth)}.splash-btn:hover{transform:translateY(-3px);background:linear-gradient(135deg,#c6a75e6b,#b9ccb957);box-shadow:0 0 0 1px #c6a75e5c,0 16px 32px #c6a75e47}@keyframes splashFade{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 680px){.splash-btn{width:min(92vw,340px)}}.menu-container{position:relative;min-height:100vh;padding:clamp(2.2rem,6vw,5rem) clamp(1rem,4vw,2.4rem) var(--space-16);display:flex;justify-content:center;align-items:flex-start;text-align:center;background:radial-gradient(circle at 10% 12%,rgba(141,170,145,.26),transparent 44%),radial-gradient(circle at 88% 76%,rgba(198,167,94,.2),transparent 38%),linear-gradient(154deg,#f4f1eaf2,#ecf3eaf5)}.menu-content{position:relative;z-index:2;width:min(920px,100%)}.menu-title{font-size:clamp(2rem,5vw,3.4rem);letter-spacing:.18em;margin-bottom:var(--space-10)}.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:var(--space-4)}.menu-item{position:relative;min-height:94px;border-radius:var(--radius-lg);border:1px solid rgba(31,61,43,.16);background:var(--color-card);box-shadow:var(--shadow-card);color:var(--color-forest-900);font-weight:600;letter-spacing:.04em;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:var(--space-4);transition:transform .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth),border-color .22s var(--ease-smooth),background .22s var(--ease-smooth)}.menu-item:after{content:"";position:absolute;left:50%;bottom:.9rem;transform:translate(-50%);width:42px;height:1px;background:#c6a75eb3;opacity:.72}.menu-item:hover{transform:translateY(-4px);border-color:#c6a75e75;background:#edf3eaf0;box-shadow:var(--shadow-soft)}.program-container{min-height:100vh;padding:clamp(2.4rem,6vw,5rem) clamp(1rem,4vw,2.5rem);display:grid;place-items:start center;gap:var(--space-8);text-align:center;background:radial-gradient(circle at 10% 12%,rgba(141,170,145,.26),transparent 44%),radial-gradient(circle at 90% 84%,rgba(198,167,94,.2),transparent 42%),linear-gradient(162deg,#f7f3ed,#eef2e9 52%,#eaf0e6)}.program-title{font-size:clamp(2rem,5.2vw,3.6rem);letter-spacing:.16em;display:inline-flex;align-items:center;gap:.55rem}.program-container .countdown{width:min(760px,100%);border-radius:var(--radius-lg);background:var(--color-card);border:1px solid var(--color-line);box-shadow:var(--shadow-card);padding:var(--space-6) var(--space-8)}.program-container .countdown p{color:#1f3d2bb8;text-transform:uppercase;letter-spacing:.08em;font-size:.86rem}.program-container .countdown h3{margin-top:.45rem;font-size:clamp(1.4rem,3.6vw,2rem);letter-spacing:.06em;color:var(--color-forest-900)}.timeline{width:min(760px,100%);position:relative;display:grid;gap:var(--space-6);padding:.35rem 0 .35rem 2rem}.timeline:before{content:"";position:absolute;left:.85rem;top:.4rem;bottom:.4rem;width:2px;background:linear-gradient(var(--color-sage-500),rgba(31,61,43,.18))}.timeline-item{position:relative;display:grid;gap:var(--space-2);text-align:left;border-radius:var(--radius-md);border:1px solid var(--color-line);background:var(--color-card-strong);padding:var(--space-6);box-shadow:var(--shadow-card);transition:transform .22s var(--ease-smooth),border-color .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth)}.timeline-item:hover{transform:translateY(-3px);border-color:#c6a75e7a;box-shadow:0 14px 26px #1f3d2b24}.timeline-item:before{content:"";position:absolute;left:-1.69rem;top:1.45rem;width:13px;height:13px;border-radius:50%;border:2px solid var(--color-gold-500);background:var(--color-milk-100)}.timeline-time{color:var(--color-gold-500);font-weight:700;letter-spacing:.08em}.timeline-icon{display:inline-flex;align-items:center;color:var(--color-forest-900)}.timeline-text{color:#1f3d2be0}.timeline-item.past{opacity:.7}.calendar-buttons{width:min(760px,100%);display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-4)}.calendar-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:1px solid rgba(31,61,43,.22);border-radius:var(--radius-pill);background:linear-gradient(140deg,#8daa9138,#c6a75e3d);color:var(--color-forest-900);font-weight:600;letter-spacing:.04em;padding:.95rem 1rem;transition:transform .22s var(--ease-smooth),background .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth)}.calendar-btn:hover{transform:translateY(-2px);background:linear-gradient(140deg,#b9ccb959,#c6a75e47);box-shadow:var(--shadow-card)}.map-container{min-height:100vh;padding:clamp(2.4rem,6vw,5rem) clamp(1rem,4vw,2.4rem) var(--space-16);text-align:center;background:radial-gradient(circle at 16% 12%,rgba(141,170,145,.26),transparent 45%),radial-gradient(circle at 86% 78%,rgba(198,167,94,.2),transparent 42%),linear-gradient(158deg,#f7f4ed,#eef2e9 52%,#e8efe5)}.map-container h2{font-size:clamp(2rem,5vw,3.2rem);letter-spacing:.16em;display:inline-flex;align-items:center;gap:.5rem}.map-info-card{width:min(780px,100%);margin:var(--space-8) auto;border-radius:var(--radius-lg);border:1px solid var(--color-line);background:var(--color-card);box-shadow:var(--shadow-card);padding:var(--space-8);display:grid;gap:var(--space-3)}.map-info-card p{color:#1f3d2bd6}.tabs{margin:0 auto var(--space-6);width:min(780px,100%);display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}.tabs button{border-radius:var(--radius-pill);border:1px solid rgba(31,61,43,.22);background:#f4f1eaa6;color:var(--color-forest-900);font-weight:600;padding:.68rem 1.2rem;transition:background .22s var(--ease-smooth),transform .22s var(--ease-smooth),border-color .22s var(--ease-smooth)}.tabs button:hover{background:#b9ccb973;transform:translateY(-1px)}.tabs button.active{border-color:#c6a75ead;background:linear-gradient(130deg,#c6a75e3d,#8daa914d)}.map-frame{position:relative;width:min(780px,100%);margin:0 auto;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-soft);border:1px solid rgba(31,61,43,.22)}.map-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#13271c33;pointer-events:none}.map-frame{height:min(52vh,420px)!important;width:min(780px,100%)!important}.taxi,.parking{width:min(780px,100%);margin:0 auto;border-radius:var(--radius-lg);background:var(--color-card);border:1px solid var(--color-line);box-shadow:var(--shadow-card);padding:var(--space-8);color:#1f3d2bdb}.taxi .btn{display:inline-flex;margin-top:var(--space-4);align-items:center;justify-content:center;border-radius:var(--radius-pill);border:1px solid rgba(31,61,43,.24);background:linear-gradient(135deg,#c6a75e47,#8daa9152);color:var(--color-forest-900);padding:.88rem 1.35rem;font-weight:600;transition:transform .22s var(--ease-smooth),background .22s var(--ease-smooth)}.taxi .btn:hover{transform:translateY(-2px);background:linear-gradient(135deg,#c6a75e57,#b9ccb97a)}.parking ul{margin:var(--space-4) 0 0;padding-left:1.2rem;text-align:left}.rsvp-container{min-height:100vh;padding:clamp(2.4rem,6vw,5rem) clamp(1rem,4vw,2.2rem) var(--space-16);display:flex;flex-direction:column;align-items:center;gap:var(--space-6);text-align:center;background:radial-gradient(circle at 12% 10%,rgba(141,170,145,.23),transparent 44%),radial-gradient(circle at 90% 86%,rgba(198,167,94,.2),transparent 42%),linear-gradient(160deg,#f7f3ec,#eef2e9 52%,#e9efe6)}.rsvp-title{font-size:clamp(2rem,5vw,3.3rem);letter-spacing:.16em;display:inline-flex;align-items:center;gap:.5rem}.name-input{width:min(520px,100%);border-radius:var(--radius-md);border:1px solid rgba(31,61,43,.2);background:#f4f1ead9;color:var(--color-forest-900);padding:1rem 1rem .9rem;font-size:1rem;box-shadow:var(--shadow-card);transition:border-color .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth),transform .22s var(--ease-smooth)}.name-input::placeholder{color:#1f3d2b8a;transition:transform .22s var(--ease-smooth),opacity .22s var(--ease-smooth);transform-origin:left center}.name-input:focus::placeholder,.name-input:not(:placeholder-shown)::placeholder{transform:translateY(-.75rem) scale(.86);opacity:.66}.name-input:focus{outline:none;border-color:#c6a75e8f;box-shadow:var(--shadow-glow);transform:translateY(-1px)}.rsvp-options{width:min(980px,100%);display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--space-4)}.rsvp-card{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:var(--radius-lg);border:1px solid rgba(31,61,43,.14);background:var(--color-card);color:var(--color-forest-900);box-shadow:var(--shadow-card);padding:var(--space-8) var(--space-6);font-size:1.1rem;font-weight:600;transition:transform .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth),border-color .22s var(--ease-smooth),background .22s var(--ease-smooth)}.rsvp-card:hover{transform:translateY(-3px);background:#e9f1e8f2}.rsvp-card.selected{border-color:#c6a75e99;box-shadow:var(--shadow-glow);background:linear-gradient(145deg,#f4f1eaf2,#b9ccb957)}.submit-btn{border:1px solid rgba(31,61,43,.22);border-radius:var(--radius-pill);background:linear-gradient(130deg,#c6a75e4d,#8daa914d);color:var(--color-forest-900);font-size:.95rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.9rem 2rem;transition:transform .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth),background .22s var(--ease-smooth)}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-card);background:linear-gradient(130deg,#c6a75e5c,#b9ccb973)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.guest-list{width:min(760px,100%);border-radius:var(--radius-lg);background:var(--color-card);border:1px solid var(--color-line);box-shadow:var(--shadow-card);padding:var(--space-8);text-align:left}.guest-list h3{font-size:clamp(1.25rem,3vw,1.7rem);margin-bottom:var(--space-4);display:inline-flex;align-items:center;gap:.4rem}.guest-count{margin:0 0 var(--space-4);color:#1f3d2bc2;font-weight:600}.guest-list ul{list-style:none;padding:0;margin:0}.guest-list li{padding:.65rem 0;border-bottom:1px dashed rgba(31,61,43,.22);color:#1f3d2be6}.guest-list li:last-child{border-bottom:0}.gallery-container{min-height:100vh;padding:clamp(2.4rem,6vw,5rem) clamp(1rem,4vw,2.4rem) var(--space-16);text-align:center;background:radial-gradient(circle at 14% 10%,rgba(141,170,145,.24),transparent 40%),radial-gradient(circle at 90% 86%,rgba(198,167,94,.22),transparent 35%),linear-gradient(160deg,#f7f4ed,#edf2ea,#e9efe6)}.gallery-title{font-size:clamp(2rem,5vw,3.4rem);letter-spacing:.16em;margin-bottom:var(--space-6);display:inline-flex;align-items:center;gap:.5rem}.gallery-empty{color:#1f3d2bc7;max-width:680px;margin:0 auto var(--space-6)}.upload-label{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.55rem;border-radius:var(--radius-pill);border:1px solid rgba(31,61,43,.24);background:linear-gradient(140deg,#8daa912e,#c6a75e42);color:var(--color-forest-900);font-weight:600;letter-spacing:.05em;box-shadow:var(--shadow-card);margin-bottom:var(--space-10);transition:transform .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth),background .22s var(--ease-smooth)}.upload-label:hover{transform:translateY(-2px);background:linear-gradient(140deg,#b9ccb95c,#c6a75e47);box-shadow:0 18px 30px #1f3d2b1f}.gallery-grid{columns:3 240px;column-gap:var(--space-4);text-align:left}.gallery-item{position:relative;margin-bottom:var(--space-4);break-inside:avoid;border-radius:var(--radius-md);overflow:hidden;border:1px solid rgba(31,61,43,.12);box-shadow:var(--shadow-card);cursor:pointer}.gallery-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 55%,rgba(19,39,28,.3));opacity:0;transition:opacity .26s var(--ease-smooth)}.gallery-item:hover:after{opacity:1}.gallery-item img{display:block;width:100%;height:auto;transform:scale(1.001);transition:transform .32s var(--ease-smooth),filter .32s var(--ease-smooth)}.gallery-item:hover img{transform:scale(1.065);filter:saturate(1.06)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#101e17d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;z-index:30;padding:var(--space-8)}.lightbox-img{max-width:min(980px,92vw);max-height:84vh;border-radius:var(--radius-lg);border:1px solid rgba(244,241,234,.38);box-shadow:var(--shadow-soft);animation:lightboxShow .26s var(--ease-smooth)}.lightbox-close{position:absolute;top:1rem;right:1rem;border:1px solid rgba(244,241,234,.3);background:#12221966;color:var(--color-milk-100);width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%}@keyframes lightboxShow{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.wishes-container{min-height:100vh;padding:clamp(2.4rem,6vw,5rem) clamp(1rem,4vw,2.4rem) var(--space-16);display:flex;flex-direction:column;align-items:center;text-align:center;background:radial-gradient(circle at 10% 14%,rgba(141,170,145,.24),transparent 42%),radial-gradient(circle at 90% 84%,rgba(198,167,94,.2),transparent 39%),linear-gradient(158deg,#f7f4ed,#edf2ea 55%,#e8efe5)}.wishes-title{font-size:clamp(2rem,5vw,3.3rem);letter-spacing:.16em;margin-bottom:var(--space-8);display:inline-flex;align-items:center;gap:.5rem}.wishes-form{width:min(700px,100%);display:grid;gap:var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--color-line);background:var(--color-card);box-shadow:var(--shadow-card);padding:var(--space-6)}.wishes-form input,.wishes-form textarea{width:100%;border-radius:var(--radius-sm);border:1px solid rgba(31,61,43,.2);background:#fff9;color:var(--color-forest-900);padding:.85rem .9rem}.wishes-form textarea{min-height:128px;resize:vertical}.wishes-form input::placeholder,.wishes-form textarea::placeholder{color:#1f3d2b8f}.wishes-form input:focus,.wishes-form textarea:focus{outline:none;border-color:#c6a75e8f;box-shadow:0 0 0 3px #c6a75e24}.wishes-button{border:1px solid rgba(31,61,43,.22);border-radius:var(--radius-pill);padding:.84rem 1rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-forest-900);background:linear-gradient(130deg,#c6a75e4d,#8daa9154);transition:transform .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth),background .22s var(--ease-smooth)}.wishes-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);background:linear-gradient(130deg,#c6a75e61,#b9ccb975)}.wishes-list{width:min(760px,100%);margin-top:var(--space-8);display:grid;gap:var(--space-3)}.wishes-empty{color:#1f3d2bb3}.wish-item{border-radius:var(--radius-md);border:1px solid rgba(31,61,43,.15);background:var(--color-card-strong);box-shadow:var(--shadow-card);padding:1rem 1.2rem;text-align:left}.wish-item strong{color:var(--color-gold-500)}.wish-item p{margin-top:.35rem;color:#1f3d2bdb}.capsule-container{min-height:100vh;padding:clamp(2.4rem,6vw,5rem) clamp(1rem,4vw,2.2rem);display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 14% 16%,rgba(141,170,145,.25),transparent 45%),radial-gradient(circle at 84% 80%,rgba(198,167,94,.2),transparent 42%),linear-gradient(160deg,#f7f4ed,#edf2ea 58%,#e9efe5)}.capsule-container .capsule-card,.capsule-container>.capsule-title,.capsule-container>.capsule-lock,.capsule-container>.capsule-text,.capsule-container>.capsule-subtext{width:min(760px,100%)}.capsule-title{font-size:clamp(2rem,5.2vw,3.4rem);letter-spacing:.16em;display:inline-flex;align-items:center;gap:.5rem}.capsule-lock{margin:var(--space-6) 0;font-size:clamp(3rem,9vw,4.9rem);filter:drop-shadow(0 6px 16px rgba(31,61,43,.2));animation:capsulePulse 2.2s ease-in-out infinite}.capsule-text,.capsule-subtext{border-radius:var(--radius-lg);border:1px solid var(--color-line);background:var(--color-card);box-shadow:var(--shadow-card);padding:var(--space-6) var(--space-8);color:#1f3d2bdb}.capsule-subtext{margin-top:var(--space-4)}@keyframes capsulePulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.playlist-container{min-height:100vh;padding:clamp(2.4rem,6vw,5rem) clamp(1rem,4vw,2.4rem) var(--space-16);display:flex;flex-direction:column;align-items:center;text-align:center;background:radial-gradient(circle at 12% 12%,rgba(141,170,145,.24),transparent 44%),radial-gradient(circle at 88% 84%,rgba(198,167,94,.2),transparent 40%),linear-gradient(160deg,#f7f4ed,#edf2ea 55%,#e9efe6)}.playlist-title{font-size:clamp(2rem,5vw,3.2rem);letter-spacing:.16em;display:inline-flex;align-items:center;gap:.5rem}.playlist-subtitle{margin-top:var(--space-4);margin-bottom:var(--space-8);max-width:760px;color:#1f3d2bc7}.playlist-form{width:min(620px,100%);display:grid;gap:var(--space-3);border-radius:var(--radius-lg);background:var(--color-card);border:1px solid var(--color-line);box-shadow:var(--shadow-card);padding:var(--space-6)}.playlist-form input{border-radius:var(--radius-sm);border:1px solid rgba(31,61,43,.2);background:#ffffff8c;color:var(--color-forest-900);padding:.82rem .88rem}.playlist-form input::placeholder{color:#1f3d2b8f}.playlist-form input:focus{outline:none;border-color:#c6a75e8f;box-shadow:0 0 0 3px #c6a75e24}.playlist-form button{margin-top:var(--space-2);border:1px solid rgba(31,61,43,.22);border-radius:var(--radius-pill);background:linear-gradient(130deg,#c6a75e47,#8daa9152);color:var(--color-forest-900);padding:.84rem 1rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:transform .22s var(--ease-smooth),background .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth)}.playlist-form button:hover{transform:translateY(-2px);background:linear-gradient(130deg,#c6a75e5c,#b9ccb975);box-shadow:var(--shadow-card)}.playlist-list{width:min(760px,100%);margin-top:var(--space-8);padding:0;list-style:none;display:grid;gap:var(--space-3)}.playlist-empty{margin:0;color:#1f3d2bb3}.playlist-item{border-radius:var(--radius-md);border:1px solid rgba(31,61,43,.14);background:var(--color-card-strong);color:var(--color-forest-900);box-shadow:var(--shadow-card);padding:.9rem 1rem;text-align:left}.playlist-item span{display:inline-flex;align-items:center;gap:.45rem}.challenges-container{min-height:100vh;padding:clamp(2.4rem,6vw,5rem) clamp(1rem,4vw,2.4rem) var(--space-16);display:flex;flex-direction:column;align-items:center;text-align:center;background:radial-gradient(circle at 12% 11%,rgba(141,170,145,.26),transparent 44%),radial-gradient(circle at 88% 84%,rgba(198,167,94,.2),transparent 40%),linear-gradient(160deg,#f7f4ed,#edf2ea 55%,#e8efe5)}.challenges-container h2{font-size:clamp(2rem,5vw,3.2rem);letter-spacing:.16em;display:inline-flex;align-items:center;gap:.5rem}.guest-input{width:min(620px,100%);margin:var(--space-8) 0 var(--space-6)}.guest-input input{width:100%;border-radius:var(--radius-md);border:1px solid rgba(31,61,43,.2);background:#f4f1eae6;color:var(--color-forest-900);padding:.95rem 1rem;box-shadow:var(--shadow-card)}.guest-input input::placeholder{color:#1f3d2b8c}.guest-input input:focus{outline:none;border-color:#c6a75e94;box-shadow:0 0 0 3px #c6a75e24}.challenge-list{width:min(980px,100%);list-style:none;margin:0;padding:0;display:grid;gap:var(--space-6)}.challenge-list li{border-radius:var(--radius-lg);border:1px solid rgba(31,61,43,.15);background:var(--color-card);box-shadow:var(--shadow-card);padding:var(--space-6);display:grid;gap:var(--space-4);text-align:left;color:var(--color-forest-900)}.challenge-list input[type=file]{display:none}.upload-label{justify-self:start;border-radius:var(--radius-pill);border:1px solid rgba(31,61,43,.24);background:linear-gradient(130deg,#c6a75e40,#8daa914f);color:var(--color-forest-900);font-weight:600;padding:.74rem 1.1rem;transition:transform .22s var(--ease-smooth),background .22s var(--ease-smooth),box-shadow .22s var(--ease-smooth)}.upload-label:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);background:linear-gradient(130deg,#c6a75e57,#b9ccb970)}.upload-label.disabled{opacity:.5;cursor:not-allowed}.proofs{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:var(--space-3)}.proof{border-radius:var(--radius-sm);border:1px solid rgba(31,61,43,.14);background:#ffffff80;padding:.55rem}.proof img,.proof video{width:100%;height:150px;object-fit:cover;border-radius:10px;cursor:pointer}.proof p{margin:.35rem 0;font-size:.8rem;display:inline-flex;align-items:center;gap:.28rem}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#101e17d6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;z-index:35;padding:var(--space-6)}.modal-content img,.modal-content video{max-width:90vw;max-height:88vh;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}
