.valentine-page{text-align:center;padding:20px;background:linear-gradient(to bottom,#fcc,#f9c);min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.questionnaire{background:#ffffffe6;border-radius:15px;padding:30px;box-shadow:0 10px 15px #0000001a;max-width:600px;margin:20px auto;animation:fadeIn 1.5s ease-in-out}.title{font-size:3rem;color:#ff6b81;font-family:Poppins,sans-serif;margin-bottom:15px}.subtitle{font-size:1.2rem;color:#ffadc6;margin-bottom:30px;font-family:Quicksand,sans-serif}.question{margin-bottom:20px}.question label{font-size:1rem;color:#333;font-weight:700;margin-bottom:8px;display:block}.question input{padding:10px;width:100%;border:2px solid #ff6b81;border-radius:8px;font-family:Poppins,sans-serif;outline:none;transition:all .3s ease}.question input:focus{border-color:#ff9aa2;box-shadow:0 4px 6px #0000001a}.submit-button{padding:12px 25px;border:none;border-radius:30px;background:linear-gradient(135deg,#ff6b81,#ff9aa2);color:#fff;font-size:1rem;font-family:Quicksand,sans-serif;cursor:pointer;transition:all .3s ease}.submit-button:hover{transform:scale(1.05);background:linear-gradient(135deg,#ff9aa2,#ff6b81)}.hint{color:#ff6b81;font-size:.9rem;font-family:Quicksand,sans-serif;margin-top:15px;animation:pulse 2s infinite}.hint:before{content:"💡 "}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.flower-animation{margin-top:20px}.flowers{display:flex;justify-content:center;gap:20px}.flower{font-size:10em;cursor:pointer}.message{margin-top:20px;font-size:1.2em;color:#ff1493}.download-button{background-color:#ff69b4;color:#fff;border:none;padding:10px 20px;cursor:pointer;margin-top:20px;border-radius:5px}.floating-hearts{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10;overflow:hidden}.heart{position:absolute;color:#ff69b4;font-size:24px;pointer-events:none;-webkit-user-select:none;user-select:none;animation:floatUp 3s linear infinite;opacity:.8}.heart:nth-child(odd){color:#ff9aa2}@keyframes floatUp{0%{transform:translateY(100%);opacity:.5}50%{opacity:1}to{transform:translateY(-100%);opacity:.2}}.slideshow{overflow:hidden;width:100%;max-width:600px;margin:20px auto}.slides-container{display:flex;width:200%}.slide{flex:1 0 33.33%;box-sizing:border-box;padding:10px}.slide img{width:100%;height:300px;object-fit:cover;border-radius:15px;box-shadow:0 10px 15px #0000001a}.anniversary-date-picker{min-height:100vh;background:linear-gradient(135deg,#667eeacc,#764ba2cc),url(/images/anniv_bg2.png) center center / cover no-repeat;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}.header{text-align:center;padding:20px;position:relative}.header h1{font-size:2rem;margin-bottom:10px;font-weight:700}.user-info{display:flex;justify-content:center;align-items:center;gap:20px;margin-bottom:10px}.current-user{font-size:1.2rem;font-weight:600;background:#fff3;padding:8px 16px;border-radius:20px}.progress{font-size:1rem;opacity:.8}.switch-user-btn{background:#fff3;border:2px solid rgba(255,255,255,.3);color:#fff;padding:8px 16px;border-radius:20px;cursor:pointer;transition:all .3s ease}.switch-user-btn:hover{background:#ffffff4d;transform:translateY(-2px)}.user-select-screen{min-height:100vh;background:linear-gradient(135deg,#667eead9,#764ba2d9),url(/images/anniv_bg2.png) center center / cover no-repeat;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;color:#fff;text-align:center}.user-select-screen h1{font-size:2.5rem;margin-bottom:10px;font-weight:700}.user-select-screen p{font-size:1.2rem;margin-bottom:40px;opacity:.9}.user-buttons{display:flex;gap:30px;margin-bottom:40px;flex-wrap:wrap;justify-content:center}.user-btn{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:3px solid rgba(255,255,255,.4);color:#fff;padding:30px 40px;border-radius:20px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:10px;min-width:150px;box-shadow:0 8px 32px #0000004d}.user-btn:hover{background:#ffffff40;transform:translateY(-5px);border-color:#ffffffb3;box-shadow:0 12px 40px #0006}.user-name{font-size:1.5rem;font-weight:600}.progress-text{font-size:1rem;opacity:.8}.complete{font-size:.9rem;color:#90ee90}.card-container{display:flex;justify-content:center;align-items:center;height:60vh;padding:20px;position:relative}.swipe-card{width:350px;height:500px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3);border-radius:20px;box-shadow:0 20px 40px #0006;display:flex;flex-direction:column;justify-content:space-between;padding:30px;color:#333;cursor:grab;position:relative;overflow:hidden}.swipe-card:active{cursor:grabbing}.card-content{text-align:center;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px}.card-emoji{font-size:4rem}.card-title{font-size:2rem;font-weight:700;color:#333;margin:0}.card-description{font-size:1.1rem;color:#666;line-height:1.4;margin:0}.swipe-buttons{display:flex;gap:20px;margin-top:20px}.swipe-btn{flex:1;padding:15px;border:none;border-radius:15px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.no-btn{background:#ff6b6b;color:#fff}.no-btn:hover{background:#ff5252;transform:translateY(-2px)}.yes-btn{background:#4ecdc4;color:#fff}.yes-btn:hover{background:#26c6da;transform:translateY(-2px)}.swipe-indicators{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;display:flex;justify-content:space-between;padding:0 40px;pointer-events:none}.indicator{font-size:3rem;opacity:0;transition:opacity .3s ease}.match-notification{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000c;display:flex;justify-content:center;align-items:center;z-index:1000}.match-content{background:#fff;padding:50px;border-radius:20px;text-align:center;color:#333;box-shadow:0 20px 60px #0000004d}.match-content h2{font-size:2.5rem;margin-bottom:30px;color:#e91e63}.match-option{display:flex;flex-direction:column;align-items:center;gap:15px;margin-bottom:30px}.match-emoji{font-size:4rem}.match-title{font-size:1.5rem;font-weight:600}.close-match{background:#4ecdc4;color:#fff;border:none;padding:15px 30px;border-radius:15px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.close-match:hover{background:#26c6da;transform:translateY(-2px)}.results-screen{min-height:100vh;background:linear-gradient(135deg,#667eead9,#764ba2d9),url(/images/anniv_bg2.png) center center / cover no-repeat;padding:40px 20px;color:#fff}.results-screen h1{text-align:center;font-size:2.5rem;margin-bottom:40px;font-weight:700}.matches-section{margin-bottom:50px}.matches-section h2{text-align:center;font-size:2rem;margin-bottom:30px;color:#90ee90}.matches-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;max-width:800px;margin:0 auto}.match-card{background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:15px;padding:25px;text-align:center;transition:all .3s ease}.match-card:hover{background:#fff3;transform:translateY(-5px)}.match-card .match-emoji{font-size:3rem;display:block;margin-bottom:15px}.match-card h3{font-size:1.3rem;margin-bottom:10px}.match-card p{font-size:1rem;opacity:.8;margin:0}.no-matches{text-align:center;margin-bottom:40px}.no-matches h2{font-size:2rem;margin-bottom:20px}.individual-preferences{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;max-width:800px;margin:0 auto 40px}.preference-column{background:#ffffff1a;border-radius:15px;padding:25px}.preference-column h3{text-align:center;font-size:1.5rem;margin-bottom:20px;color:#90ee90}.preference-list{display:flex;flex-direction:column;gap:10px}.preference-item{background:#ffffff1a;padding:12px 16px;border-radius:10px;font-size:1rem}.results-actions{text-align:center}.reset-btn{background:#ff6b6b;color:#fff;border:none;padding:15px 30px;border-radius:15px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.reset-btn:hover{background:#ff5252;transform:translateY(-2px)}.reset-section{text-align:center;margin-top:30px}.session-setup-screen{min-height:100vh;background:linear-gradient(135deg,#667eead9,#764ba2d9),url(/images/anniv_bg2.png) center center / cover no-repeat;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;color:#fff;text-align:center}.session-setup-screen h1{font-size:2.5rem;margin-bottom:10px;font-weight:700}.setup-options{display:flex;flex-direction:column;gap:30px;max-width:500px;width:100%}.create-section,.join-section{background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:20px;padding:30px}.create-section h3,.join-section h3{margin-bottom:20px;font-size:1.5rem}.create-btn,.join-btn{background:#4ecdc4;color:#fff;border:none;padding:15px 30px;border-radius:15px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%}.create-btn:hover,.join-btn:hover{background:#26c6da;transform:translateY(-2px)}.create-btn:disabled,.join-btn:disabled{background:#ccc;cursor:not-allowed;transform:none}.divider{text-align:center;font-size:1.2rem;font-weight:600;color:#fffc}.join-form{display:flex;flex-direction:column;gap:15px}.join-form input{padding:12px 16px;border:2px solid rgba(255,255,255,.3);border-radius:10px;background:#ffffff1a;color:#fff;font-size:1.1rem;text-align:center;text-transform:uppercase}.join-form input::placeholder{color:#ffffffb3}.user-selection{display:flex;align-items:center;gap:10px}.user-selection select{padding:8px 12px;border:2px solid rgba(255,255,255,.3);border-radius:8px;background:#ffffff1a;color:#fff;font-size:1rem}.session-info{display:flex;justify-content:center;align-items:center;gap:20px;margin-bottom:10px;flex-wrap:wrap}.session-id{font-size:1rem;background:#fff3;padding:6px 12px;border-radius:15px;font-weight:600}.partner-status{text-align:center;margin-bottom:10px}.partner-online{color:#90ee90;font-weight:600}.partner-offline{color:#ffcccb;font-weight:600}.waiting-screen{min-height:100vh;background:linear-gradient(135deg,#667eead9,#764ba2d9),url(/images/anniv_bg2.png) center center / cover no-repeat;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;color:#fff;text-align:center}.waiting-screen h1{font-size:2.5rem;margin-bottom:20px;font-weight:700}.session-details{max-width:600px;width:100%}.session-code{background:#fff3;padding:10px 20px;border-radius:15px;font-size:2rem;font-weight:700;letter-spacing:3px;margin:0 10px}.share-section{margin:30px 0}.share-url{display:flex;gap:10px;margin-top:15px}.share-url input{flex:1;padding:12px 16px;border:2px solid rgba(255,255,255,.3);border-radius:10px;background:#ffffff1a;color:#fff;font-size:.9rem}.copy-btn{background:#4ecdc4;color:#fff;border:none;padding:12px 20px;border-radius:10px;cursor:pointer;font-weight:600;transition:all .3s ease}.copy-btn:hover{background:#26c6da}.partner-joined{background:#00ff001a;border:2px solid rgba(0,255,0,.3);border-radius:15px;padding:25px;margin-top:20px}.waiting-for-partner{background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:15px;padding:25px;margin-top:20px}.loading-dots{display:flex;align-items:center;justify-content:center;gap:5px;font-size:1.2rem}.dots{animation:blink 1.5s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.partner-progress{margin:30px 0}.progress-bar{width:100%;height:20px;background:#fff3;border-radius:10px;overflow:hidden;margin:15px 0}.progress-fill{height:100%;background:linear-gradient(90deg,#4ecdc4,#26c6da);transition:width .5s ease}.preview-matches{background:#ffffff1a;border-radius:15px;padding:20px;margin:20px 0}.match-preview{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:10px}.match-preview .match-emoji{font-size:2rem}.error-message{background:#f003;border:2px solid rgba(255,0,0,.5);color:#ffcccb;padding:15px;border-radius:10px;margin-top:20px;text-align:center}@media (max-width: 768px){.swipe-card{width:300px;height:450px;padding:25px}.card-title{font-size:1.7rem}.card-description{font-size:1rem}.user-buttons{flex-direction:column;align-items:center}.user-btn{min-width:200px}.individual-preferences,.matches-grid{grid-template-columns:1fr}}@media (max-width: 480px){.swipe-card{width:280px;height:400px;padding:20px}.card-emoji{font-size:3rem}.card-title{font-size:1.5rem}.header h1{font-size:1.7rem}.user-select-screen h1,.results-screen h1{font-size:2rem}}body{font-family:Arial,sans-serif;margin:0;padding:0;background-color:#f5f5f5}
