@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@700&display=swap";.header{display:flex;justify-content:space-between;align-items:center;padding:15px 40px;background:#1c1c1e40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 10px #000c;position:sticky;top:0;z-index:1000;transition:background .3s ease}.header:hover{background:#23233240}.left-section,.right-section{display:flex;align-items:center}.logo{display:flex;align-items:center;text-decoration:none;margin-right:20px;transition:transform .3s ease}.logo h2{font-size:26px;color:#61dafb;margin-left:10px;font-weight:700;letter-spacing:1.5px}.navigation{display:flex}.nav-links{display:flex;list-style:none;margin-left:20px}.nav-links li{margin:0 15px}.nav-links a{color:#f7f7f7;font-size:1rem;font-weight:600;position:relative;text-transform:uppercase;letter-spacing:1px;transition:color .3s ease}.nav-links a:before{content:"";position:absolute;width:0;height:2px;bottom:-5px;left:50%;background-color:#61dafb;transition:width .3s ease,left .3s ease}.nav-links a:hover:before{width:100%;left:0}.nav-links a:hover{color:#21a1f1}.right-section{display:flex;gap:10px;position:relative}.connect-btn,.profile-btn{display:flex;align-items:center;justify-content:center;background:#2c2c2ecc;color:#fff;border:none;padding:10px 15px;cursor:pointer;transition:background .3s ease,transform .3s ease,box-shadow .3s ease;border-radius:20px;font-weight:700;box-shadow:0 4px 12px #0003;position:relative;gap:10px}.connect-btn.connected{background:#3c3c46cc;box-shadow:0 0 0 3px #4dff63cc}.connect-btn.error{background:#3c3c46cc;box-shadow:0 0 0 3px #ff4d4dcc}.connect-btn:hover,.profile-btn:hover{background:#3c3c46cc;transform:translateY(-3px);box-shadow:0 6px 20px #0000004d}.connect-btn:focus,.profile-btn:focus{outline:none;box-shadow:0 0 0 3px #4db5ff80}.wallet-icon,.profile-icon{width:22px;height:22px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.2));transition:transform .3s ease,filter .3s ease}.profile-btn .profile-icon{margin:0}.connect-btn .wallet-icon{filter:drop-shadow(0 4px 6px rgba(0,0,0,.2));transition:transform .3s ease,filter .3s ease}.connect-btn:hover .wallet-icon{transform:scale(1.1);filter:drop-shadow(0 6px 8px rgba(0,0,0,.3))}.tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:10px;border-radius:5px;box-shadow:0 4px 12px #0000004d;opacity:0;visibility:hidden;transition:opacity .3s ease;white-space:nowrap;z-index:2000}.profile-btn:hover .tooltip{opacity:1;visibility:visible}.tooltip-text{font-size:.9rem}.connect-btn.connected{background:#3c3c46cc}.profile-btn{position:relative}.wallet-info{display:none;position:absolute;top:120%;left:50%;transform:translate(-50%);background-color:#333;color:#f5f5f5;padding:10px;border-radius:8px;box-shadow:0 4px 8px #0000004d;font-size:.9rem;white-space:nowrap;z-index:100;max-width:300px;overflow:hidden;text-overflow:ellipsis}.profile-btn:hover .wallet-info{display:block}.wallet-address{display:block;font-size:1rem;margin-bottom:5px;word-wrap:break-word}.wallet-status{font-size:.9rem;color:#4db5ff}.home{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;background-image:var(--background-image);background-size:cover;background-position:center;background-repeat:no-repeat;color:#fff;text-align:center;padding:40px 20px;overflow:hidden}.home:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;z-index:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.home-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;animation:fadeInUp 1.5s ease-out}.home-title{font-size:4rem;font-family:Montserrat,sans-serif;margin-bottom:20px;letter-spacing:2px;animation:fadeIn 1.5s ease-in-out forwards;opacity:0;color:#f7f7f7}.home-subtitle{font-size:1.8rem;margin-bottom:40px;opacity:0;animation:fadeIn 1.5s ease-in-out .5s forwards;color:#f0f0f0}.home-button{background:linear-gradient(135deg,#21a1f1,#1e90ff);border:none;padding:15px 30px;font-size:1.2rem;color:#fff;cursor:pointer;border-radius:25px;box-shadow:0 8px 15px #0003;transition:transform .3s ease,box-shadow .3s ease}.home-button:hover{transform:translateY(-5px);box-shadow:0 15px 20px #0000004d}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.home-title{font-size:3rem}.home-subtitle{font-size:1.4rem}.home-button{padding:12px 24px;font-size:1rem}}.login-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.login-modal-content{background:#fff;padding:40px;border-radius:12px;width:350px;max-width:90%;position:relative;box-shadow:0 12px 20px #0000004d;animation:fadeInUp .8s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-modal-content h2{font-family:Montserrat,sans-serif;font-size:2.2rem;margin-top:0;margin-bottom:25px;color:#222;text-align:center}.login-modal-content input{width:calc(100% - 24px);padding:14px;margin:12px 0;border:1px solid #ccc;border-radius:6px;font-size:1rem;outline:none;box-shadow:inset 0 1px 3px #0000001a}.login-modal-content input:focus{border-color:#1e90ff;box-shadow:0 0 0 2px #1e90ff4d}.login-btn{background:linear-gradient(135deg,#21a1f1,#1e90ff);border:none;padding:14px;font-size:1.1rem;color:#fff;cursor:pointer;border-radius:25px;transition:background .3s ease,transform .3s ease,box-shadow .3s ease;box-shadow:0 8px 15px #0003}.login-btn:hover{background:linear-gradient(135deg,#1e90ff,#21a1f1);transform:translateY(-5px);box-shadow:0 12px 20px #0000004d}.close-btn{position:absolute;top:12px;right:12px;font-size:1.6rem;color:#222;cursor:pointer;transition:color .3s ease}.close-btn:hover{color:#1e90ff}.toggle-form{text-align:center;margin-top:15px}.toggle-form button{background:none;border:none;color:#1e90ff;cursor:pointer;text-decoration:underline;font-size:1rem;transition:color .3s ease}.toggle-form button:hover{color:#21a1f1}.candidates-section{padding:60px 20px;background-color:#1d1f21;color:#f5f5f5;position:relative}.candidates-header{display:flex;justify-content:center;align-items:center;position:relative;margin-bottom:40px}.candidates-title{text-align:center;font-size:2.8rem;color:#4db5ff;text-shadow:0 0 10px rgba(77,181,255,.3);animation:titleGlow 2s ease-in-out infinite alternate}.close-selection-button{position:absolute;right:0;top:50%;transform:translateY(-50%);background:none;border:none;color:#4db5ff;font-size:2rem;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.close-selection-button:hover{background-color:#4db5ff1a;transform:translateY(-50%) rotate(90deg)}.candidate-list{display:flex;flex-wrap:wrap;justify-content:center;gap:30px;margin-bottom:40px}.candidate-card,.add-candidate-card{width:250px;height:320px;background-color:#2a2d30;border-radius:15px;overflow:hidden;box-shadow:0 10px 25px #0000004d;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative}.candidate-card-inner{height:100%;display:flex;flex-direction:column}.candidate-image{width:100%;height:240px;object-fit:cover;transition:transform .3s cubic-bezier(.4,0,.2,1)}.candidate-card:hover .candidate-image{transform:scale(1.05)}.candidate-info{position:absolute;bottom:0;left:0;right:0;padding:15px;background:linear-gradient(to top,rgba(42,45,48,.95),transparent);display:flex;justify-content:space-between;align-items:flex-end}.candidate-name{display:flex;flex-direction:column;max-width:80%}.first-name{font-size:1.4rem;color:#f5f5f5;font-weight:700;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.last-name{font-size:1.1rem;color:#c8c8c8;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.remove-candidate-button{font-size:1.5rem;background-color:transparent;color:#ff4d4d;border:none;cursor:pointer;transition:all .3s ease;padding:5px;line-height:1;border-radius:50%}.remove-candidate-button:hover{background-color:#ff4d4d33;transform:rotate(90deg)}.add-candidate-card{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#4db5ff1a;border:2px dashed #4db5ff;transition:all .3s cubic-bezier(.4,0,.2,1)}.add-candidate-card:hover{background-color:#4db5ff33;border-color:#3ba0ff}.upload-icon{font-size:4rem;color:#4db5ff;margin-bottom:10px;transition:transform .3s ease}.add-candidate-card:hover .upload-icon{transform:rotate(90deg)}.add-candidate-text{color:#4db5ff;font-size:1.2rem;font-weight:700}.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.overlay-content{background:linear-gradient(135deg,#2a2d30,#1d1f21);padding:40px;border-radius:20px;width:90%;max-width:400px;position:relative;box-shadow:0 15px 30px #0000004d;border:1px solid rgba(77,181,255,.3)}.submit-election-form{background:linear-gradient(135deg,#2a2d30,#1d1f21);border:1px solid #4db5ff}.close-button{position:absolute;top:15px;right:20px;font-size:24px;color:#f5f5f5;background:none;border:none;cursor:pointer;transition:all .3s ease;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%}.close-button:hover{color:#4db5ff;background-color:#4db5ff1a;transform:rotate(90deg)}.overlay-title{color:#4db5ff;font-size:2rem;margin-bottom:30px;text-align:center;text-shadow:0 0 10px rgba(77,181,255,.3)}.form-group{margin-bottom:25px}.candidate-name-input,.election-name-input{width:100%;padding:12px 15px;border-radius:10px;border:2px solid #4db5ff;background-color:#ffffff0d;color:#f5f5f5;font-size:1.1rem;transition:all .3s ease;margin-bottom:10px}.candidate-name-input:focus,.election-name-input:focus{outline:none;border-color:#3ba0ff;box-shadow:0 0 15px #4db5ff4d;background-color:#ffffff1a}.image-upload-container{display:flex;flex-direction:column;align-items:center;pointer-events:none}.image-preview{width:150px;height:150px;object-fit:cover;border-radius:50%;margin-bottom:15px;border:3px solid #4db5ff;transition:all .3s ease;box-shadow:0 5px 15px #0000004d;pointer-events:auto;cursor:pointer}.image-preview:hover{transform:scale(1.05);box-shadow:0 8px 20px #4db5ff4d}.image-upload-text{color:#4db5ff;font-size:1rem;text-align:center;transition:color .3s ease}.add-candidate-button,.submit-election-button{width:100%;padding:12px 0;border-radius:10px;font-size:1.1rem;cursor:pointer;transition:all .3s ease;background-color:#4db5ff;color:#1d1f21;border:none;text-transform:uppercase;letter-spacing:1px;font-weight:700;box-shadow:0 5px 15px #4db5ff4d}.submit-election-button{max-width:300px;margin:0 auto;display:block}.add-candidate-button:hover,.submit-election-button:hover{background-color:#3ba0ff;box-shadow:0 8px 20px #4db5ff66}.error-message{display:none;color:#ff4d4d;font-size:.9rem;margin-top:10px;text-align:center;padding:10px;border-radius:5px;background-color:#ff4d4d1a}.error-message:not(:empty){display:block;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.candidates-title{font-size:2rem}.close-selection-button{font-size:1.5rem;width:30px;height:30px}.candidate-card,.add-candidate-card{width:100%;max-width:300px}.overlay-content{padding:30px 20px}.candidate-name-input,.election-name-input{font-size:1rem;padding:10px 12px}.image-preview{width:120px;height:120px}.add-candidate-button,.submit-election-button{font-size:1rem;padding:10px 0}}.date-scheduling-section{padding:60px 20px;max-width:1000px;margin:0 auto}.scheduling-background{background-color:#1d1f21;color:#f5f5f5;border-radius:20px;padding:40px 20px;position:relative;overflow:hidden}.scheduling-background:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#0b17201a,#0b50820d);z-index:1}.date-scheduling-title{text-align:center;font-size:2.8rem;margin-bottom:40px;color:#4db5ff;text-shadow:0 0 10px rgba(77,181,255,.3);animation:titleGlow 2s ease-in-out infinite alternate;position:relative;z-index:2}.date-scheduling-card{background-color:#2a2d30cc;border-radius:15px;padding:30px;max-width:600px;margin:0 auto;box-shadow:0 10px 25px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:2}.date-inputs{display:flex;justify-content:center;gap:30px;margin-bottom:30px}.date-input-group{display:flex;flex-direction:column;width:100%}.date-input-group label{margin-bottom:10px;color:#4db5ff;font-size:1.1rem;font-weight:500}.date-picker{padding:12px;border-radius:10px;border:2px solid #4db5ff;background-color:#ffffff0d;color:#f5f5f5;font-size:1.1rem;transition:all .3s ease}.date-picker:focus{outline:none;border-color:#3ba0ff;box-shadow:0 0 15px #4db5ff4d}.date-picker:disabled{opacity:.5;cursor:not-allowed}.error-message{color:#ff4d4d;font-size:.9rem;margin-top:5px}.submit-button{display:block;margin:0 auto;padding:12px 30px;border-radius:10px;background-color:#4db5ff;color:#1d1f21;border:none;font-size:1.1rem;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;font-weight:700}.submit-button:disabled{opacity:.5;cursor:not-allowed}.submit-button:not(:disabled):hover{background-color:#3ba0ff;transform:translateY(-2px);box-shadow:0 5px 15px #4db5ff4d}.success-card{max-width:500px;margin:0 auto;text-align:center;animation:slideUp .5s ease-out}.success-icon{width:60px;height:60px;background:#4db5ff;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:30px;color:#1d1f21;box-shadow:0 0 20px #4db5ff66}.success-title{color:#4db5ff;font-size:1.8rem;margin-bottom:20px;text-shadow:0 0 10px rgba(77,181,255,.3)}.success-details{display:flex;flex-direction:column;gap:15px}.success-date-item{display:flex;flex-direction:column;align-items:center;gap:5px}.success-label{color:#4db5ff;font-size:.9rem;font-weight:500}.success-value{color:#f5f5f5;font-size:1.1rem}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.date-inputs{flex-direction:column}.date-scheduling-title{font-size:2rem}.date-scheduling-card,.success-card{padding:20px}.success-icon{width:50px;height:50px;font-size:25px}.success-title{font-size:1.5rem}}.elections-section{padding:60px 20px;background-color:#1d1f21;color:#f5f5f5;position:relative}.elections-title{text-align:center;font-size:2.8rem;margin-bottom:40px;color:#4db5ff;text-shadow:0 0 10px rgba(77,181,255,.3);animation:titleGlow 2s ease-in-out infinite alternate}.election-list{display:flex;flex-wrap:wrap;justify-content:center;gap:30px;margin-bottom:40px}.election-card{width:300px;height:380px;background-color:#2a2d30;border-radius:15px;overflow:hidden;box-shadow:0 10px 25px #0000004d;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.election-card-inner{height:100%;display:flex;flex-direction:column}.election-image{width:100%;height:200px;object-fit:cover;transition:transform .3s cubic-bezier(.4,0,.2,1)}.election-card:hover .election-image{transform:scale(1.05)}.election-info{padding:20px;flex-grow:1;display:flex;flex-direction:column}.election-name{font-size:1.4rem;color:#4db5ff;margin-bottom:15px;font-weight:700}.election-dates{margin-bottom:15px}.date-item{display:flex;justify-content:space-between;margin-bottom:8px}.date-label{color:#888}.date-value{color:#f5f5f5}.candidates-preview{display:flex;align-items:center;margin-top:auto}.candidate-preview-image{width:40px;height:40px;border-radius:50%;border:2px solid #4db5ff;margin-right:-15px}.more-candidates{width:40px;height:40px;border-radius:50%;background-color:#4db5ff;color:#1d1f21;display:flex;justify-content:center;align-items:center;font-weight:700;margin-left:5px}.no-elections{width:100%;padding:40px;text-align:center;background-color:#4db5ff1a;border-radius:15px;border:2px dashed #4db5ff}.no-elections-icon{font-size:3rem;margin-bottom:15px}.no-elections h3{font-size:1.8rem;color:#4db5ff;margin-bottom:10px}.no-elections p{color:#888;font-size:1.1rem}@keyframes titleGlow{0%{text-shadow:0 0 10px rgba(77,181,255,.3)}to{text-shadow:0 0 20px rgba(77,181,255,.6)}}@media (max-width: 768px){.elections-title{font-size:2rem}.election-card{width:100%;max-width:300px}}.about-section{padding:60px 20px;background-color:#1a1a1a;color:#f0f0f0}.about-title{text-align:center;font-size:2.5rem;margin-bottom:40px}.about-content{max-width:800px;margin:0 auto;text-align:center;font-size:1.2rem;line-height:1.8}.about-animation{margin-top:30px;height:200px}.footer{padding:20px;background-color:#222;color:#f0f0f0;text-align:center}.footer p{margin:0;font-size:1rem}.footer a{color:#61dafb;transition:color .3s ease}.footer a:hover{color:#21a1f1}*{margin:0;padding:0;box-sizing:border-box;font-family:Poppins,sans-serif}body{position:relative;background-image:var(--background-image);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;margin:0;font-family:Poppins,sans-serif;color:#f0f0f0;line-height:1.6;scroll-behavior:smooth}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;background:#0009;z-index:-1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}a{text-decoration:none;color:#61dafb;transition:color .3s ease}a:hover{color:#21a1f1}.container{max-width:1200px;margin:0 auto;padding:20px}
