.admin-loading{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;justify-content:center;min-height:100vh}.spinner{animation:spin 1s ease-in-out infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:50px;width:50px}@keyframes spin{to{transform:rotate(1turn)}}.admin-loading p{color:#fff;font-size:18px;margin-top:20px}.admin-login-container{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:400px;padding:40px;text-align:center;width:100%}.login-card h1{align-items:center;color:#333;display:flex;font-size:24px;gap:10px;justify-content:center}.login-card h1,.login-form{margin-bottom:30px}.form-group{margin-bottom:20px;text-align:left}.form-group label{color:#666;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input{border:2px solid #e0e0e0;border-radius:10px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:all .3s ease;width:100%}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.error-message{background:#fee;border-left:4px solid #c33;border-radius:10px;color:#c33;font-size:14px;margin:20px 0;padding:12px;text-align:center}.login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 30px;transition:transform .2s ease,box-shadow .2s ease;width:100%}.login-button:hover:not(:disabled){box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.login-button:disabled{cursor:not-allowed;opacity:.7}.test-credentials{background:#f8f9fa;border-left:4px solid #667eea;border-radius:10px;margin-top:20px;padding:15px}.test-credentials h4{color:#333;font-size:14px;margin:0 0 10px}.test-credentials p{color:#666;font-size:13px;margin:5px 0}.back-button{background:#f5f5f5;border:2px solid #e0e0e0;border-radius:10px;color:#666;cursor:pointer;font-size:14px;margin-top:20px;padding:12px 20px;transition:all .3s ease;width:100%}.back-button:hover{background:#e0e0e0;border-color:#ccc}.admin-container{background:#f8f9fa;min-height:100vh;padding:20px}.admin-header{background:#fff;border-radius:15px;box-shadow:0 5px 15px #0000000d;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:25px;padding:25px 30px}.admin-header,.admin-header h1{align-items:center;display:flex}.admin-header h1{color:#333;font-size:24px;gap:10px;margin:0}.admin-header p{color:#666;font-size:14px;margin:5px 0 0}.admin-controls{display:flex;flex-wrap:wrap;gap:12px}.logout-button,.refresh-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .3s ease}.refresh-button{background:#e3f2fd;color:#1976d2}.refresh-button:hover{background:#bbdefb}.logout-button{background:#ffebee;color:#d32f2f}.logout-button:hover{background:#ffcdd2}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#fff;border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 5px 15px #0000000d;padding:25px;text-align:center;transition:transform .3s ease}.stat-card:hover{transform:translateY(-5px)}.stat-number{color:#667eea;font-size:36px;font-weight:700;margin-bottom:10px}.stat-label{color:#666;font-size:14px;letter-spacing:1px;text-transform:uppercase}.guests-table-container{background:#fff;border-radius:15px;box-shadow:0 5px 20px #00000014;overflow:hidden}.table-header{background:#f8f9fa;border-bottom:1px solid #eaeaea;justify-content:space-between;padding:20px 30px}.table-header,.table-header h2{align-items:center;display:flex}.table-header h2{color:#333;font-size:18px;gap:10px;margin:0}.small-refresh{align-items:center;background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;gap:5px;padding:8px 16px;transition:background .3s ease}.small-refresh:hover{background:#5a6fd8}.no-guests{color:#999;font-size:16px;padding:50px;text-align:center}.no-guests p{margin-bottom:20px}.table-wrapper{max-width:100%;overflow-x:auto}.guests-table{border-collapse:initial;border-spacing:0;min-width:1200px;width:100%}.guests-table thead{background:linear-gradient(135deg,#667eea,#764ba2)}.guests-table th{border-right:1px solid #ffffff1a;color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.guests-table th:last-child{border-right:none}.guests-table tbody tr{transition:background .2s ease}.guests-table tbody tr:nth-child(2n){background:#fafafa}.guests-table tbody tr:hover{background:#f0f4ff}.guests-table td{border-bottom:1px solid #f0f0f0;color:#333;font-size:14px;padding:14px 12px;white-space:nowrap}.guests-table td:first-child{font-weight:600}.attendance-yes{color:#2e7d32;font-weight:500}.attendance-no{color:#d32f2f;font-weight:500}.transfer-yes{color:#1565c0;font-weight:500}.transfer-no{color:#666;font-weight:500}.delete-button{align-items:center;background:#ffebee;border:none;border-radius:6px;color:#d32f2f;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .3s ease}.delete-button:hover{background:#ffcdd2;transform:scale(1.05)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.admin-container,.login-card{animation:fadeIn .5s ease-out}@media (max-width:768px){.admin-container{padding:10px}.admin-header{flex-direction:column;padding:20px;text-align:center}.admin-controls{justify-content:center}.table-header{flex-direction:column;gap:15px;padding:15px;text-align:center}.login-card{margin:0 10px;padding:30px 20px}.stats-grid{grid-template-columns:1fr}.guests-table{font-size:12px}.guests-table td,.guests-table th{padding:10px 8px}}@font-face{font-family:WonderGardenScript-Regular;src:url(/static/media/wondergardenscript-regular.31d6cfe0d16ae931b73c.eot);src:url(/static/media/wondergardenscript-regular.31d6cfe0d16ae931b73c.eot?#iefix) format("embedded-opentype"),url(/static/media/wondergardenscript-regular.10f9cc658621d02c365c.woff2) format("woff2"),url(/static/media/wondergardenscript-regular.31d6cfe0d16ae931b73c.woff) format("woff"),url(/static/media/wondergardenscript-regular.a828455e7c42b1d7b6ea.ttf) format("truetype"),url(/static/media/wondergardenscript-regular.5e00bd235b56f7c304dc.svg#wondergardenscript-regular) format("svg")}*{font-family:Cormorant,serif;margin:0;padding:0}html{font-size:16px}.main{background-color:#d3d4d4;color:#000;padding-bottom:5rem}.mainWelcomePage{display:block;height:100vh;position:relative;text-align:center;text-transform:uppercase;width:100%}.header{font-size:1.4rem;height:20vh;letter-spacing:.1rem;text-align:center;text-transform:uppercase}.header,.ourWedding{align-items:center;display:flex;justify-content:center;width:100%}.ourWedding{color:#fff;font-size:8rem;font-weight:100;height:45vh;letter-spacing:.3rem}.ourName{color:#000;font-size:18rem;height:45vh;height:25rem;left:48%;line-height:7rem;text-transform:none;top:44%;transform:translate(-50%,-50%)}.ourName,.ourName p{font-family:WonderGardenScript-Regular;position:absolute}.ourName p{font-size:13rem;right:5.5rem;top:7rem}.footer{align-items:center;display:block;height:15vh;justify-content:center;padding-top:50px;text-align:center}.footer p{font-size:1.4rem;letter-spacing:.1rem;padding:8px;text-transform:uppercase}.footer .date{font-family:Great Vibes;font-size:2.2rem;font-weight:400;text-transform:none}.countdown{display:inline-flex;font-weight:500;height:20vh;justify-content:center;margin-top:2rem;text-align:center;text-transform:lowercase}.dateCountdown{font-family:Great Vibes;font-size:2rem;margin:0 1rem}.mainDiscrPage{background-color:#ffffffdc;margin-top:5rem;margin-inline:auto;padding:4rem 0;text-align:center;width:50%}.dearGuest{align-items:center;display:flex;font-family:WonderGardenScript-Regular;font-size:10rem;height:20vh;justify-content:center;line-height:4rem;margin:0 auto;text-align:center;width:80%}.repeatText{font-size:1.5rem;margin:4rem auto}.repeatText,.titleRepeatText{line-height:2rem;text-align:center;width:60%}.titleRepeatText{font-size:1.8rem;font-weight:500;margin:3rem auto;text-transform:uppercase}.dateWed{font-family:Great Vibes;font-size:3rem;letter-spacing:.2rem;text-align:center}.ourSharedPhoto{margin:12rem 0}.sharedPhotoLeft,.sharedPhotoRight{border-radius:50%;display:flex;height:18vw;justify-content:center;margin:-7% auto;text-align:center;width:18vw}.sharedPhotoRight{margin-right:16%}.sharedPhotoLeft{margin-left:16%}.ourPhotoContainer{gap:10%;margin:5rem 0 1rem}.ourPhoto,.ourPhotoContainer{display:flex;justify-content:center}.ourPhoto{border-radius:50%;height:18vw;text-align:center;width:18vw}.brideRole{font-family:WonderGardenScript-Regular;font-size:10rem;margin:1rem 0}.colorScheme{display:flex;gap:1rem;justify-content:center;margin:0 auto;max-width:80%;padding:1rem}.colorScheme div{border-radius:50%;height:5vw;margin:0 .6rem;width:5vw}.color1{background-color:#5d4636}.color2{background-color:#856a57}.color3{background-color:#e1d3c6}.color4{background-color:#aebea4}.color5{background-color:#5e6845}.timetable{background-color:#d3d4d4;margin:6rem auto;padding:1.5rem 0;text-align:center;width:80%}.wedTimetable{align-items:center;display:flex;font-family:WonderGardenScript-Regular;font-size:10rem;font-weight:400;height:auto;justify-content:center;line-height:4rem;margin:6rem 0;text-align:center}.elTimetable{display:flex;justify-content:start;margin:4rem 2rem}.timeOfTable{font-size:2rem;font-weight:700;margin:auto 2rem}.inviteOfTable h2{font-size:1.7rem}.inviteOfTable div{font-size:1.5rem}.simple-slider{margin:5rem auto;max-width:80%;text-align:center}.slider-photo{border-radius:8px;box-shadow:0 3px 10px #0000001a;height:auto;max-height:60vh;max-width:100%;width:auto}.slider-controls{align-items:center;display:flex;gap:2rem;justify-content:center;margin-top:1rem}.control-btn{background:#f0f0f0;border:none;border-radius:50%;cursor:pointer;font-size:18px;height:40px;transition:background .3s;width:40px}.control-btn:hover{background:#ddd}.slider-info{color:#666;font-size:16px}.yandexMap{height:50vh;margin:2rem auto 4rem;width:80%}.formBackground{background-color:#fff;margin:0 auto;text-align:center;width:80%}.form{margin:0 auto;padding:2rem 0;text-align:start;width:60%}.form h3{margin:1rem 0;text-align:center}.form form,.form h3{font-size:1.4rem}.serverButton{align-items:center;background-color:#d3d3d3;border-radius:1rem;display:flex;font-size:1.5rem;height:5vh;justify-content:center;margin:2rem auto;text-align:center;width:50%}.serverButton:hover{background-color:#aaa;transition:.5s}.submittedData{border-top:1px solid #ccc;margin-top:20px;padding-top:10px}@media (max-width:1600px){html{font-size:15px}}@media (max-width:1366px){html{font-size:14px}}@media (max-width:1024px){html{font-size:13px}.mainDiscrPage{width:70%}.ourPhoto,.sharedPhotoLeft,.sharedPhotoRight{height:25vw;width:25vw}}@media (max-width:820px){html{font-size:12px}.header{font-size:2rem}.ourWedding{font-size:10rem}.ourName{font-size:20rem}.ourName p{font-size:15rem}.footer .date{font-size:3rem}.footer p{font-size:1.8rem}.dateCountdown{font-size:3rem}.mainDiscrPage{width:80%}.repeatText{width:70%}.repeatText,.titleRepeatText{font-size:2rem}.ourPhoto,.sharedPhotoLeft,.sharedPhotoRight{height:30vw;width:30vw}.ourPhotoContainer{gap:5%}.colorScheme div{height:8vw;width:8vw}.wedTimetable{font-size:11rem}.timeOfTable{font-size:2.2rem}.inviteOfTable h2{font-size:2rem}.inviteOfTable div{font-size:1.7rem}.yandexMap{height:30vh}}@media (max-width:480px){html{font-size:10px}.header{font-size:1.5rem}.ourWedding{font-size:8rem}.ourName{font-size:17rem}.ourName p{font-size:13rem}.footer .date{font-size:2.5rem}.footer p{font-size:1.5rem}.dateCountdown{font-size:2.3rem}.mainDiscrPage{width:90%}.repeatText,.titleRepeatText{font-size:1.8rem}.ourPhoto,.sharedPhotoLeft,.sharedPhotoRight{height:35vw;width:35vw}.brideRole{font-size:8rem;margin:1rem 0}.timetable{width:90%}.colorScheme div{height:11vw;margin:0 .2rem;width:11vw}.yandexMap{width:90%}.simple-slider{max-width:90%}}@media (max-width:320px){html{font-size:8px}.header{font-size:2rem}.ourWedding{font-size:10rem}.ourName{font-size:20rem}.ourName p{font-size:15rem}.footer .date{font-size:3rem}.footer p{font-size:1.8rem}.dateCountdown{font-size:3rem}}
/*# sourceMappingURL=main.da69557f.css.map*/