*{margin:0;padding:0;box-sizing:border-box}body{font-family:Crimson Text,serif;background:linear-gradient(135deg,#721237 0%,#5a0e2a 50%,#3d0a1c 100%);color:#e8e8e8;min-height:100vh;line-height:1.6}.app{max-width:1200px;margin:0 auto;padding:20px}.header{text-align:center;margin-bottom:40px}.title-image{max-width:100%;height:auto;border-radius:15px;box-shadow:0 8px 32px #0006;transition:transform .3s ease}.title-image:hover{transform:scale(1.02)}.party-info{text-align:center;margin:30px 0;padding:25px 20px;background:rgba(255,255,255,.05);border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 16px #0003}.subtitle{font-size:1.5rem;color:#b8b8b8;margin-bottom:20px;font-style:italic}.party-stats{display:flex;justify-content:center;gap:40px;margin-top:20px}.stat{text-align:center}.stat-number{display:block;font-family:Cinzel,serif;font-size:2.5rem;font-weight:600;color:#fe9d3f;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.stat-label{font-size:1rem;color:#b8b8b8;text-transform:uppercase;letter-spacing:1px}.main{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:40px}@media (max-width: 768px){.main{grid-template-columns:1fr;gap:30px}.title{font-size:2.5rem}.party-stats{gap:20px}}.signup-section,.attendees-section{background:rgba(255,255,255,.05);padding:30px;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 16px #0003}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.section-header h2{font-family:Cinzel,serif;font-size:2rem;color:#fe9d3f;text-shadow:1px 1px 2px rgba(0,0,0,.5);margin:0}.admin-btn{padding:8px 16px;background:rgba(255,255,255,.1);color:#e8e8e8;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:.9rem;font-family:Cinzel,serif;cursor:pointer;transition:all .3s ease}.admin-btn:hover{background:rgba(255,255,255,.2);transform:translateY(-1px)}.admin-controls{display:flex;align-items:center;gap:15px}.admin-status{font-size:.9rem;color:#fe9d3f;font-weight:600;font-family:Cinzel,serif}.logout-btn{padding:6px 12px;background:rgba(220,20,60,.3);color:#ffb6c1;border:1px solid rgba(220,20,60,.5);border-radius:4px;font-size:.8rem;font-family:Cinzel,serif;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:rgba(220,20,60,.5);color:#fff}.signup-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#e8e8e8;font-size:1.1rem}.form-group input[type=text]{padding:12px 16px;border:2px solid rgba(254,157,63,.3);border-radius:8px;background:rgba(255,255,255,.1);color:#e8e8e8;font-size:1rem;font-family:Crimson Text,serif;transition:all .3s ease}.form-group input[type=text]:focus{outline:none;border-color:#fe9d3f;background:rgba(255,255,255,.15);box-shadow:0 0 10px #fe9d3f4d}.form-group input[type=text]::placeholder{color:#888}.checkbox-group{margin:10px 0}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:1.1rem;color:#e8e8e8}.checkbox-label input[type=checkbox]{display:none}.checkmark{width:24px;height:24px;border:2px solid rgba(254,157,63,.5);border-radius:4px;background:rgba(255,255,255,.1);position:relative;transition:all .3s ease}.checkbox-label input[type=checkbox]:checked+.checkmark{background:#fe9d3f;border-color:#fe9d3f}.checkbox-label input[type=checkbox]:checked+.checkmark:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#721237;font-weight:700;font-size:16px}.submit-btn{padding:15px 30px;background:linear-gradient(135deg,#fe9d3f 0%,#ffb366 100%);color:#721237;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;font-family:Cinzel,serif;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #fe9d3f4d}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #fe9d3f66}.submit-btn:active{transform:translateY(0)}.no-attendees{text-align:center;color:#888;font-style:italic;padding:40px 20px}.attendees-list{display:flex;flex-direction:column;gap:15px}.attendee-card{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-radius:10px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.attendee-card.attending{background:rgba(34,139,34,.2);border-color:#228b224d}.attendee-card.not-attending{background:rgba(220,20,60,.2);border-color:#dc143c4d}.attendee-card:hover{transform:translate(5px);box-shadow:0 4px 12px #0003}.attendee-info{display:flex;flex-direction:column;gap:5px}.attendee-name{font-weight:600;font-size:1.1rem;color:#e8e8e8}.attendee-status{font-size:.9rem;opacity:.8}.attendee-card.attending .attendee-status{color:#90ee90}.attendee-card.not-attending .attendee-status{color:#ffb6c1}.remove-btn{background:rgba(220,20,60,.3);color:#ffb6c1;border:none;border-radius:50%;width:30px;height:30px;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.remove-btn:hover{background:rgba(220,20,60,.5);color:#fff;transform:scale(1.1)}.dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.confirmation-dialog{background:linear-gradient(135deg,#721237 0%,#5a0e2a 100%);padding:40px;border-radius:20px;border:2px solid rgba(254,157,63,.3);box-shadow:0 20px 60px #00000080;text-align:center;max-width:500px;margin:20px}.confirmation-dialog h3{font-family:Cinzel,serif;font-size:2rem;color:#fe9d3f;margin-bottom:20px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.confirmation-dialog p{font-size:1.2rem;color:#e8e8e8;margin-bottom:15px;line-height:1.6}.dialog-date{font-size:1.1rem;color:#fe9d3f;font-weight:600;margin-bottom:20px}.dress-code{font-size:1.1rem;color:#fe9d3f;font-weight:600;margin-bottom:30px;padding:15px;background:rgba(254,157,63,.1);border-radius:10px;border:1px solid rgba(254,157,63,.3)}.dialog-buttons{display:flex;gap:20px;justify-content:center;margin-top:30px}.cancel-btn,.confirm-btn{padding:15px 30px;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;font-family:Cinzel,serif;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}.cancel-btn{background:rgba(255,255,255,.1);color:#e8e8e8;border:2px solid rgba(255,255,255,.2)}.cancel-btn:hover{background:rgba(255,255,255,.2);transform:translateY(-2px)}.confirm-btn{background:linear-gradient(135deg,#fe9d3f 0%,#ffb366 100%);color:#721237;box-shadow:0 4px 15px #fe9d3f4d}.password-input{padding:12px 16px;border:2px solid rgba(254,157,63,.3);border-radius:8px;background:rgba(255,255,255,.1);color:#e8e8e8;font-size:1rem;font-family:Crimson Text,serif;transition:all .3s ease;margin:20px 0;width:100%;max-width:300px}.password-input:focus{outline:none;border-color:#fe9d3f;background:rgba(255,255,255,.15);box-shadow:0 0 10px #fe9d3f4d}.password-input::placeholder{color:#888}.delete-btn{padding:15px 30px;background:linear-gradient(135deg,#dc143c 0%,#ff6b6b 100%);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;font-family:Cinzel,serif;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #dc143c4d}.delete-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #dc143c66}@media (max-width: 480px){.app{padding:10px}.header{padding:20px 15px}.title{font-size:2rem}.subtitle{font-size:1.2rem}.signup-section,.attendees-section{padding:20px}.party-stats{flex-direction:column;gap:15px}.confirmation-dialog{padding:30px 20px;margin:10px}.dialog-buttons{flex-direction:column;gap:15px}.cancel-btn,.confirm-btn{width:100%}}
