body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.rsvp-page{font-family:Georgia,Times New Roman,serif;background:linear-gradient(135deg,#8b0000,#dc143c,#8b0000);background-attachment:fixed;min-height:100vh;padding:20px;position:relative;overflow-x:hidden}.rsvp-form h2{color:#8b0000;margin-bottom:10px;font-size:1.9em;text-align:center;font-weight:600;text-shadow:0 1px 2px rgba(139,0,0,.1)}.subtitle{color:#666;margin-bottom:25px;font-style:italic;text-align:center;font-size:.95em}.error-message{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24;padding:15px;border-radius:8px;margin-bottom:20px;border:2px solid #f5c6cb;text-align:center;font-weight:600}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:600}.form-group input,.form-group select,.form-group textarea{width:100%;padding:14px;border:2px solid #ddd;border-radius:10px;font-size:16px;transition:all .3s ease;background:#fff;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#8b0000;box-shadow:0 0 0 3px #8b00001a,0 0 10px #ffd7004d;transform:translateY(-1px)}.submit-btn{width:100%;padding:16px;background:linear-gradient(135deg,#8b0000,#dc143c,#8b0000);color:#fff;border:3px solid #FFD700;border-radius:12px;font-size:1.3em;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #8b00004d,inset 0 1px #fff3;position:relative;overflow:hidden}.submit-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffd7004d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.submit-btn:hover:before{width:300px;height:300px}.submit-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 25px #8b000080,0 0 20px #ffd70066,inset 0 1px #ffffff4d}.submit-btn:active:not(:disabled){transform:translateY(-1px)}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.success-message{text-align:center;padding:35px;background:linear-gradient(135deg,#d4edda,#c3e6cb);border:3px solid #28a745;border-radius:15px;margin-top:20px;box-shadow:0 5px 20px #28a7454d;animation:slideIn .5s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.success-message h3{color:#155724;margin-bottom:12px;font-size:1.8em}.success-message p{color:#155724;font-size:1.1em}.dashboard-page{font-family:Georgia,Times New Roman,serif;background:linear-gradient(135deg,#8b0000,#dc143c,#8b0000);background-attachment:fixed;min-height:100vh;padding:0;margin:0;position:relative;overflow-x:hidden}.dashboard-page .container,.dashboard .container{max-width:100%!important;width:100%!important;margin:0!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.dashboard-page .logo-container,.dashboard .logo-container{background:linear-gradient(to bottom,#fff,#fffef8);padding:15px 3%;text-align:center;border-bottom:2px solid #FFD700;position:relative;width:100%;max-width:100%;display:none}.dashboard .logo-container .company-logo{max-width:180px;height:auto}.dashboard-page .logo-container:after,.dashboard .logo-container:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,#8b0000,gold,#8b0000)}.dashboard-header{background:linear-gradient(135deg,rgba(139,0,0,.1) 0%,transparent 50%,rgba(139,0,0,.1) 100%),linear-gradient(135deg,#8b0000,brown,#8b0000);color:#fff;padding:15px 3%;position:relative;box-shadow:inset 0 -30px 40px #0003;width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px}.dashboard-header h1{font-size:1.8em;margin-bottom:5px;text-shadow:0 0 20px rgba(255,215,0,.4),2px 2px 4px rgba(0,0,0,.5);font-family:Georgia,serif}.dashboard-header p{font-size:.95em;margin-bottom:0;color:#fffacd;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.header-left{flex:0 0 auto;display:flex;align-items:center}.header-logo{height:60px;width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.header-center{flex:1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:5px}.kalash-header-icon{width:50px;height:50px;filter:drop-shadow(0 0 10px rgba(255,215,0,.6));animation:pulse 3s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.05) translateY(-3px)}}.header-right{flex:0 0 auto;display:flex;gap:10px;align-items:center}.header-actions{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.header-actions{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;margin-top:15px}.back-btn{display:inline-block;padding:8px 16px;background:#fff;color:#8b0000;text-decoration:none;border:2px solid #FFD700;border-radius:6px;font-weight:700;transition:all .3s ease;box-shadow:0 2px 8px #0003;cursor:pointer;font-size:.9em}.back-btn:hover{background:gold;transform:translateY(-2px);box-shadow:0 6px 16px #0000004d}.logout-btn{display:inline-block;padding:8px 16px;background:#dc143c;color:#fff;text-decoration:none;border:2px solid #FFD700;border-radius:6px;font-weight:700;transition:all .3s ease;box-shadow:0 2px 8px #0003;cursor:pointer;font-size:.9em}.logout-btn:hover{background:#8b0000;transform:translateY(-2px);box-shadow:0 6px 16px #0000004d}.stats-container{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;padding:25px 3%;background:linear-gradient(to bottom,#fff,#fffef8);width:100%}.stat-card{background:#fff;padding:25px 30px;border-radius:12px;text-align:center;box-shadow:0 2px 8px #0000001a;border-left:5px solid #8B0000;transition:all .3s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#8b0000,gold,#8b0000)}.stat-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}.stat-card.guests{border-left-color:gold}.stat-card h3{color:#666;margin-bottom:12px;font-size:.95em;text-transform:uppercase;letter-spacing:.5px}.stat-number{font-size:3em;font-weight:700;color:#8b0000;text-shadow:2px 2px 4px rgba(0,0,0,.1);line-height:1}.actions-bar{padding:15px 3%;background:linear-gradient(to bottom,#fffef8,#f8f9fa);border-top:2px solid #FFD700;border-bottom:2px solid #FFD700;display:flex;gap:15px;flex-wrap:wrap;width:100%}.action-btn{padding:10px 25px;border:2px solid #FFD700;border-radius:8px;font-weight:700;cursor:pointer;transition:all .3s ease;background:linear-gradient(135deg,#8b0000,#dc143c);color:#fff;box-shadow:0 3px 10px #8b00004d;font-size:.95em}.action-btn:hover{transform:translateY(-3px);box-shadow:0 6px 15px #8b000066}.action-btn.danger{background:linear-gradient(135deg,#dc3545,#c82333);border-color:#dc3545}.rsvp-list{padding:25px 3%;background:linear-gradient(to bottom,#fff,#fffef8);width:100%}.rsvp-list h2{color:#8b0000;margin-bottom:20px;font-size:1.5em;text-shadow:0 1px 2px rgba(139,0,0,.1);border-bottom:3px solid #FFD700;padding-bottom:10px}.rsvp-item{background:#fff;border:1px solid #ddd;border-radius:8px;padding:15px 25px;margin-bottom:12px;transition:all .3s ease;box-shadow:0 2px 6px #0000000f;position:relative;overflow:hidden;display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:center}.rsvp-item:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(to bottom,#28a745,#20c997)}.rsvp-item:hover{box-shadow:0 8px 20px #00000026;transform:translate(5px)}.rsvp-item.attending{border-left:6px solid #28a745}.rsvp-header{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.rsvp-name{font-size:1.2em;font-weight:700;color:#8b0000;text-shadow:0 1px 2px rgba(0,0,0,.05);margin:0}.rsvp-status{padding:5px 15px;border-radius:20px;font-weight:700;font-size:.85em;box-shadow:0 2px 5px #0000001a}.rsvp-status.attending{background:#d4edda;color:#155724}.rsvp-details{color:#666;line-height:1.6;margin-left:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.rsvp-details p{margin:0;font-size:.95em}.rsvp-details strong{color:#333;font-weight:600}.guest-count-highlight{display:inline-block;background:linear-gradient(135deg,gold,orange);color:#333;padding:3px 10px;border-radius:5px;font-weight:700;box-shadow:0 2px 5px #ffa5004d;font-size:1em}.no-data{text-align:center;color:#999;padding:30px;font-style:italic;font-size:1em}.pagination{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:30px;padding:20px;background:linear-gradient(to bottom,#fffef8,#fff);border-radius:8px;box-shadow:0 2px 8px #0000000d}.pagination-btn{padding:8px 16px;background:linear-gradient(135deg,#8b0000,#dc143c);color:#fff;border:2px solid #FFD700;border-radius:6px;cursor:pointer;font-weight:700;transition:all .3s ease;box-shadow:0 2px 6px #8b00004d;font-size:.9em}.pagination-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #8b000066}.pagination-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.pagination-pages{display:flex;gap:5px;flex-wrap:wrap}.pagination-page{padding:8px 12px;background:#fff;color:#8b0000;border:2px solid #ddd;border-radius:6px;cursor:pointer;font-weight:700;transition:all .3s ease;font-size:.9em;min-width:40px}.pagination-page:hover{border-color:gold;background:#fffef8;transform:translateY(-2px)}.pagination-page.active{background:linear-gradient(135deg,#8b0000,#dc143c);color:#fff;border-color:gold;box-shadow:0 2px 8px #8b000066}.loading{text-align:center;padding:40px;color:#8b0000;font-size:1.2em;font-weight:700}.error-message{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24;padding:20px;border-radius:8px;margin:20px 30px;border:2px solid #f5c6cb;text-align:center;font-weight:600}@media (max-width: 1024px){.stats-container,.actions-bar,.rsvp-list{padding-left:2%;padding-right:2%}.dashboard-header{padding-left:2%;padding-right:2%;flex-wrap:wrap}.dashboard .logo-container{padding-left:2%;padding-right:2%}.header-logo{height:50px}.kalash-header-icon{width:40px;height:40px}.dashboard-header h1{font-size:1.5em}.dashboard-header p{font-size:.85em}.rsvp-list h2{font-size:1.3em}.rsvp-item{grid-template-columns:200px 1fr;gap:20px;padding:12px 20px}.rsvp-details{grid-template-columns:repeat(2,1fr);gap:15px}.pagination{gap:8px;padding:15px}.pagination-btn,.pagination-page{padding:6px 10px;font-size:.85em;min-width:35px}}@media (max-width: 768px){.dashboard-page{padding:0}.dashboard-header{flex-direction:column;padding:15px 3%;gap:10px}.header-left,.header-center,.header-right{width:100%}.header-center{order:1}.header-left{order:2;justify-content:center}.header-right{order:3;justify-content:center}.header-logo{height:50px}.kalash-header-icon{width:40px;height:40px}.dashboard-header h1{font-size:1.4em}.dashboard-header p{font-size:.8em}.stats-container{grid-template-columns:1fr;padding:20px 3%;gap:15px}.stat-card{padding:20px}.stat-number{font-size:2.5em}.actions-bar,.rsvp-list,.dashboard .logo-container{padding:15px 3%}.rsvp-list h2{font-size:1.2em}.rsvp-item{grid-template-columns:1fr;gap:12px;padding:12px 15px}.rsvp-details{grid-template-columns:1fr;gap:10px}.header-actions{flex-direction:column}.back-btn,.logout-btn{width:100%;text-align:center}.action-btn{flex:1;min-width:120px}.pagination{flex-wrap:wrap;gap:5px;padding:15px 10px}.pagination-btn{padding:6px 12px;font-size:.8em}.pagination-pages{width:100%;justify-content:center}.pagination-page{padding:6px 10px;font-size:.8em;min-width:35px}}.login-page{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#8b0000,#dc143c);padding:20px;position:relative}.login-container{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d,0 0 0 8px #ffd7004d,inset 0 2px 4px #0000001a;padding:40px;max-width:450px;width:100%;border:3px double #FFD700;position:relative;z-index:1}.login-header{text-align:center;margin-bottom:30px}.login-header h1{font-family:Georgia,serif;font-size:2em;color:#8b0000;margin:20px 0 10px;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.login-header p{color:#666;font-size:.95em;margin:0}.login-form{margin-top:30px}.form-group{margin-bottom:25px}.form-group label{display:block;font-weight:600;color:#8b0000;margin-bottom:8px;font-size:.95em}.form-group input{width:100%;padding:12px 15px;border:2px solid #ddd;border-radius:8px;font-size:1em;transition:all .3s ease;background:#fff;box-sizing:border-box}.form-group input:focus{outline:none;border-color:gold;box-shadow:0 0 0 3px #ffd70033}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.error-message{background:#ffebee;color:#c62828;padding:12px 15px;border-radius:8px;margin-bottom:20px;border-left:4px solid #c62828;font-size:.9em;animation:shake .5s}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.login-btn{width:100%;padding:14px;background:linear-gradient(135deg,#8b0000,#dc143c);color:#fff;border:none;border-radius:10px;font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #8b00004d;position:relative;overflow:hidden}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #8b000066}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.login-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.login-btn:active:before{width:300px;height:300px}.login-info{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:15px;margin-top:25px;text-align:center}.login-info p{margin:5px 0;font-size:.9em;color:#666}.login-info p:first-child{font-weight:600;color:#8b0000;margin-bottom:10px}.login-info strong{color:#8b0000}.back-to-rsvp{display:block;width:100%;margin-top:20px;padding:10px;background:transparent;color:#8b0000;border:2px solid #8B0000;border-radius:8px;font-size:.95em;cursor:pointer;transition:all .3s ease}.back-to-rsvp:hover{background:#8b0000;color:#fff}@media (max-width: 768px){.login-container{padding:30px 20px}.login-header h1{font-size:1.6em}}*{margin:0;padding:0;box-sizing:border-box}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,215,0,.03) 10px,rgba(255,215,0,.03) 20px),repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(255,215,0,.03) 10px,rgba(255,215,0,.03) 20px);z-index:0;pointer-events:none}.decorative-corner{position:fixed;width:120px;height:120px;background:radial-gradient(circle at center,rgba(255,215,0,.3),transparent 70%);border:3px solid rgba(255,215,0,.4);z-index:1;pointer-events:none}.decorative-corner.top-left{top:0;left:0;border-width:3px 0 0 3px;border-radius:0 0 100%}.decorative-corner.top-right{top:0;right:0;border-width:3px 3px 0 0;border-radius:0 0 0 100%}.decorative-corner.bottom-left{bottom:0;left:0;border-width:0 0 3px 3px;border-radius:0 100% 0 0}.decorative-corner.bottom-right{bottom:0;right:0;border-width:0 3px 3px 0;border-radius:100% 0 0}.kalash-decoration{position:fixed;z-index:1;animation:flicker 3s infinite alternate}.kalash-decoration img{width:60px;height:60px;filter:drop-shadow(0 0 10px rgba(255,215,0,.6))}.kalash-decoration.left{top:140px;left:20px}.kalash-decoration.right{top:140px;right:20px}@keyframes flicker{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.container{max-width:550px;margin:0 auto;background:#fff;border-radius:20px;box-shadow:0 0 0 4px gold,0 0 0 8px #8b0000,0 20px 60px #00000080;overflow:hidden;position:relative;z-index:2}.logo-container{background:linear-gradient(to bottom,#fff,#fffef8);padding:25px 20px;text-align:center;border-bottom:3px solid #FFD700;position:relative}.logo-container:after{content:"";position:absolute;bottom:-3px;left:0;right:0;height:3px;background:linear-gradient(90deg,#8b0000,gold,#8b0000)}.company-logo{max-width:220px;height:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.invitation-header{background:linear-gradient(135deg,rgba(139,0,0,.1) 0%,transparent 50%,rgba(139,0,0,.1) 100%),linear-gradient(135deg,#8b0000,brown,#8b0000);color:gold;padding:40px 20px 35px;text-align:center;border-bottom:5px solid #FFD700;position:relative;box-shadow:inset 0 -30px 40px #0003}.kalash-icon{margin-bottom:15px;animation:pulse 3s ease-in-out infinite}.kalash-icon img.kalash-img{width:80px;height:80px;filter:drop-shadow(0 0 20px rgba(255,215,0,.8)) drop-shadow(0 4px 8px rgba(0,0,0,.3))}@keyframes pulse{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.08) translateY(-5px)}}.invitation-header h1{font-size:2.2em;margin-bottom:18px;text-shadow:0 0 20px rgba(255,215,0,.5),2px 2px 4px rgba(0,0,0,.5),0 0 40px rgba(255,215,0,.3);letter-spacing:4px;font-weight:700;font-family:Georgia,serif}.event-details h2{color:#fff;font-size:1.6em;margin-bottom:12px;text-shadow:2px 2px 4px rgba(0,0,0,.4);font-weight:600}.event-details p{color:#fffacd;margin:6px 0;font-size:1.1em;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.date{font-size:1.7em!important;font-weight:700;color:gold!important;margin:18px 0!important;text-shadow:0 0 15px rgba(255,215,0,.8),2px 2px 4px rgba(0,0,0,.5);letter-spacing:1px}.time{font-weight:700;font-size:1.15em!important}.note{font-style:italic;margin-top:12px!important;color:khaki}.rsvp-form{padding:35px 30px;background:linear-gradient(to bottom,#fff,#fffef8)}@media (max-width: 768px){.invitation-header h1{font-size:1.6em}.kalash-icon img.kalash-img{width:60px;height:60px}.rsvp-form{padding:25px 20px}.logo-container img{max-width:160px}.kalash-decoration img{width:40px;height:40px}.kalash-decoration.left{left:10px}.kalash-decoration.right{right:10px}.decorative-corner{width:80px;height:80px}.container{box-shadow:0 0 0 3px gold,0 0 0 6px #8b0000,0 15px 40px #0006}.rsvp-header{flex-direction:column;align-items:flex-start}}
