body{margin:0;padding:0}#root{min-height:100vh}*{margin:0;padding:0;box-sizing:border-box}body{font-family:roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.page-container{min-height:100vh;background:linear-gradient(180deg,#3a3540,#4a4350);color:#43384c}.header{text-align:center;padding:0 20px 30px;color:#ffb981}.domain{font-family:roboto,sans-serif;font-size:13px;margin-bottom:10px;opacity:.8;background-color:#e2e2e2;color:#a2a2a2;display:inline-block;padding:4px 12px;width:100%;border-radius:0}.main-title{font-family:ohno-fatface,serif;font-size:38px;line-height:1.1;font-weight:400;max-width:400px;margin:0 auto}.main-content{max-width:400px;margin:0 auto;padding:0 20px}.cat-frame-container{margin-bottom:30px}.confetti-bg{background-image:url(/party.png);background-repeat:repeat;background-size:contain;padding:40px 20px;position:relative;display:flex;justify-content:center}.cat-image{max-width:214px;height:auto;display:block}.invitation-card{background:#fff;border-radius:24px;padding:40px 30px;margin-bottom:30px;box-shadow:0 4px 20px #0003}.celebration-title{font-family:ohno-fatface,serif;font-size:30px;font-weight:400;margin-bottom:10px;color:#43384c;text-align:center}.event-title{font-family:roboto,sans-serif;font-size:18px;font-weight:700;margin-bottom:8px;color:#43384c;text-align:center}.subtitle{font-family:roboto,sans-serif;font-size:16px;margin-bottom:35px;color:#43384c;text-align:center}.event-details{display:flex;flex-direction:column;gap:25px}.detail-section{text-align:center;padding:15px 0}.detail-section:first-child{border-top:2px solid #FFB981}.detail-section:last-child{border-bottom:2px solid #FFB981}.detail-label{font-family:roboto,sans-serif;font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:8px;color:#43384c}.detail-label:not(:first-of-type){margin-top:16px}.detail-text{font-family:roboto,sans-serif;font-size:16px;line-height:1.4;color:#43384c}.rsvp-card{background:#fff;border-radius:24px;padding:40px 30px;box-shadow:0 4px 20px #0003;margin-bottom:20px}.rsvp-title{font-family:ohno-fatface,serif;font-size:56px;font-weight:400;text-align:center;margin-bottom:30px;color:#43384c}.rsvp-counters{display:flex;justify-content:space-between;gap:15px;margin-bottom:35px}.counter{flex:1;text-align:center}.counter-number{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;margin:0 auto 10px;color:#43384c}.yes-counter .counter-number{background:#f9945b}.no-counter .counter-number{background:#ffb981}.no-response-counter .counter-number{background:#43384c80}.counter-label{font-family:roboto,sans-serif;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#43384c}.responses-list{display:flex;flex-direction:column;gap:20px;margin-bottom:35px}.response-item{padding-bottom:20px;border-bottom:1px solid #FFB981}.response-item:last-child{border-bottom:none;padding-bottom:0}.response-header{font-family:roboto,sans-serif;font-size:12px;font-weight:400;margin-bottom:8px;color:#43384c}.response-name{font-style:italic}.response-status{font-weight:700}.response-comment{font-family:roboto,sans-serif;font-size:15px;line-height:1.5;color:#43384c}.rsvp-button{font-family:roboto,sans-serif;width:100%;padding:16px;background:#a09098;color:#f5f1ed;border:none;border-radius:12px;font-size:18px;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:not-allowed;margin-bottom:12px}.rsvp-note{font-family:roboto,sans-serif;text-align:center;font-size:13px;font-style:italic;color:#c5a6a6}.footer{font-family:roboto,sans-serif;text-align:center;padding:0 20px 20px;font-size:10px;color:#fff}@media(max-width:480px){.main-title{font-size:36px}.celebration-title{font-size:40px}.rsvp-title{font-size:48px}.counter-number{width:60px;height:60px;font-size:28px}}
