body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.eci-footer{background:linear-gradient(135deg,#1e293b,#334155);color:#e2e8f0;padding:30px 20px 15px;position:relative}.eci-footer:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:3px;left:0;position:absolute;right:0;top:0}.footer-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto;max-width:1200px;padding-bottom:20px}.footer-section h4{color:#fff;font-size:15px;font-weight:600;margin-bottom:12px}.footer-links{display:flex;flex-direction:column;gap:8px}.footer-links button{background:none;border:none;color:#cbd5e1;cursor:pointer;font-family:inherit;font-size:13px;padding:0;text-align:left;transition:color .3s ease}.footer-links button:hover{color:#667eea}.footer-contact{display:flex;flex-direction:column;gap:8px}.footer-contact p{align-items:center;color:#cbd5e1;display:flex;font-size:13px;gap:8px;margin:0}.footer-contact i{color:#667eea;font-size:12px;width:14px}.footer-bottom{background:#0003;border-top:1px solid #ffffff1a;padding:12px 0;text-align:center}.footer-bottom p{color:#94a3b8;font-size:12px;margin:0}@media (max-width:768px){.eci-footer{padding:25px 15px 12px}.footer-container{gap:20px;grid-template-columns:1fr;padding-bottom:15px}.footer-section h4{font-size:14px;margin-bottom:10px}.footer-contact p,.footer-links button{font-size:12px}.footer-bottom p{font-size:11px}}.language-selector{position:relative}.language-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:.9em;font-weight:700;gap:8px;padding:8px 14px;transition:all .3s ease}.language-btn:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea33;transform:translateY(-2px)}.language-btn .flag{font-size:1.2em}.language-btn .lang-code{font-weight:800;letter-spacing:.5px}.language-btn i{font-size:.75em;margin-left:4px;transition:transform .3s ease}.language-dropdown{animation:slideDown .3s ease;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 30px #00000026;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.language-option{align-items:center;background:#fff;border:none;color:#475569;cursor:pointer;display:flex;font-weight:600;gap:10px;padding:12px 16px;position:relative;transition:all .3s ease;width:100%}.language-option:hover{background:#f8fafc;color:#667eea}.language-option.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.language-option .flag{font-size:1.4em}.language-option .lang-name{flex:1 1;font-size:.95em;text-align:left}.language-option .check-icon{color:#fff;font-size:.9em}@media (max-width:600px){.language-dropdown{left:0;right:auto}}.login-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-container{animation:slideUp .5s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:480px;overflow:hidden;width:100%}.login-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px 40px;text-align:center}.login-icon{font-size:3em;margin-bottom:15px}.login-header h1{font-size:1.8em;font-weight:800;margin:0 0 5px}.login-header p{font-size:.9em;margin:0;opacity:.9}.login-body{padding:30px 40px}.language-selector-wrapper{display:flex;justify-content:center;margin-bottom:10px}.credentials-info{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;color:#495057;font-size:.9em;margin-bottom:25px;padding:15px}.credentials-info strong{color:#212529;display:block;margin-bottom:10px}.credentials-details{display:flex;flex-direction:column;gap:5px}.credentials-details code{background:#fff;border:1px solid #e9ecef;border-radius:4px;color:#667eea;font-weight:600;padding:2px 8px}.error-message{animation:shake .4s ease-in-out;background:#fee;border:1px solid #fcc;border-radius:10px;color:#c33;margin-bottom:25px}.login-form{display:flex;flex-direction:column;gap:5px}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:#999;font-size:1em;left:15px;pointer-events:none;position:absolute}.form-input{border:2px solid #e0e0e0;border-radius:10px;box-sizing:border-box;font-size:16px;padding:15px 15px 15px 45px;transition:all .3s ease;width:100%}.form-input::placeholder{color:#999}.password-toggle{color:#999;cursor:pointer;position:absolute;right:15px;transition:color .3s ease}.password-toggle:hover{color:#667eea}.remember-me{align-items:center;display:flex;gap:8px}.remember-me input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:18px;width:18px}.remember-me label{color:#495057;cursor:pointer;font-size:.9em}.login-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;margin-top:10px;padding:15px;transition:all .3s ease;width:100%}.login-button:hover:not(:disabled){box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{background:#ccc;cursor:not-allowed}.login-button.loading{background:#999}.login-footer-links{display:flex;justify-content:center;margin-top:15px}.back-button{align-items:center;background:none;border:none;color:#667eea;display:flex;font-size:.95em;font-weight:600;gap:8px;transition:all .3s ease}.back-button:hover{background:#f0f0f0;transform:translateX(-3px)}.back-button i{transition:transform .3s ease}.back-button:hover i{transform:translateX(-3px)}.login-footer{background:#fafafa;border-top:1px solid #f0f0f0;color:#999;font-size:.85em;padding:20px;text-align:center}.login-footer i{margin-right:5px}@media (max-width:768px){.login-page{padding:15px}.login-container{max-width:100%}.login-header{padding:30px 20px}.login-icon{font-size:3em}.login-header h1{font-size:1.5em}.login-body{padding:30px 20px}}@media (max-width:480px){.login-header{padding:25px 15px}.login-icon{font-size:2.5em}.login-header h1{font-size:1.3em}.login-body{padding:25px 15px}.form-input{font-size:15px;padding:12px 12px 12px 40px}.login-button{font-size:15px;padding:13px}}@media (hover:none) and (pointer:coarse){.back-button,.form-input,.login-button{min-height:44px}}.data-import-container{animation:fadeIn .5s ease;background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014}.import-header{border-bottom:2px solid #f0f0f0;padding:30px}.import-header h2{align-items:center;color:#333;display:flex;font-size:1.8em;font-weight:800;gap:12px;margin:0 0 10px}.import-header p{color:#666;font-size:.95em;margin:0}.alert-message{animation:slideDown .3s ease;border-radius:10px;gap:12px;margin:20px 30px;padding:15px 20px;position:relative}.alert-message.success{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.alert-message.error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.alert-message i{font-size:1.3em}.alert-message span{flex:1 1;font-weight:600}.close-alert{height:24px;transition:opacity .3s;width:24px}.progress-container{align-items:center;display:flex;gap:15px;margin:20px 30px}.progress-bar{border-radius:10px;height:8px}.progress-fill{border-radius:10px;transition:width .3s ease}.progress-text{color:#667eea;min-width:45px}.import-section,.instructions-section,.templates-section{border-bottom:2px solid #f0f0f0;padding:30px}.templates-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.instructions-section{background:#f8f9fa;border-bottom:none}.section-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.section-header i{color:#667eea;font-size:1.5em}.section-header h3{color:#333;font-size:1.3em;font-weight:800;margin:0}.section-description{color:#666;font-size:.95em;margin:0 0 20px}.template-buttons{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.template-btn{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:20px;text-align:center;transition:all .3s ease}.template-btn:hover{border-color:#667eea;box-shadow:0 6px 15px #667eea33;transform:translateY(-3px)}.template-btn.constituency:hover{border-color:#10b981}.template-btn.candidate:hover{border-color:#3b82f6}.template-btn i{color:#667eea;font-size:2.5em}.template-btn.constituency i{color:#10b981}.template-btn.candidate i{color:#3b82f6}.template-btn span{color:#333;font-size:1.05em;font-weight:700}.template-btn small{color:#999;font-size:.85em}.upload-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.file-upload-area{display:flex;flex-direction:column;gap:10px}.upload-label{color:#333;font-size:.95em;font-weight:700}.upload-box{background:#fafafa;border:3px dashed #d1d5db;border-radius:12px;cursor:pointer;padding:40px 20px;text-align:center;transition:all .3s ease}.upload-box:hover:not(.disabled){background:#f8f9fa;transform:translateY(-2px)}.upload-box.drag-active,.upload-box:hover:not(.disabled){border-color:#667eea;border-color:var(--upload-color,#667eea)}.upload-box.drag-active{background:#f0f4ff}.upload-box.disabled{cursor:not-allowed;opacity:.6}.upload-icon{color:#667eea;color:var(--upload-color,#667eea);display:block;font-size:3em;margin-bottom:15px}.upload-text{color:#666;margin:0}.upload-text strong{color:#333;display:block;font-size:1.05em;margin-bottom:8px}.upload-text small{color:#999;display:block;font-size:.85em}.upload-loading{align-items:center;color:#667eea;display:flex;font-weight:600;gap:10px;justify-content:center;margin-top:15px}.spinner-small{border:3px solid #f3f3f3;border-top-color:#667eea}.instructions-section h3{align-items:center;color:#333;display:flex;font-weight:800;gap:10px;margin-bottom:20px}.instructions-section h3 i{color:#667eea;font-size:1.2em}.instructions-section ul{margin:0;padding-left:25px}.instructions-section li{color:#555;line-height:1.6;margin-bottom:12px}@media (max-width:768px){.import-header,.import-section,.instructions-section,.templates-section{padding:20px}.import-header h2{font-size:1.5em}.template-buttons,.upload-grid{grid-template-columns:1fr}.upload-box{padding:30px 15px}.upload-icon{font-size:2.5em}.progress-container{align-items:stretch;flex-direction:column}.progress-text{text-align:center}}@media (max-width:480px){.import-header h2{font-size:1.3em}.import-header h2,.section-header{align-items:flex-start;flex-direction:column}.alert-message{flex-wrap:wrap}}.eci-scraper-container{animation:fadeIn .5s ease;background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014}.scraper-header{border-bottom:2px solid #f0f0f0;padding:30px}.scraper-header h2{align-items:center;color:#333;display:flex;font-size:1.8em;font-weight:800;gap:12px;margin:0 0 12px}.scraper-header h2 i{animation:robot-wave 2s ease-in-out infinite;color:#667eea}@keyframes robot-wave{0%,to{transform:rotate(0deg)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.scraper-header p{color:#666;font-size:.95em;margin:0}.scraper-header a{color:#667eea;font-weight:600;text-decoration:none;transition:color .3s}.scraper-header a:hover{color:#764ba2;text-decoration:underline}.scraper-header a i{font-size:.85em;margin-left:5px}.info-box{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-left:4px solid #ffc107;border-radius:12px;margin:30px;padding:25px}.info-box h3{align-items:center;color:#856404;display:flex;font-size:1.1em;font-weight:800;gap:10px;margin:0 0 15px}.info-box ul{list-style:none;margin:0;padding-left:0}.info-box li{align-items:center;color:#856404;display:flex;font-weight:500;gap:10px;padding:8px 0}.info-box li i{color:#28a745;font-size:1.1em}.progress-section{animation:slideDown .3s ease;background:linear-gradient(135deg,#f0f4ff,#e9ecef);border:2px solid #667eea;border-radius:12px;margin:30px;padding:25px}.progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.progress-label{color:#333;font-weight:700}.progress-percentage{color:#667eea;font-size:1.2em;font-weight:800}.progress-bar-container{background:#e5e7eb;border-radius:10px;box-shadow:inset 0 2px 4px #0000001a;height:12px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:10px;box-shadow:0 2px 4px #667eea4d;height:100%;transition:width .3s ease}.current-step{align-items:center;color:#667eea;display:flex;font-weight:600;gap:10px;margin-top:12px}.current-step i{animation:spin 1s linear infinite}.status-section{background:#f8f9fa;border-radius:12px;margin:30px;padding:25px}.status-section h3{align-items:center;color:#333;display:flex;font-size:1.2em;font-weight:800;gap:10px;margin:0 0 20px}.status-section h3 i{color:#667eea}.status-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.status-card{align-items:center;background:#fff;border-left:4px solid #667eea;border-left:4px solid var(--card-color,#667eea);border-radius:10px;box-shadow:0 2px 8px #00000014;display:flex;gap:15px;padding:20px;transition:all .3s ease}.status-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-3px)}.status-icon{align-items:center;background:#667eea;background:var(--card-color,#667eea);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.3em;height:50px;justify-content:center;width:50px}.status-content{flex:1 1}.status-label{color:#666;display:block;font-size:.85em;font-weight:600;margin-bottom:5px}.status-value{color:#333;display:block;font-size:1.3em;font-weight:800}.result-box{animation:slideDown .3s ease;border-radius:12px;margin:30px;padding:25px}.result-box.success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981}.result-box.error{background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #ef4444}.result-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.result-header i{font-size:2em}.result-box.success .result-header i{color:#10b981}.result-box.error .result-header i{color:#ef4444}.result-header h3{color:#333;font-size:1.3em;font-weight:800;margin:0}.result-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.result-item{align-items:center;background:#fff;border-radius:8px;display:flex;gap:12px;padding:15px}.result-item i{color:#667eea;font-size:1.5em}.result-label{color:#666;display:block;font-size:.85em;font-weight:600}.result-value{color:#333;display:block;font-size:1.2em;font-weight:800}.error-message{background:#fff;color:#ef4444;gap:10px;margin-bottom:15px;padding:15px}.close-result-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:10px 25px;transition:all .3s ease}.close-result-btn:hover{background:#764ba2;transform:translateY(-2px)}.action-buttons{padding:30px}.action-btn{font-size:1em}.action-btn.primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.action-btn.primary:hover:not(.disabled){box-shadow:0 6px 18px #10b9814d;transform:translateY(-2px)}.action-btn.primary.disabled{background:#ccc;cursor:not-allowed;opacity:.7}.action-btn.secondary{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.action-btn.secondary:hover{box-shadow:0 6px 18px #f59e0b4d;transform:translateY(-2px)}.spinner-btn{animation:spin 1s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.warning-notice{align-items:start;background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-left:4px solid #ffc107;border-radius:8px;display:flex;gap:15px;margin:0 30px 30px;padding:20px}.warning-notice i{color:#856404;flex-shrink:0;font-size:1.5em}.warning-notice div{color:#856404;line-height:1.6}.warning-notice strong{display:block;margin-bottom:5px}@media (max-width:768px){.action-buttons,.info-box,.progress-section,.result-box,.scraper-header,.status-section,.warning-notice{margin:20px;padding:20px}.scraper-header h2{font-size:1.5em}.result-grid,.status-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.action-btn{justify-content:center;width:100%}}@media (max-width:480px){.scraper-header h2{font-size:1.3em}.progress-header,.scraper-header h2{align-items:flex-start;flex-direction:column}.progress-header{gap:8px}.status-card{flex-direction:column;text-align:center}}.add-constituency-container{animation:fadeIn .5s ease;background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014}.constituency-form{padding:30px}.reset-btn,.submit-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:1em;font-weight:700;gap:10px;padding:15px 30px;transition:all .3s ease}.submit-btn{flex:1 1}.submit-btn:hover:not(:disabled){box-shadow:0 6px 18px #667eea4d}.submit-btn:disabled{background:#ccc}.reset-btn{background:#fff;border:2px solid #e5e7eb;color:#666}.reset-btn:hover{border-color:#667eea;color:#667eea}@media (max-width:768px){.constituency-form,.form-header{padding:20px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}}.phase-select{background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#1e293b;cursor:pointer;font-size:1em;font-weight:500;padding:12px 16px;transition:all .3s ease;width:100%}.phase-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.phase-select option{font-weight:500;padding:10px}.phase-select:hover{border-color:#cbd5e1}.add-candidate-container{animation:fadeIn .5s ease;background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014}.form-header{border-bottom:2px solid #f0f0f0;padding:30px}.form-header h2{align-items:center;color:#333;display:flex;font-size:1.8em;font-weight:800;gap:12px;margin:0 0 10px}.form-header h2 i{color:#667eea}.form-header p{color:#666;margin:0}.alert-success{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.alert-error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.alert-close{background:none;border:none;color:inherit;cursor:pointer;font-size:1.5em;margin-left:auto;opacity:.7;transition:opacity .2s}.alert-close:hover{opacity:1}.candidate-form{padding:30px}.form-section{background:#f8f9fa;border-radius:12px;padding:25px;transition:all .3s ease}.form-section:hover{box-shadow:0 2px 8px #0000000d}.form-section h3{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;font-size:1.2em;font-weight:800;gap:10px;margin:0 0 20px;padding-bottom:15px}.form-section h3 i{color:#667eea}.party-section{background:linear-gradient(135deg,#667eea14,#764ba214);border:2px solid #667eea33}.party-selector-wrapper{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px}.party-dropdown{flex:1 1;min-width:300px}.party-symbol-display{align-items:center;animation:scaleIn .3s ease;background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:16px;min-width:220px;padding:16px}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.symbol-preview-box{align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;display:flex;flex-shrink:0;height:70px;justify-content:center;overflow:hidden;width:70px}.symbol-preview-box img{height:100%;object-fit:contain;padding:6px;width:100%}.no-symbol{color:#9ca3af;text-align:center}.no-symbol i{display:block;font-size:28px;margin-bottom:4px}.no-symbol p{font-size:11px;font-weight:600;margin:0}.symbol-info{flex:1 1}.symbol-info p{line-height:1.5;margin:0}.symbol-info p:first-child{color:#333;font-size:16px;font-weight:700}.party-full-name{color:#6b7280;font-size:13px;margin-top:4px!important}.custom-symbol-upload{background:#fff;border:2px dashed #d1d5db;border-radius:8px;margin-top:20px;padding:16px}.upload-box{display:inline-block;position:relative}.upload-box input[type=file]{height:0;opacity:0;pointer-events:none;position:absolute;width:0}.upload-label{align-items:center;background:#f3f4f6;border:2px dashed #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;font-weight:600;gap:10px;padding:12px 20px;transition:all .3s ease}.upload-label:hover{background:#e5e7eb;border-color:#9ca3af;transform:translateY(-1px)}.upload-label i{color:#667eea;font-size:18px}.custom-symbol-upload small{color:#6b7280;display:block;font-size:12px;margin-top:8px}.form-group.full-width{grid-column:1/-1}.form-group label{gap:8px}.form-group label i{color:#667eea}.form-group input,.form-group select,.form-group textarea{background:#fff;border:2px solid #e5e7eb;font-size:15px;padding:12px 15px}.form-group textarea{min-height:80px;resize:vertical}.form-group input:disabled,.form-group select:disabled{background:#f3f4f6}.photo-upload-group{position:relative}.photo-upload-group input[type=file]{display:none}.photo-upload-label{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;display:inline-flex;font-weight:600;gap:10px;padding:12px 20px;transition:all .3s ease}.photo-upload-label:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.photo-upload-label i{font-size:18px}.photo-preview{border:3px solid #667eea;border-radius:12px;box-shadow:0 4px 12px #0000001a;height:150px;margin-top:16px;overflow:hidden;position:relative;width:150px}.photo-preview img{height:100%;object-fit:cover;width:100%}.btn{border-radius:10px;display:flex;font-family:inherit;font-size:1em;font-weight:700;gap:10px;justify-content:center;padding:15px 30px;transition:all .3s ease}.btn-primary{flex:1 1;min-height:52px}.btn-primary:hover:not(:disabled){box-shadow:0 6px 18px #667eea4d}.btn-primary:disabled{background:#ccc;cursor:not-allowed;transform:none}.btn-secondary{border:2px solid #e5e7eb;color:#666}.spinner{border:3px solid #ffffff4d;border-top-color:#fff;height:20px;width:20px}@media (max-width:768px){.candidate-form,.form-header{padding:20px}.form-section{padding:15px}.form-row{grid-template-columns:1fr}.form-actions,.party-selector-wrapper{flex-direction:column}.party-dropdown,.party-symbol-display{min-width:100%;width:100%}.btn{width:100%}}@media (max-width:480px){.form-header h2{font-size:1.4em}.form-section h3{font-size:1.1em}.symbol-preview-box{height:60px;width:60px}}@media print{.form-actions,.photo-upload-label{display:none}.add-candidate-container{box-shadow:none}}.affidavit-upload-container{margin:1rem 0}.affidavit-upload-box{background:#fafafa;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;padding:2rem;text-align:center;transition:all .3s ease}.affidavit-upload-box:hover{background:#eff6ff;border-color:#3b82f6}.affidavit-upload-label{align-items:center;cursor:pointer;display:flex;flex-direction:column;gap:.5rem}.affidavit-upload-label i{color:#3b82f6;font-size:2rem}.affidavit-upload-label span{color:#1f2937;font-weight:500}.affidavit-upload-label small{color:#6b7280;font-size:.875rem}.affidavit-preview-wrapper{align-items:center;background:#f0fdf4;border:2px solid #22c55e;border-radius:8px;display:flex;justify-content:space-between;padding:1rem;position:relative}.affidavit-preview{align-items:center;display:flex;flex:1 1;gap:1rem}.affidavit-preview i{color:#dc2626;font-size:2rem}.affidavit-preview span{color:#1f2937;font-weight:500}.remove-affidavit-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;transition:all .3s ease;width:32px}.remove-affidavit-btn:hover{background:#dc2626;transform:scale(1.1)}.view-data-container{animation:fadeIn .5s ease;background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014;margin:0}.alert{animation:slideDown .3s ease-out;margin:15px 15px 0}.alert.success{border:1px solid #6ee7b7}.alert.error{border:1px solid #fca5a5}.close-alert{align-items:center;display:flex;font-size:24px;height:32px;justify-content:center;opacity:.6;transition:opacity .2s;width:32px}.view-header{border-bottom:2px solid #f0f0f0;padding:25px 20px}.view-header h2{align-items:center;color:#333;display:flex;font-size:1.5em;font-weight:800;gap:10px;margin:0 0 8px}.view-header h2 i{color:#667eea;font-size:.9em}.view-header p{color:#666;font-size:.9em;margin:0}.data-controls{background:#fafafa;border-bottom:1px solid #f0f0f0;display:flex;flex-direction:column;gap:12px;padding:15px}.data-type-selector{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;width:100%}.type-btn{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;font-size:.85em;font-weight:700;gap:8px;justify-content:center;min-height:48px;padding:12px 16px;transition:all .3s ease}.type-btn i{font-size:1.2em}.type-btn span{display:block}.type-btn:hover{border-color:#667eea;color:#667eea;transform:translateY(-1px)}.type-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 4px 12px #667eea4d;color:#fff}.search-box{width:100%}.search-box i{color:#999;left:15px;pointer-events:none}.search-box input{border:2px solid #e5e7eb;border-radius:10px;font-size:16px;min-height:48px;padding:12px 15px 12px 45px}.search-box input:focus{box-shadow:0 0 0 3px #667eea1a}.refresh-btn{background:linear-gradient(135deg,#f59e0b,#d97706);font-size:.9em;justify-content:center;min-height:48px;padding:12px 20px;width:100%}.refresh-btn:hover{box-shadow:0 4px 12px #f59e0b4d}.refresh-btn i{font-size:1.1em}.refresh-btn span{display:block}.data-table-container{padding:15px}.data-count{color:#666;font-size:.85em;font-weight:600;margin-bottom:15px;padding:0 5px}.desktop-table{display:none;overflow-x:auto}.data-table{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.data-table th{font-size:.85em;text-transform:uppercase;white-space:nowrap}.data-table td{border-bottom:1px solid #f0f0f0;font-size:.95em;padding:12px 15px}.data-table tbody tr{transition:background .2s ease}.data-table tbody tr:hover{background:#f8f9fa}.candidate-photo{align-items:center;background:#f1f5f9;border-radius:50%;display:flex;height:50px;justify-content:center;overflow:hidden;width:50px}.candidate-photo img{height:100%;object-fit:cover;width:100%}.photo-placeholder{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:20px}.constituency-code{background:#dbeafe;border-radius:8px;color:#1e40af;display:inline-block;font-size:.85em}.constituency-cell{display:flex;flex-direction:column;gap:4px}.constituency-cell .code{color:#667eea;font-weight:700}.constituency-cell small{color:#64748b;font-size:.85em}.party-badge{border-radius:12px;font-size:.85em;white-space:nowrap}.criminal-badge{display:inline-block;font-size:.85em;font-weight:700;padding:4px 12px}.criminal-badge.no-cases{color:#065f46}.criminal-badge.has-cases{color:#991b1b}.action-buttons{gap:8px}.btn-action{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;height:36px;justify-content:center;transition:all .2s;width:36px}.btn-edit{background:#dbeafe;color:#1e40af}.btn-edit:hover{background:#3b82f6;color:#fff;transform:translateY(-2px)}.btn-delete{background:#fee2e2;color:#991b1b}.btn-delete:hover{background:#ef4444;color:#fff;transform:translateY(-2px)}.pagination{flex-wrap:wrap;margin-top:20px}.btn-page{align-items:center;border:2px solid #e2e8f0;border-radius:8px;color:#475569;display:flex;font-size:14px;font-weight:600;gap:6px;min-height:40px;padding:8px 16px;transition:all .2s}.btn-page:hover:not(:disabled){border-color:#667eea;color:#667eea;transform:translateY(-2px)}.btn-page.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.btn-page:disabled{cursor:not-allowed;opacity:.5}.page-numbers{flex-wrap:wrap}.page-ellipsis{color:#94a3b8;padding:8px}.modal-overlay{animation:fadeIn .2s ease-out;background:#00000080;overflow-y:auto}.modal-content{box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;margin:auto;max-width:800px}.modal-header{border-bottom:1px solid #e2e8f0}.modal-header h3{color:#1e293b;font-size:1.25em;font-weight:700;gap:12px}.modal-header .close-button{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;transition:all .2s;width:36px}.close-button:hover{background:#e2e8f0;color:#1e293b}.modal-body{flex:1 1;overflow-y:auto}.modal-footer{border-top:1px solid #e2e8f0;flex-wrap:wrap;padding:20px 24px}.form-section{margin-bottom:24px}.form-section h4{align-items:center;color:#1e293b;display:flex;font-size:1em;gap:10px;margin:0 0 16px}.form-section h4 i{color:#667eea}.form-group{margin-bottom:16px}.form-group label{color:#475569;font-size:.9em}.form-group input,.form-group select,.form-group textarea{border:2px solid #e2e8f0;font-size:14px;transition:all .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-row{grid-gap:16px;gap:16px;grid-template-columns:1fr 1fr}.field-hint{color:#94a3b8;display:block;font-size:.8em;margin-top:6px}.photo-upload-containers{align-items:center;background:linear-gradient(135deg,#f8f9ff,#f0f4ff);border:2px solid #e5e9f5;border-radius:16px;display:flex;flex-direction:column;justify-content:center;margin:20px 0;padding:20px;transition:all .3s ease}.photo-upload-containers:hover{border-color:#667eea;box-shadow:0 4px 20px #667eea1a}.photo-preview-wrappers{animation:fadeInScale .4s ease-out;margin-bottom:20px;position:relative;text-align:center}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.photo-preview-wrappers .photo-preview{border:4px solid #667eea;border-radius:16px;box-shadow:0 10px 30px #667eea33,0 4px 12px #0000001a;display:block;height:auto;margin:0 auto;max-height:280px;max-width:280px;object-fit:cover;transition:all .3s ease;width:100%}.photo-preview-wrappers .photo-preview:hover{box-shadow:0 12px 35px #667eea40,0 6px 16px #0000001f;transform:scale(1.02)}.photo-action-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:16px}.btn-upload-photo{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea59,0 2px 4px #0000001a;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:10px;letter-spacing:.5px;overflow:hidden;padding:12px 28px;position:relative;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-upload-photo:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn-upload-photo:hover:before{left:100%}.btn-upload-photo:hover{box-shadow:0 8px 20px #667eea73,0 4px 8px #00000026;transform:translateY(-3px)}.btn-upload-photo:active{box-shadow:0 4px 12px #667eea59,0 2px 4px #0000001a;transform:translateY(-1px)}.btn-upload-photo i{font-size:16px;transition:transform .3s}.btn-upload-photo:hover i{transform:scale(1.15)}.btn-remove-photo{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:10px;box-shadow:0 4px 12px #ef444459,0 2px 4px #0000001a;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:10px;letter-spacing:.5px;padding:12px 28px;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-remove-photo:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 8px 20px #ef444473,0 4px 8px #00000026;transform:translateY(-3px)}.btn-remove-photo:active{transform:translateY(-1px)}.btn-remove-photo i{font-size:16px;transition:transform .3s}.btn-remove-photo:hover i{transform:rotate(10deg) scale(1.15)}.photo-hint{background:#ffffffb3;border:1px solid #e5e7eb;border-radius:8px;color:#64748b;display:block;font-size:13px;font-weight:500;letter-spacing:.3px;margin-top:12px;padding:8px 16px;text-align:center}.photo-upload-box{align-items:center;background:#fff;border:3px dashed #cbd5e1;border-radius:16px;cursor:pointer;display:flex;height:280px;justify-content:center;overflow:hidden;position:relative;transition:all .3s ease;width:280px}.photo-upload-box:before{background:#667eea0d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .4s,height .4s;width:0}.photo-upload-box:hover:before{height:300px;width:300px}.photo-upload-box:hover{background:#f8f9ff;border-color:#667eea;transform:scale(1.02)}.photo-upload-label{align-items:center;cursor:pointer;display:flex;flex-direction:column;gap:12px;padding:30px;position:relative;text-align:center;z-index:1}.photo-upload-label i{color:#667eea;font-size:48px;transition:all .3s}.photo-upload-box:hover .photo-upload-label i{color:#764ba2;transform:scale(1.1)}.photo-upload-label span{color:#1e293b;font-size:16px;font-weight:600;margin-top:4px}.photo-upload-label small{color:#64748b;font-size:13px;font-weight:500}@media (max-width:768px){.photo-upload-container{margin:16px 0;padding:16px}.photo-preview,.photo-upload-box{height:240px;max-height:240px;max-width:240px;width:240px}.photo-action-buttons{flex-direction:column;gap:10px;width:100%}.btn-remove-photo,.btn-upload-photo{justify-content:center;padding:14px 20px;width:100%}.photo-hint{font-size:12px}}@media (max-width:480px){.photo-preview,.photo-upload-box{height:200px;max-height:200px;max-width:200px;width:200px}.photo-upload-label i{font-size:40px}.btn-remove-photo,.btn-upload-photo{font-size:13px;padding:12px 18px}}.btn-remove-photo:focus,.btn-upload-photo:focus{outline:3px solid #667eea66;outline-offset:2px}.btn-remove-photo:focus-visible,.btn-upload-photo:focus-visible{outline:3px solid #667eea;outline-offset:2px}.btn-remove-photo.loading,.btn-upload-photo.loading{opacity:.7;pointer-events:none;position:relative}.btn-remove-photo.loading:after,.btn-upload-photo.loading:after{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;content:"";height:16px;position:absolute;width:16px}.delete-modal{max-width:500px}.delete-info{background:#f8fafc;border-radius:8px;margin:16px 0;padding:16px;text-align:center}.delete-info strong{color:#1e293b;display:block;font-size:1.1em;margin-bottom:4px}.delete-info small{color:#64748b;font-size:.9em}.warning-text{color:#f59e0b;display:flex;font-size:.9em;justify-content:center}.btn,.warning-text{align-items:center;gap:8px}.btn{border:none;border-radius:8px;display:inline-flex;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s;white-space:nowrap}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-secondary{background:#f1f5f9;color:#475569}.btn-secondary:hover{background:#e2e8f0}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626;box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.btn:disabled{cursor:not-allowed;opacity:.6}.spinner-small{animation:spin .6s linear infinite;border:2px solid #ffffff4d}.mobile-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr}.data-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden;transition:all .3s ease}.data-card:hover{border-color:#667eea;box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.card-header{background:linear-gradient(135deg,#667eea,#764ba2);gap:10px;justify-content:space-between;padding:15px}.card-code{background:#fff3;border-radius:20px;color:#fff;font-size:.8em;font-weight:700;padding:4px 12px;white-space:nowrap}.card-name{color:#fff;flex:1 1;font-size:1em;font-weight:800;text-align:right}.card-body{display:flex;flex-direction:column;gap:10px;padding:15px}.card-row{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:8px 0}.card-row:last-child{border-bottom:none}.card-label{align-items:center;color:#666;display:flex;font-size:.85em;font-weight:600;gap:6px}.card-label i{color:#667eea;font-size:1.1em}.card-value{color:#333;font-size:.9em;font-weight:700;text-align:right}.loading-container,.no-data{padding:50px 20px;text-align:center}.spinner-large{border:4px solid #f3f3f3;height:50px;margin:0 auto 15px;width:50px}.loading-container p{color:#666;font-size:.9em}.no-data i{color:#e5e7eb;font-size:3em;margin-bottom:12px}.no-data p{color:#999;font-size:1em;font-weight:600}.error-container{background:#fee2e2;border-radius:12px;margin:20px;padding:60px 20px}.error-container i{color:#dc2626;display:block;font-size:3em;margin-bottom:15px}.error-container p{color:#991b1b;font-size:1em;font-weight:600;margin-bottom:20px}.retry-btn{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border-radius:10px;display:inline-flex;font-size:.9em;font-weight:700;gap:8px}.retry-btn:hover{box-shadow:0 4px 12px #dc26264d}@media (min-width:768px){.view-header{padding:30px}.view-header h2{font-size:1.8em}.data-controls{align-items:center;flex-direction:row;flex-wrap:wrap;padding:20px 30px}.data-type-selector{display:flex;width:auto}.search-box{flex:1 1;min-width:250px}.refresh-btn{width:auto}.data-table-container{padding:30px}.desktop-table{display:block}.mobile-cards{display:none}.form-row{grid-template-columns:1fr 1fr}.modal-footer{flex-wrap:nowrap}}@media (min-width:1024px){.view-data-container{border-radius:15px}.type-btn:hover{transform:translateY(-2px)}.data-table tbody tr:hover{background:#f8f9fa}}@media (max-width:767px){.form-row{grid-template-columns:1fr}.modal-content{max-height:95vh}.modal-body,.modal-footer,.modal-header{padding:16px}}@media (hover:none) and (pointer:coarse){.btn,.refresh-btn,.search-box input,.type-btn{min-height:48px}.search-box input{font-size:16px}.btn:hover,.data-card:hover,.refresh-btn:hover,.type-btn:hover{transform:none}.type-btn:active{opacity:.8}.refresh-btn:active{opacity:.9}.data-card:active{transform:scale(.98)}}.btn:focus-visible,.refresh-btn:focus-visible,.search-box input:focus-visible,.type-btn:focus-visible{outline:3px solid #fbbf24;outline-offset:2px}@media print{.view-data-container{border:1px solid #ddd;box-shadow:none}.action-buttons,.data-controls,.mobile-cards,.pagination{display:none!important}.desktop-table{display:block!important}.data-table{box-shadow:none}.data-table thead{background:#333!important}.data-table thead,.party-badge{-webkit-print-color-adjust:exact;print-color-adjust:exact}.party-badge{border:1px solid #333}}.card-photo{background:#f1f5f9;border-radius:50%;flex-shrink:0;height:50px;overflow:hidden;width:50px}.card-photo img{height:100%;object-fit:cover;width:100%}.photo-placeholder-small{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:20px;height:100%;justify-content:center;width:100%}.card-header{align-items:center;display:flex;gap:12px}.card-header-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.party-badge-small{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:inline-block;font-size:.75em;font-weight:700;padding:2px 8px;width:-webkit-fit-content;width:fit-content}.card-actions{border-top:1px solid #f0f0f0;display:flex;gap:8px;margin-top:12px;padding-top:12px}.card-actions .btn-action{align-items:center;border-radius:8px;display:flex;flex:1 1;font-size:.85em;font-weight:600;gap:6px;height:auto;justify-content:center;padding:8px 16px;width:auto}.card-actions .btn-action i{font-size:1em}.phase-badge{border-radius:12px;display:inline-block;font-size:.85em;font-weight:700;padding:4px 12px;text-align:center}.phase-badge.phase-1{background:linear-gradient(135deg,gold,orange);color:#333}.phase-badge.phase-2{background:linear-gradient(135deg,#ff69b4,#ff1493);color:#fff}.phase-badge.phase-none{background:#e2e8f0;color:#64748b}.party-symbol{align-items:center;display:flex;justify-content:center}.symbol-img{background:#fff;border:1px solid #e5e7eb;border-radius:6px;height:36px;object-fit:contain;padding:4px;width:36px}.no-symbol-icon{align-items:center;background:#f3f4f6;border-radius:6px;color:#9ca3af;display:flex;font-size:16px;height:36px;justify-content:center;width:36px}.party-cell{display:flex;flex-direction:column;gap:4px}.party-name{color:#6b7280;font-size:11px}.party-info-mobile{align-items:center;display:flex;gap:8px;margin-top:4px}.party-symbol-small{background:#fff;border:1px solid #e5e7eb;border-radius:4px;height:24px;object-fit:contain;padding:2px;width:24px}.affidavit-cell{align-items:center;display:flex;justify-content:center}.btn-affidavit{align-items:center;background:linear-gradient(135deg,#dc2626,#991b1b);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem .75rem;text-decoration:none;transition:all .3s ease}.btn-affidavit:hover{background:linear-gradient(135deg,#991b1b,#7f1d1d);box-shadow:0 4px 12px #dc26264d;transform:translateY(-2px)}.btn-affidavit i{font-size:1rem}.btn-affidavit span{display:inline}.btn-affidavit-mobile{align-items:center;background:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:500;gap:.5rem;padding:.5rem .75rem;transition:all .3s ease}.btn-affidavit-mobile:hover{background:#991b1b;transform:scale(1.05)}.btn-affidavit-mobile i{font-size:.875rem}@media (max-width:768px){.data-table td:nth-child(11),.data-table th:nth-child(11){display:none}}.constituency-name-link{align-items:center;color:#667eea;cursor:pointer;display:inline-flex;gap:6px;transition:all .3s ease}.constituency-name-link:hover{color:#764ba2;text-decoration:underline}.constituency-name-link i{font-size:14px;opacity:.8}.filter-banner{animation:slideDown .3s ease-out;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;justify-content:space-between;margin-bottom:20px;padding:15px 20px}.filter-banner,.filter-info{align-items:center;display:flex}.filter-info{flex:1 1;gap:12px}.filter-info i{font-size:18px}.filter-info strong{font-weight:700;margin:0 5px}.filter-info small{font-size:13px;margin-left:8px;opacity:.9}.clear-filter-btn{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:8px 16px;transition:all .3s ease}.clear-filter-btn:hover{background:#ffffff4d;transform:translateX(2px)}@media (max-width:768px){.filter-banner{align-items:flex-start;flex-direction:column;gap:12px}.clear-filter-btn{justify-content:center;width:100%}.filter-info{align-items:flex-start;flex-direction:column;gap:6px}.filter-info small{margin-left:0}}.slider-management-container{animation:fadeIn .5s ease;background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014}.slider-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;padding:30px}.slider-header h2{align-items:center;color:#333;display:flex;font-size:1.8em;font-weight:800;gap:12px;margin:0}.slider-header h2 i{color:#667eea}.add-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-weight:700;gap:8px;padding:12px 25px;transition:all .3s ease}.add-btn:hover{box-shadow:0 6px 18px #667eea66;transform:translateY(-2px)}.alert{border-radius:10px;margin:20px 30px;padding:15px 20px}.alert.success{background:#d1fae5}.alert.error{background:#fee2e2}.alert i{font-size:1.3em}.close-alert{font-size:1.5em;opacity:.7}.close-alert:hover{opacity:1}.sliders-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));padding:30px}.slider-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;overflow:hidden;transition:all .3s ease}.slider-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-5px)}.slider-image{height:200px;overflow:hidden;position:relative}.slider-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.slider-card:hover .slider-image img{transform:scale(1.05)}.slider-overlay{background:linear-gradient(#0000,#000c);bottom:0;color:#fff;left:0;padding:20px;position:absolute;right:0}.slider-info h3{font-size:1.2em;font-weight:700;margin:0 0 5px}.slider-info p{font-size:.9em;margin:0;opacity:.9}.slider-content{padding:20px}.slider-details{flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:15px}.link-info,.slider-details{align-items:center;display:flex}.link-info{color:#667eea;font-size:.9em;font-weight:600;gap:8px}.order-badge{background:#f3f4f6;border-radius:20px;color:#666;font-size:.85em;font-weight:600;padding:4px 12px}.slider-actions{display:flex;flex-wrap:wrap;gap:10px}.slider-actions button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:.9em;font-weight:600;gap:6px;justify-content:center;min-width:100px;padding:8px 16px;transition:all .3s ease}.status-btn{background:#f3f4f6;color:#666}.status-btn.active{background:#d1fae5;color:#065f46}.status-btn.inactive{background:#fee2e2;color:#991b1b}.edit-btn{background:#dbeafe;color:#1e40af}.edit-btn:hover{background:#3b82f6;color:#fff}.delete-btn{background:#fee2e2;color:#991b1b}.delete-btn:hover{background:#ef4444;color:#fff}.modal-overlay{z-index:10000}.modal-content-large{animation:slideUp .3s ease;background:#fff;border-radius:15px;max-height:90vh;max-width:900px;overflow-y:auto;width:100%}.modal-header{padding:25px 30px}.modal-header h3{color:#333;font-size:1.5em;font-weight:800;gap:10px}.modal-header h3 i{color:#667eea}.close-modal{background:none;border:none;color:#999;cursor:pointer;font-size:2em;transition:color .3s}.close-modal:hover{color:#ef4444}.slider-form{padding:30px}.form-section h4{border-bottom:2px solid #f0f0f0;color:#333;font-weight:700;margin:0 0 20px;padding-bottom:10px}.form-row{grid-gap:20px;gap:20px;margin-bottom:20px}.form-group label{font-size:.95em;font-weight:700}.form-group input[type=number],.form-group input[type=text]{border:2px solid #e5e7eb;border-radius:8px;font-size:15px;padding:12px 15px;transition:all .3s ease}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group small{color:#999;font-size:.85em}.checkbox-label{align-items:center;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:12px;transition:all .3s ease}.checkbox-label:hover{background:#f8f9fa;border-color:#667eea}.checkbox-label input[type=checkbox]{accent-color:#667eea;height:20px;width:20px}.image-upload-section{margin-top:20px}.image-upload-box{background:#f9fafb;border:3px dashed #d1d5db;border-radius:12px;cursor:pointer;padding:60px 20px;text-align:center;transition:all .3s ease}.image-upload-box:hover{background:#f0f4ff;border-color:#667eea}.image-upload-box i{color:#667eea;font-size:4em;margin-bottom:15px}.image-upload-box p{color:#333;font-size:1.1em;font-weight:700;margin-bottom:5px}.image-upload-box small{color:#666}.image-preview{text-align:center}.image-preview img{border-radius:12px;box-shadow:0 8px 20px #0003;margin-bottom:20px;max-width:100%}.change-image-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;padding:12px 30px;transition:all .3s ease}.change-image-btn:hover{box-shadow:0 6px 18px #667eea66;transform:translateY(-2px)}.form-actions{border-top:2px solid #f0f0f0;gap:15px;padding-top:20px}.cancel-btn,.submit-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:1em;font-weight:700;gap:10px;justify-content:center;padding:15px 30px;transition:all .3s ease}.cancel-btn{background:#fff;border:2px solid #e5e7eb;color:#666;flex:1 1}.cancel-btn:hover{border-color:#667eea;color:#667eea}.submit-btn{box-shadow:0 4px 12px #667eea4d;flex:2 1}.submit-btn:hover:not(:disabled){box-shadow:0 6px 18px #667eea66}.spinner-small{border:3px solid #ffffff4d;border-top-color:#fff;height:20px;width:20px}.empty-state,.loading-container{padding:80px 20px;text-align:center}.spinner-large{margin:0 auto 20px}.empty-state i{color:#e5e7eb;font-size:5em}.empty-state p{color:#666;font-size:1.1em}@media (max-width:768px){.slider-header{align-items:stretch;flex-direction:column}.add-btn{width:100%}.sliders-grid{grid-template-columns:1fr;padding:20px}.slider-actions{flex-direction:column}.slider-actions button{min-width:100%}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.cancel-btn,.submit-btn{flex:1 1}}.party-container{padding:20px}.party-header{justify-content:space-between;margin-bottom:16px}.party-header,.party-header h2{align-items:center;display:flex}.party-header h2{gap:8px;margin:0}.party-actions{align-items:center;display:flex;gap:12px}.search-box i{color:#6b7280;left:10px}.search-box input{border:1px solid #e5e7eb;border-radius:6px;padding:8px 10px 8px 32px;width:260px}.alert{border-radius:6px;gap:8px;margin:12px 0;padding:10px 12px}.alert.success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.alert.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.close-alert{background:#0000}.party-table-wrap{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:auto}.party-table{border-collapse:collapse;width:100%}.party-table td,.party-table th{border-bottom:1px solid #f3f4f6;padding:10px 12px;text-align:left}.party-table th{background:#f9fafb;color:#374151;font-size:14px;font-weight:600}.symbol-cell{align-items:center;display:flex;height:48px;justify-content:center;width:48px}.symbol-cell img{height:40px;object-fit:contain;width:40px}.symbol-placeholder{align-items:center;border:1px dashed #e5e7eb;border-radius:6px;color:#9ca3af;display:flex;height:40px;justify-content:center;width:40px}.badge{border-radius:9999px;font-size:12px;padding:2px 8px}.badge-green{background:#ecfdf5;color:#065f46}.badge-gray{background:#f3f4f6;color:#374151}.row-actions{display:flex;gap:8px}.btn-icon{background:#f3f4f6;border:none;border-radius:6px;color:#374151;cursor:pointer;padding:6px}.btn-icon.danger{background:#fef2f2;color:#991b1b}.btn-icon:hover{filter:brightness(.95)}.pagination{align-items:center;display:flex;gap:8px;justify-content:center;padding:12px}.btn-page{background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;padding:6px 10px}.btn-page.active,.btn-page:hover{background:#f3f4f6}.page-ellipsis{color:#9ca3af;padding:0 4px}.loading-center{align-items:center;display:flex;flex-direction:column;gap:8px;padding:30px}.spinner-large{border:3px solid #e5e7eb;border-top-color:#3b82f6;height:28px;width:28px}.spinner-small{animation:spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:16px;width:16px}.btn{background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;padding:8px 12px}.btn.primary{background:#2563eb;border-color:#2563eb;color:#fff}.btn.primary:hover{filter:brightness(.95)}.btn.light{background:#f9fafb}.no-data{color:#6b7280;padding:28px}.modal-overlay{background:#00000073;inset:0;z-index:50}.modal-content{border:1px solid #e5e7eb;border-radius:10px;max-width:680px;overflow:hidden}.modal-header{background:#f9fafb;gap:10px;padding:12px 16px}.modal-header h3{align-items:center;display:flex;gap:8px;margin:0}.close-button{background:#0000;border:none;cursor:pointer;font-size:20px;margin-left:auto}.modal-body{padding:16px}.modal-footer{background:#f9fafb;gap:8px;padding:12px 16px}.inline-footer{margin-top:12px}.form-group{margin-bottom:12px}.form-group label{display:block}.form-group input{border:1px solid #e5e7eb;border-radius:6px;padding:8px 10px;width:100%}.field-hint{color:#6b7280;font-size:12px}.symbol-picker{align-items:flex-start;display:flex;gap:12px}.symbol-preview{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;height:72px;justify-content:center;overflow:hidden;width:72px}.symbol-preview img{height:100%;object-fit:contain;width:100%}.admin-voter-certs-page{background:#f5f7fa;min-height:100vh;padding:30px}.admin-cert-header{margin-bottom:30px}.admin-cert-header h1{align-items:center;color:#2c3e50;display:flex;font-size:32px;gap:12px;margin-bottom:8px}.admin-cert-header p{color:#7f8c8d;font-size:14px}.cert-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.cert-stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:20px;padding:24px;transition:transform .3s ease}.cert-stat-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-5px)}.cert-stat-card.total .stat-icon{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.cert-stat-card.verified .stat-icon{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff}.cert-stat-card.downloads .stat-icon{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.cert-stat-card.gender .stat-icon{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.cert-filters-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:20px;padding:20px}.refresh-btn:hover{background:#e8ecff}.cert-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow-x:auto;padding:20px}.cert-table{border-collapse:collapse;width:100%}.cert-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.cert-table th{font-size:13px;font-weight:600;padding:14px 12px;text-align:left;white-space:nowrap}.cert-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background .2s ease}.cert-table tbody tr:hover{background:#f8f9fa}.cert-table td{color:#2c3e50;font-size:13px;padding:14px 12px}.cert-id{color:#667eea;font-family:monospace;font-weight:600}.constituency-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.download-count{color:#667eea;display:flex}.download-count,.status-badge{align-items:center;font-weight:600;gap:6px}.status-badge{border-radius:12px;display:inline-flex;font-size:11px;padding:6px 12px}.status-badge.verified{background:#d4edda;color:#155724}.status-badge.pending{background:#fff3cd;color:#856404}.modal-header h2{color:#2c3e50}.modal-close{background:none;color:#7f8c8d;transition:color .3s ease}.modal-close:hover{color:#e74c3c}.cert-details-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.detail-item{gap:8px}@media (max-width:768px){.admin-voter-certs-page{padding:15px}.cert-stats-grid{grid-template-columns:1fr}.filter-section{flex-direction:column}.cert-table-container{padding:12px}.cert-table{font-size:11px}.cert-table td,.cert-table th{padding:10px 8px}.cert-details-grid{grid-template-columns:1fr}.pagination-container{flex-wrap:wrap}}.admin-voter-surveys-page{background:#f5f7fa;min-height:100vh;padding:30px}.admin-survey-header{margin-bottom:30px}.admin-survey-header h1{align-items:center;color:#2c3e50;display:flex;font-size:32px;gap:12px;margin-bottom:8px}.admin-survey-header p{color:#7f8c8d;font-size:14px}.survey-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.survey-stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:20px;padding:24px;transition:transform .3s ease,box-shadow .3s ease}.survey-stat-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-5px)}.stat-icon{border-radius:12px;height:60px;width:60px}.survey-stat-card.total .stat-icon{background:linear-gradient(135deg,#667eea,#764ba2)}.survey-stat-card.gender .stat-icon{background:linear-gradient(135deg,#f093fb,#f5576c)}.survey-stat-card.age .stat-icon{background:linear-gradient(135deg,#4facfe,#00f2fe)}.survey-stat-card.top-candidate .stat-icon{background:linear-gradient(135deg,#ffd89b,#19547b)}.stat-content h3{color:#7f8c8d;font-size:14px;font-weight:600;margin-bottom:8px}.stat-value{color:#2c3e50;font-size:32px;margin:0}.stat-value-small{color:#2c3e50;font-size:18px;font-weight:700;margin:0}.gender-breakdown{color:#555;display:flex;flex-wrap:wrap;font-size:12px;gap:12px}.gender-breakdown span{background:#f0f4ff;border-radius:4px;font-weight:600;padding:4px 8px}.survey-filters-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:20px;padding:20px}.search-section{display:flex;gap:12px;margin-bottom:16px}.search-section input{border:2px solid #e0e0e0;border-radius:8px;flex:1 1;font-size:14px;padding:12px 16px;transition:border-color .3s ease}.search-section input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.export-btn,.refresh-btn,.search-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.search-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.search-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.filter-section{display:flex;flex-wrap:wrap;gap:12px}.filter-section select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 14px;transition:border-color .3s ease}.filter-section select:focus{border-color:#667eea;outline:none}.filter-section select:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.5}.export-btn{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff}.export-btn:hover{box-shadow:0 4px 12px #11998e4d;transform:translateY(-2px)}.refresh-btn{background:#f0f4ff;border:2px solid #667eea;color:#667eea}.refresh-btn:hover{background:#667eea;color:#fff}.error-banner{align-items:center;animation:slideDown .3s ease;background:#fee;border:2px solid #fcc;border-radius:8px;color:#c33;display:flex;font-weight:600;gap:12px;margin-bottom:20px;padding:16px}.survey-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow-x:auto;padding:20px}.table-header-info{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.table-header-info h3{color:#2c3e50;font-size:20px;font-weight:700}.table-header-info p{color:#7f8c8d;font-size:14px}.survey-table{border-collapse:collapse;min-width:1400px;width:100%}.survey-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.survey-table th{font-size:13px;font-weight:600;letter-spacing:.5px;padding:14px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.survey-table tbody tr{border-bottom:1px solid #f0f0f0;transition:all .2s ease}.survey-table tbody tr:hover{background:#f8f9fa;transform:scale(1.01)}.survey-table td{color:#2c3e50;font-size:13px;padding:14px 12px}.survey-id{background:#f0f4ff;border-radius:4px;padding:4px 8px}.name-cell{color:#2c3e50;font-weight:600}.email-cell{color:#666;font-size:12px}.candidate-cell,.concern-cell,.constituency-cell{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gender-badge{border-radius:12px;display:inline-block;font-size:11px;padding:4px 12px;text-transform:uppercase}.gender-badge.male{background:#e3f2fd;color:#1976d2}.gender-badge.female{background:#fce4ec;color:#c2185b}.gender-badge.other{background:#f3e5f5;color:#7b1fa2}.action-btn{border-radius:6px;font-size:14px;padding:8px 12px}.action-btn.view{background:#e8ecff;color:#667eea}.action-btn:hover{box-shadow:0 4px 8px #667eea4d;transform:scale(1.1)}.no-data{color:#7f8c8d;padding:60px 20px}.no-data i{display:block;font-size:48px;margin-bottom:16px;opacity:.5}.no-data p{font-size:16px;margin:0}.pagination-container{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:30px}.page-btn,.page-num{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 16px;transition:all .3s ease}.page-btn:hover:not(:disabled),.page-num:hover{background:#667eea;border-color:#667eea;color:#fff;transform:translateY(-2px)}.page-btn:disabled{cursor:not-allowed;opacity:.5}.page-num.active{background:#667eea;border-color:#667eea;color:#fff}.page-numbers{display:flex;gap:8px}.modal-overlay{animation:fadeIn .3s ease;bottom:0;padding:20px;right:0;z-index:9999}.modal-content{animation:slideUp .3s ease;border-radius:16px;box-shadow:0 10px 40px #0000004d;width:100%}.modal-content.large{max-width:900px}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #f0f0f0;border-radius:16px 16px 0 0;color:#fff;justify-content:space-between;padding:24px}.modal-header,.modal-header h2{align-items:center;display:flex}.modal-header h2{font-size:24px;gap:12px;margin:0}.modal-close{border-radius:8px;font-size:24px;height:36px;transition:all .3s ease;width:36px}.modal-body{padding:24px}.survey-details-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr)}.detail-section{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;padding:20px}.detail-section.full-width{grid-column:1/-1}.detail-section h4{align-items:center;color:#2c3e50;display:flex;font-size:16px;font-weight:700;gap:8px;margin-bottom:16px}.detail-item{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.detail-item:last-child{margin-bottom:0}.detail-item label{color:#7f8c8d;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-item span{color:#2c3e50;font-size:14px;font-weight:600}.detail-item span.highlight{background:#f0f4ff;border-radius:6px;color:#667eea;display:inline-block;padding:6px 12px}.modal-footer{border-top:2px solid #f0f0f0;display:flex;gap:12px;justify-content:flex-end;padding:24px}.btn-secondary{border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-secondary:hover{border-color:#667eea;color:#667eea}.loading-container{gap:16px;min-height:400px}.loading-container p{color:#7f8c8d;font-weight:600}@media (max-width:1024px){.admin-voter-surveys-page{padding:20px}.survey-stats-grid{grid-template-columns:repeat(2,1fr)}.survey-details-grid{grid-template-columns:1fr}}@media (max-width:768px){.admin-voter-surveys-page{padding:15px}.survey-stats-grid{grid-template-columns:1fr}.filter-section{flex-direction:column}.export-btn,.filter-section select,.refresh-btn{width:100%}.survey-table-container{padding:12px}.survey-table{font-size:11px;min-width:1200px}.survey-table td,.survey-table th{padding:10px 8px}.pagination-container{flex-wrap:wrap}.modal-content{max-width:95%}.table-header-info{align-items:flex-start;flex-direction:column;gap:8px}}@media (max-width:480px){.admin-survey-header h1,.stat-icon{font-size:24px}.stat-icon{height:50px;width:50px}.stat-value{font-size:24px}.modal-header h2{font-size:18px}.page-btn,.page-num{font-size:12px;padding:8px 12px}}@media print{.action-btn,.pagination-container,.survey-filters-container{display:none!important}.survey-table-container{box-shadow:none}.survey-table tbody tr:hover{background:#0000;transform:none}}.modal-content::-webkit-scrollbar,.survey-table-container::-webkit-scrollbar{height:8px;width:8px}.modal-content::-webkit-scrollbar-track,.survey-table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.modal-content::-webkit-scrollbar-thumb,.survey-table-container::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.modal-content::-webkit-scrollbar-thumb:hover,.survey-table-container::-webkit-scrollbar-thumb:hover{background:#5568d3}.admin-poll-data{background:#f5f7fa;border-radius:8px;padding:20px}.admin-poll-data h2{color:#333;font-size:24px;margin-bottom:20px}.alert{animation:slideDown .3s ease;border-radius:4px;padding:12px 16px}.alert-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.form-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:20px}.form-section h3{color:#333;margin-bottom:20px}.poll-form .form-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.form-group label{margin-bottom:6px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:4px;padding:10px 12px;transition:border .3s}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;padding:12px 30px;transition:transform .2s,box-shadow .2s}.submit-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea66}.submit-btn:disabled{opacity:.6}.list-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px}.list-section h3{color:#333;margin-bottom:20px}.phase-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.phase-btn{border:2px solid #ddd;border-radius:4px;font-weight:500;padding:8px 16px;transition:all .3s}.phase-btn.active{background:#667eea}.phase-btn.active,.phase-btn:hover{border-color:#667eea}.poll-table-container{overflow-x:auto}.poll-table{border-collapse:collapse;font-size:14px;width:100%}.poll-table thead tr{background:#f8f9fa;border-bottom:2px solid #ddd}.poll-table th{color:#333;font-weight:600;padding:12px;text-align:left}.poll-table td{border-bottom:1px solid #eee;padding:12px}.poll-table tbody tr:hover{background:#f9f9f9}.percentage-badge{background:#d4edda;color:#155724;font-weight:600;padding:4px 12px}.male-badge{background:#cce5ff;color:#004085}.female-badge,.male-badge{border-radius:20px;font-weight:600;padding:4px 12px}.female-badge{background:#f8d7e6;color:#721c24}.delete-btn{background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px;transition:background .2s}.delete-btn:hover{background:#dc2626}.no-data{color:#999;font-style:italic;padding:40px;text-align:center}.loading{color:#667eea;padding:20px;text-align:center}@media (max-width:768px){.poll-form .form-grid{grid-template-columns:1fr}.phase-filter{flex-direction:column}}tbody .constituency-name{color:#000}.admin-vote-counting-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);margin:0 auto;max-width:1400px;min-height:100vh;padding:30px}.admin-vote-counting-page .vote-counting-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 10px 30px #667eea4d;color:#fff;margin-bottom:40px;padding:30px;text-align:center}.admin-vote-counting-page .vote-counting-header h1{align-items:center;display:flex;font-size:36px;font-weight:700;gap:15px;justify-content:center;margin:0}.admin-vote-counting-page .vote-counting-header h1 i{animation:pulse 2s ease-in-out infinite;font-size:42px}.admin-vote-counting-page .vote-counting-header p{font-size:16px;margin:10px 0 0;opacity:.9}.alert{align-items:center;animation:slideDown .4s ease-out;border-radius:12px;display:flex;font-weight:500;gap:12px;margin-bottom:20px;padding:16px 20px;position:relative}.alert i{font-size:20px}.alert button{background:none;border:none;color:inherit;cursor:pointer;font-size:24px;opacity:.7;position:absolute;right:16px;transition:opacity .2s}.alert button:hover{opacity:1}.alert-success{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d;color:#fff}.alert-error{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d;color:#fff}.counting-controls{grid-gap:20px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;display:grid;gap:20px;grid-template-columns:2fr 1fr 1fr;margin-bottom:30px;padding:25px}.control-group{display:flex;flex-direction:column;gap:8px}.control-group label{color:#1e293b;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.control-group input[type=number],.control-group select{background:#fff;border:2px solid #e2e8f0;border-radius:10px;font-size:15px;font-weight:500;padding:12px 16px;transition:all .3s}.control-group input[type=number]:focus,.control-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.control-group.checkbox{align-items:center;flex-direction:row;gap:12px}.control-group.checkbox label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:10px;margin:0;text-transform:none}.control-group.checkbox input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:20px;width:20px}.candidates-voting-table{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;margin-bottom:30px;padding:30px}.candidates-voting-table h3{align-items:center;color:#1e293b;display:flex;font-size:22px;gap:10px;margin:0 0 20px}.candidates-voting-table h3:before{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px;content:"";display:inline-block;height:24px;width:4px}.candidates-voting-table table{border-collapse:initial;border-spacing:0;margin-bottom:20px;width:100%}.candidates-voting-table thead{background:linear-gradient(135deg,#667eea,#764ba2)}.candidates-voting-table thead th{color:#fff;font-size:14px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.candidates-voting-table thead th:first-child{border-top-left-radius:12px}.candidates-voting-table thead th:last-child{border-top-right-radius:12px}.candidates-voting-table tbody tr{background:#fff;transition:all .3s}.candidates-voting-table tbody tr:nth-child(2n){background:#f8f9fa}.candidates-voting-table tbody tr:hover{background:#f0f4ff;box-shadow:0 4px 12px #667eea26;transform:scale(1.01)}.candidates-voting-table tbody td{border-bottom:1px solid #e2e8f0;color:#334155;font-size:15px;padding:16px}.candidate-info{align-items:center;display:flex;font-weight:600;gap:12px}.candidate-info img{border:3px solid #667eea;border-radius:50%;box-shadow:0 2px 8px #0000001a;height:48px;object-fit:cover;width:48px}.party-badge{background:linear-gradient(135deg,#f59e0b,#f97316);border-radius:8px;box-shadow:0 2px 6px #f59e0b4d;font-size:13px;font-weight:600;padding:6px 14px}.total-votes{color:#667eea;font-size:20px;font-weight:700}.candidates-voting-table input[type=number]{border:2px solid #e2e8f0;border-radius:8px;font-size:16px;font-weight:600;padding:10px 14px;text-align:center;transition:all .3s;width:150px}.candidates-voting-table input[type=number]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea26;outline:none;transform:scale(1.05)}.submit-section{border-top:2px solid #e2e8f0;display:flex;justify-content:center;padding-top:20px}.btn-submit-votes{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;box-shadow:0 6px 20px #10b98166;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:12px;letter-spacing:.5px;padding:16px 40px;text-transform:uppercase;transition:all .3s}.btn-submit-votes:hover{box-shadow:0 10px 25px #10b98180;transform:translateY(-3px)}.btn-submit-votes:active{transform:translateY(-1px)}.btn-submit-votes:disabled{background:linear-gradient(135deg,#9ca3af,#6b7280);box-shadow:none;cursor:not-allowed;transform:none}.btn-submit-votes i{font-size:18px}.btn-submit-votes .fa-spinner{animation:spin 1s linear infinite}.results-summary{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;padding:30px}.results-summary h3{align-items:center;color:#1e293b;display:flex;font-size:22px;gap:10px;margin:0 0 25px}.results-summary h3:before{content:"🏆";font-size:28px}.results-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.result-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #e2e8f0;border-radius:12px;overflow:hidden;padding:20px;position:relative;transition:all .3s}.result-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-5px)}.result-card.rank-1{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b;box-shadow:0 6px 16px #f59e0b4d}.result-card.rank-2{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-color:#818cf8}.result-card.rank-3{background:linear-gradient(135deg,#fed7aa,#fdba74);border-color:#f97316}.result-card .rank{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 10px #667eea66;color:#fff;display:flex;font-size:16px;font-weight:700;height:40px;justify-content:center;position:absolute;right:10px;top:10px;width:40px}.result-card.rank-1 .rank{background:linear-gradient(135deg,#f59e0b,#d97706);font-size:18px;height:50px;width:50px}.result-card .candidate-name{color:#1e293b;font-size:18px;font-weight:700;margin-bottom:8px;padding-right:50px}.result-card .party-name{color:#64748b;font-size:14px;font-weight:500;margin-bottom:12px}.result-card .vote-count{border-top:2px solid #0000001a;color:#667eea;font-size:24px;font-weight:800;margin-top:10px;padding-top:10px}.result-card.rank-1 .vote-count{color:#f59e0b;font-size:28px}@media (max-width:1024px){.counting-controls{grid-template-columns:1fr}.results-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width:768px){.admin-vote-counting-page{padding:20px}.vote-counting-header h1{font-size:28px}.vote-counting-header h1 i{font-size:32px}.candidates-voting-table{overflow-x:auto;padding:20px}.candidates-voting-table table{min-width:700px}.results-grid{grid-template-columns:1fr}.btn-submit-votes{justify-content:center;width:100%}}@media (max-width:480px){.vote-counting-header{padding:20px}.vote-counting-header h1{flex-direction:column;font-size:22px}.counting-controls{padding:20px}.candidates-voting-table input[type=number]{width:100px}}.loading-container{background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;padding:60px}.loading-container i{animation:spin 1s linear infinite;color:#667eea;font-size:48px}.loading-container p{color:#64748b;font-size:16px;font-weight:500;margin-top:20px}.empty-state{box-shadow:0 4px 12px #00000014;padding:80px 40px}.empty-state i{color:#cbd5e1;font-size:64px;margin-bottom:20px}.empty-state h3{color:#1e293b;font-size:20px;margin-bottom:10px}.empty-state p{font-size:15px}.searchable-dropdown{position:relative}.search-input-wrapper{align-items:center;display:flex;position:relative}.counting-controls .constituency-search{background:#fff;border:2px solid #e2e8f0;border-radius:10px;font-size:15px;font-weight:500;padding:12px 40px 12px 16px;transition:all .3s;width:100%}.counting-controls .constituency-search:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.counting-controls .clear-search{align-items:center;background:none;border:none;color:#94a3b8;cursor:pointer;display:flex;justify-content:center;padding:6px;position:absolute;right:12px;transition:color .2s;z-index:2}.counting-controls .clear-search:hover{color:#ef4444}.counting-controls .dropdown-list{animation:slideDown .2s ease-out;background:#fff;border:2px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001f;left:0;margin-top:8px;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.counting-controls .dropdown-item{align-items:center;border-bottom:1px solid #f1f5f9;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:all .2s}.counting-controls .dropdown-item:last-child{border-bottom:none}.counting-controls .dropdown-item:hover{background:#f8f9ff}.counting-controls .dropdown-item.selected{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.dropdown-item.selected .constituency-code,.dropdown-item.selected .constituency-name{color:#fff}.constituency-code{background:#f0f4ff;border-radius:6px;color:#667eea;font-size:13px;font-weight:700;min-width:70px;padding:4px 10px;text-align:center}.dropdown-item.selected .constituency-code{background:#fff3}.counting-controls .constituency-name{color:#1e293b;flex:1 1;font-size:14px;font-weight:500}.dropdown-item.no-results{color:#94a3b8;cursor:default;padding:20px;text-align:center}.dropdown-item.no-results:hover{background:#fff}.dropdown-item.no-results i{font-size:18px;margin-right:8px}.dropdown-list::-webkit-scrollbar{width:8px}.dropdown-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.dropdown-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.dropdown-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.rank-cell{text-align:center;width:80px}.rank-badge{align-items:center;border-radius:50%;display:inline-flex;font-size:16px;font-weight:700;height:40px;justify-content:center;min-width:40px}.rank-badge.rank-1{animation:pulse-gold 2s ease-in-out infinite;background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b66;color:#fff}.rank-badge.rank-2{background:linear-gradient(135deg,#94a3b8,#64748b);box-shadow:0 4px 12px #94a3b866;color:#fff}.rank-badge.rank-3{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 4px 12px #f9731666;color:#fff}.rank-badge:not(.rank-1):not(.rank-2):not(.rank-3):not(.no-votes){background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.rank-badge.no-votes{background:#e2e8f0;color:#94a3b8}@keyframes pulse-gold{0%,to{box-shadow:0 4px 12px #f59e0b66;transform:scale(1)}50%{box-shadow:0 6px 20px #f59e0b99;transform:scale(1.1)}}.top-candidate{background:linear-gradient(135deg,#fef3c7,#fde68a)!important;border-left:4px solid #f59e0b}.leading-badge{animation:blink 1.5s ease-in-out infinite;background:linear-gradient(135deg,#10b981,#059669);border-radius:6px;color:#fff;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;margin-left:10px;padding:4px 12px}.candidate-info .candidate-avatar-fallback{align-items:center;background:linear-gradient(135deg,#cbd5e1,#94a3b8);border-radius:50%;color:#fff;display:none;flex-shrink:0;font-size:20px;height:48px;justify-content:center;width:48px}.top-candidate .candidate-info{align-items:center;display:flex;gap:12px}.top-candidate .candidate-info img{border:3px solid #667eea;border-radius:50%;box-shadow:0 2px 8px #0000001a;flex-shrink:0;height:48px;object-fit:cover;width:48px}.nota-row{background:linear-gradient(135deg,#ef44440d,#ef44441a);border-top:3px solid #ef4444;font-weight:600}.nota-row:hover{background:linear-gradient(135deg,#ef444414,#ef444426)}.rank-badge.nota-badge{color:#fff;font-size:16px}.nota-icon,.rank-badge.nota-badge{background:linear-gradient(135deg,#ef4444,#dc2626)}.nota-icon{align-items:center;border-radius:50%;display:flex;height:45px;justify-content:center;margin-right:12px;width:45px}.nota-icon i{color:#fff;font-size:22px}.nota-text{color:#dc2626;font-size:15px;font-weight:700}.party-badge.nota-badge-party{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-weight:700;padding:6px 14px}.nota-total{color:#dc2626;font-size:16px;font-weight:800}.nota-input{background:#ef44440d;border:2px solid #ef4444!important}.nota-input:focus{border-color:#dc2626!important;box-shadow:0 0 0 3px #ef44441a!important}.result-card-nota{background:linear-gradient(135deg,#ef44441a,#dc262626);border-left:4px solid #ef4444}.result-card-nota .rank{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:50%;color:#fff;display:flex;font-size:18px;height:40px;justify-content:center;width:40px}.result-card-nota .candidate-name{color:#dc2626;font-weight:800}.result-card-nota .party-name{color:#991b1b;font-weight:600}.result-card-nota .vote-count{color:#7f1d1d;font-weight:700}.winner-card{border:3px solid gold!important;box-shadow:0 8px 28px #ffd7002e!important;overflow:visible;position:relative}.winner-badge{align-items:center;background:linear-gradient(94deg,#ffe066,gold 85%);border:2.5px solid #fff;border-radius:30px 25px 28px 20px;box-shadow:0 6px 18px #ffd70021,0 0 0 2.5px #fff;color:#d18616;display:flex;font-size:17px;font-weight:900;letter-spacing:.5px;padding:6px 22px 6px 18px;position:absolute;right:-16px;top:-18px;z-index:22}.winner-badge i{color:#ff9800;font-size:19px;margin-right:7px}.admin-dashboard{background:#f5f7fa;display:flex;min-height:100vh;position:relative}.sidebar-toggle{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;box-shadow:0 4px 12px #0003;color:#fff;cursor:pointer;display:none;font-size:1.2em;height:45px;left:15px;position:fixed;top:15px;transition:all .3s ease;width:45px;z-index:1001}.sidebar-toggle:hover{transform:scale(1.1)}.sidebar{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:4px 0 15px #0000001a;color:#fff;display:flex;flex-direction:column;height:100vh;overflow-y:auto;position:fixed;transition:transform .3s ease;width:280px;z-index:1000}.logo-icon-admin{align-items:center;background:linear-gradient(135deg,#f93,#fff 50%,#138808);border-radius:50%;box-shadow:0 8px 20px #0000004d;display:flex;height:80px;justify-content:center;margin:0 auto 15px;overflow:hidden;padding:8px;position:relative;width:80px}.admin-logo-image{background:#fff;border-radius:50%;display:block;height:100%;object-fit:contain;padding:4px;width:100%}.admin-logo-fallback{color:#fff;display:none;filter:drop-shadow(0 0 8px rgba(255,255,255,.5));font-size:2em;position:absolute;text-shadow:2px 2px 4px #0000004d}.admin-logo-image[style*="display: none"]+.admin-logo-fallback{display:flex!important}.sidebar-header{border-bottom:1px solid #ffffff1a;padding:30px 20px;text-align:center}.sidebar-header h2{color:#fff;font-size:1.3em;font-weight:800;margin:0}.user-info{align-items:center;background:#ffffff26;border-radius:12px;display:flex;gap:15px;margin:20px;padding:20px}.user-info>i{font-size:3em}.user-details{flex:1 1}.user-name{font-size:1.1em;font-weight:700;margin-bottom:5px}.user-role{font-size:.85em;opacity:.9}.sidebar-menu{flex:1 1;overflow-y:auto;padding:10px 20px 120px}.menu-item{align-items:center;background:#0000;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1em;font-weight:600;gap:12px;margin:8px 0;padding:15px 20px;text-align:left;transition:all .3s ease;width:100%}.menu-item:hover{background:#fff3;transform:translateX(5px)}.menu-item.active{background:#ffffff40;box-shadow:0 4px 12px #0000001a}.menu-item i{font-size:1.2em;text-align:center;width:25px}.sidebar-footer{background:#0003;border-top:1px solid #ffffff1a;bottom:0;left:0;padding:20px;right:0}.logout-button{align-items:center;background:#ffffff26;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1em;font-weight:700;gap:10px;justify-content:center;padding:15px;transition:all .3s ease;width:100%}.logout-button:hover{background:#ff00004d;box-shadow:0 4px 12px #ff00004d;transform:translateY(-2px)}.logout-button i{font-size:1.1em}.main-content{flex:1 1;margin-left:280px;min-height:100vh;padding:30px}.content-header{align-items:center;background:#fff;border-radius:15px;box-shadow:0 2px 8px #00000014;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px;padding:25px 30px}.header-text h1{color:#333;font-size:1.8em;font-weight:800;margin:0 0 5px}.header-text p{color:#666;font-size:.9em;margin:0}.view-public-btn{border-radius:10px;box-shadow:0 4px 12px #667eea4d;font-weight:700;padding:12px 24px}.view-public-btn:hover{box-shadow:0 6px 18px #667eea66}.dashboard-content{animation:fadeIn .5s ease}.section-title{color:#333;font-size:1.5em}.stat-card{align-items:center;background:#fff;box-shadow:0 4px 12px #00000014;display:flex;gap:20px;padding:25px}.stat-card:before{background:#667eea;background:var(--card-color,#667eea);border-radius:0 0 0 100%;content:"";height:100px;opacity:.1;position:absolute;right:0;top:0;width:100px}.stat-card:hover{box-shadow:0 8px 20px #0000001f}.stat-icon{align-items:center;background:#667eea;background:var(--card-color,#667eea);border-radius:50%;box-shadow:0 4px 12px #00000026;color:#fff;display:flex;flex-shrink:0;font-size:1.8em;height:70px;justify-content:center;width:70px}.stat-content{flex:1 1}.stat-value{color:#667eea;color:var(--card-color,#667eea);font-size:2.5em;font-weight:800;line-height:1;margin-bottom:8px}.stat-label{color:#666;font-weight:600}.loading-stats{align-items:center;background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014;display:flex;flex-direction:column;grid-column:1/-1;justify-content:center;padding:60px 20px}.spinner-large{border:5px solid #f3f3f3}.action-buttons{margin-bottom:30px}.action-btn{align-items:center;border:none;border-radius:10px;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;display:flex;font-size:.95em;font-weight:700;gap:10px;padding:15px 30px;transition:all .3s ease}.action-btn:hover{box-shadow:0 6px 18px #0003;transform:translateY(-2px)}.action-btn.refresh{background:linear-gradient(135deg,#4facfe,#00f2fe)}.action-btn.constituency{background:linear-gradient(135deg,#10b981,#059669)}.action-btn.candidate{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.action-btn.import{background:linear-gradient(135deg,#f093fb,#f5576c)}.action-btn.scraper{background:linear-gradient(135deg,#667eea,#764ba2)}.quick-info{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:30px}.info-card{align-items:center;background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014;display:flex;gap:20px;padding:25px;transition:all .3s ease}.info-card:hover{box-shadow:0 6px 18px #0000001f;transform:translateY(-3px)}.info-card i{color:#667eea;font-size:2.5em}.info-card h3{color:#333;font-size:1.1em;font-weight:700;margin:0 0 5px}.info-card p{color:#666;font-size:.9em;margin:0}.section-content{animation:fadeIn .5s ease}.content-card{background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014;padding:30px}.content-card h2{color:#333;font-weight:800;margin-top:0}.sidebar-overlay{background:#00000080;display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:999}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#ffffff1a}.sidebar::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:10px}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.sidebar-toggle{align-items:center;display:flex;justify-content:center}.sidebar{transform:translateX(-100%)}.sidebar.open{transform:translateX(0)}.sidebar-overlay{display:block}.main-content{margin-left:0;padding:80px 15px 20px}.content-header{align-items:flex-start;flex-direction:column;padding:20px}.view-public-btn{justify-content:center;width:100%}.stats-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.action-btn{justify-content:center;width:100%}.quick-info{grid-template-columns:1fr}.sidebar-menu{padding-bottom:140px}}@media (max-width:480px){.header-text h1{font-size:1.4em}.stat-value{font-size:2em}.stat-icon{font-size:1.5em;height:60px;width:60px}.logo-icon-admin{height:70px;width:70px}.logo-icon-admin i{font-size:1.8em}.sidebar-header h2{font-size:1.1em}}@media (max-height:600px) and (orientation:landscape){.sidebar-header{padding:15px}.logo-icon-admin{height:60px;width:60px}.user-info{margin:15px;padding:12px}.sidebar-menu{padding:10px 15px 100px}.menu-item{padding:10px 15px}}@media (prefers-contrast:high){.sidebar{border-right:3px solid #fff}.menu-item.active{border:2px solid #fff}}@media print{.action-buttons,.sidebar,.sidebar-toggle{display:none!important}.main-content{margin-left:0}}.action-btn.slider{background:linear-gradient(135deg,#a78bfa,#8b5cf6)}.action-btn.slider:hover{box-shadow:0 6px 18px #8b5cf64d;transform:translateY(-2px)}.header-actions{align-items:center;display:flex;gap:15px}.view-public-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease;white-space:nowrap}.view-public-btn:hover{box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.view-public-btn i{font-size:16px}@media (max-width:768px){.header-actions{align-items:stretch;flex-direction:column;gap:10px}.view-public-btn span{display:inline}}@media (max-width:480px){.view-public-btn span{display:none}}.action-btn.party{background:linear-gradient(135deg,#f093fb,#f5576c);border:none;color:#fff}.action-btn.party:hover{box-shadow:0 8px 20px #f093fb4d;transform:translateY(-2px)}.action-btn.certificates{background:linear-gradient(135deg,#11998e,#38ef7d)}.action-btn.certificates:hover{box-shadow:0 6px 18px #11998e4d;transform:translateY(-2px)}.action-btn.surveys{background:linear-gradient(135deg,#fa709a,#fee140)}.action-btn.surveys:hover{box-shadow:0 6px 18px #fa709a4d;transform:translateY(-2px)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}@media (max-width:1200px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}}.action-btn.poll{background:linear-gradient(135deg,#f093fb,#f5576c);border:none;color:#fff}.action-btn.poll:hover{box-shadow:0 8px 20px #f093fb4d;transform:translateY(-2px)}.eci-header{background:#fff;box-shadow:0 2px 15px #0000001a;position:-webkit-sticky;position:sticky;top:0;transition:box-shadow .3s ease;z-index:1000}.eci-header.scrolled{box-shadow:0 4px 25px #00000026}.eci-topbar{background:linear-gradient(135deg,#2c5aa0,#1e3a70)}.topbar-container{gap:15px;justify-content:space-between;margin:0 auto;max-width:1600px;padding:12px 20px}.topbar-container,.topbar-left{align-items:center;display:flex}.topbar-left{flex:1 1;gap:12px;min-width:0}.mobile-menu-trigger{background:#0000;border:none;border-radius:8px;color:#fff;cursor:pointer;display:none;flex-shrink:0;font-size:1.4em;padding:10px;transition:all .3s ease}.mobile-menu-trigger:hover{background:#ffffff1a}.mobile-menu-trigger:active{transform:scale(.95)}.site-title h1{cursor:pointer;transition:all .3s ease}.site-title h1:hover{transform:translateX(2px)}.topbar-right{align-items:center;display:flex;flex-shrink:0;gap:12px}.auth-section,.topbar-login-btn,.topbar-user-btn{align-items:center;display:flex;gap:8px}.topbar-login-btn,.topbar-user-btn{background:#ffffff26;border:2px solid #ffffff4d;border-radius:50px;color:#fff;cursor:pointer;font-size:.9em;font-weight:700;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.topbar-login-btn:hover,.topbar-user-btn:hover{background:#ffffff40;border-color:#fff;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.topbar-login-btn i,.topbar-user-btn i{font-size:1.2em}.topbar-logout-btn{align-items:center;background:#0000;border:2px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.1em;height:38px;justify-content:center;padding:8px;transition:all .3s ease;width:38px}.topbar-logout-btn:hover{background:#ef44444d;border-color:#ef4444;transform:rotate(15deg)}.eci-navbar{background:#fff;border-bottom:1px solid #e5e7eb;overflow:hidden}.navbar-container{align-items:stretch;display:flex;justify-content:flex-start;margin:0 auto;max-width:1600px;min-height:56px;padding:0;position:relative}.nav-menu{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;gap:0;list-style:none;margin:0;overflow-x:auto;overflow-y:hidden;padding:0;scroll-behavior:smooth;scrollbar-width:none}.nav-menu::-webkit-scrollbar{display:none}.nav-item{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;font-size:.75em;font-weight:700;gap:4px;justify-content:center;min-width:-webkit-fit-content;min-width:fit-content;padding:8px 16px;position:relative;transition:all .3s ease;white-space:nowrap}.nav-item i{display:block;font-size:1.5em;margin-bottom:2px}.nav-item span{display:block;font-size:.95em;line-height:1.2;text-align:center}.nav-item:hover{background:#f8fafc;color:#2c5aa0}.nav-item.active{background:linear-gradient(180deg,#e0e7ff,#f8fafc);border-bottom-color:#2c5aa0;color:#2c5aa0}.nav-status{align-items:center;align-self:center;border-radius:20px;display:flex;flex-shrink:0;font-size:.75em;font-weight:700;gap:6px;margin:8px;padding:6px 12px;white-space:nowrap}.nav-status.connected{background:#d1fae5;color:#065f46}.nav-status.disconnected{background:#fee2e2;color:#991b1b}.nav-status i{animation:blink 1.5s infinite;font-size:.7em}.mobile-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009;height:100%;left:0;opacity:0;position:fixed;top:0;transition:all .3s ease;visibility:hidden;width:100%;z-index:9998}.mobile-overlay.open{opacity:1;visibility:visible}.mobile-sidebar{background:#fff;box-shadow:5px 0 30px #0000004d;display:flex;flex-direction:column;height:100%;left:0;max-width:320px;overflow-y:auto;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:85%;z-index:9999}.mobile-sidebar.open{transform:translateX(0)}.mobile-header{background:linear-gradient(135deg,#2c5aa0,#1e3a70);box-shadow:0 2px 10px #0000001a;flex-shrink:0;justify-content:space-between;padding:20px}.mobile-header,.mobile-logo{align-items:center;display:flex}.mobile-logo{color:#fff;font-size:1.15em;font-weight:800;gap:12px}.mobile-logo i{color:#fbbf24;font-size:1.8em}.mobile-close{align-items:center;background:#ffffff1a;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.4em;height:40px;justify-content:center;padding:8px;transition:all .3s ease;width:40px}.mobile-close:hover{background:#fff3;transform:rotate(90deg)}.mobile-menu{flex:1 1;list-style:none;margin:0;overflow-y:auto;padding:20px 0}.mobile-menu-item{align-items:center;background:#0000;border:none;border-left:4px solid #0000;color:#475569;cursor:pointer;display:flex;font-size:1em;font-weight:700;gap:16px;min-height:52px;padding:16px 24px;text-align:left;transition:all .3s ease;width:100%}.mobile-menu-item i:first-child{color:#64748b;flex-shrink:0;font-size:1.4em;width:28px}.mobile-menu-item span{flex:1 1}.mobile-menu-item .check-icon{color:#10b981;font-size:1em;margin-left:auto;width:auto}.mobile-menu-item:hover{background:#f8fafc;border-left-color:#cbd5e1}.mobile-menu-item.active{background:#e0e7ff;border-left-color:#2c5aa0;color:#1e40af}.mobile-menu-item.active i:first-child{color:#2c5aa0}.mobile-footer{background:#f9fafb;border-top:2px solid #e5e7eb;display:flex;flex-direction:column;flex-shrink:0;gap:12px;padding:20px}.mobile-action-btn{align-items:center;background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 1px 3px #0000001a;color:#374151;cursor:pointer;display:flex;font-size:1em;font-weight:700;gap:12px;min-height:52px;padding:14px 20px;transition:all .3s ease;width:100%}.mobile-action-btn i{font-size:1.4em}.mobile-action-btn:active{transform:scale(.98)}.mobile-action-btn.admin{background:linear-gradient(135deg,#2c5aa0,#1e3a70);box-shadow:0 4px 12px #2c5aa04d;color:#fff}.mobile-action-btn.logout{background:#fee2e2;border-color:#fecaca;color:#991b1b}.mobile-action-btn.login{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #3b82f64d;color:#fff}@media (min-width:1200px){.mobile-menu-trigger{display:none}.nav-item{font-size:.85em;padding:10px 20px}}@media (max-width:1199px) and (min-width:768px){.topbar-container{padding:10px 15px}.site-title h1{font-size:1.2em}.nav-item{font-size:.8em;padding:10px 16px}}@media (max-width:767px){.mobile-menu-trigger{display:block}.topbar-container{gap:10px;padding:10px 12px}.site-title h1{font-size:1em}.topbar-login-btn span,.topbar-user-btn span{display:none}.topbar-login-btn,.topbar-user-btn{justify-content:center;min-width:38px;padding:8px}.navbar-container{overflow:hidden;padding:0}.navbar-container:after{background:linear-gradient(90deg,#0000,#fffffff2);bottom:0;content:"";pointer-events:none;position:absolute;right:0;top:0;width:30px;z-index:1}.nav-menu{padding:0 4px}.nav-item{font-size:.7em;max-width:75px;min-width:70px;padding:8px 12px}.nav-item i{font-size:1.5em}.nav-item span{font-size:.85em;max-width:100%;overflow:hidden;text-overflow:ellipsis}.nav-status{font-size:.65em;margin:6px;padding:4px 8px}}@media (max-width:479px){.topbar-container{padding:8px 10px}.site-title h1{font-size:.95em}.navbar-container{min-height:52px}.nav-menu{padding:0 2px}.nav-item{font-size:.65em;max-width:70px;min-width:65px;padding:6px 10px}.nav-item i{font-size:1.4em}.nav-item span{font-size:.8em}.nav-status{display:none}}@media (max-width:379px){.site-title h1{font-size:.85em}.nav-item{font-size:.6em;max-width:65px;min-width:60px;padding:6px 8px}.nav-item i{font-size:1.3em}.nav-item span{font-size:.75em}}@media (max-height:500px) and (orientation:landscape){.navbar-container{min-height:48px}.nav-item{padding:6px 12px}.mobile-sidebar{overflow-y:auto}.mobile-menu{padding:10px 0}.mobile-menu-item{min-height:44px;padding:12px 24px}.mobile-footer{padding:15px 20px}}@media (hover:none) and (pointer:coarse){.mobile-action-btn,.mobile-menu-item,.mobile-menu-trigger,.nav-item,.topbar-login-btn,.topbar-logout-btn,.topbar-user-btn{min-height:44px}}@media print{.eci-header{box-shadow:none;position:static}.mobile-overlay,.mobile-sidebar{display:none!important}.navbar-container:after{display:none}}@media (prefers-contrast:high){.nav-item.active{border-bottom-width:4px}.mobile-menu-item.active{border-left-width:6px}.topbar-login-btn,.topbar-logout-btn,.topbar-user-btn{border-width:3px}}.mobile-action-btn:focus-visible,.mobile-menu-item:focus-visible,.mobile-menu-trigger:focus-visible,.nav-item:focus-visible,.topbar-login-btn:focus-visible,.topbar-logout-btn:focus-visible,.topbar-user-btn:focus-visible{outline:3px solid #fbbf24;outline-offset:2px}.site-branding{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:12px;min-width:0;transition:all .3s ease}.site-branding:hover{transform:translateX(2px)}.site-logo{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));flex-shrink:0;height:42px;object-fit:contain;transition:all .3s ease;width:auto}.site-logo:hover{transform:scale(1.05)}.site-title{flex:1 1;min-width:0}.site-title h1{color:#fff;font-size:1.3em;font-weight:800;letter-spacing:.3px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-logo-img{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));flex-shrink:0;height:32px;object-fit:contain;width:auto}.mobile-logo-icon{color:#fbbf24;font-size:1.8em}.mobile-logo img:not([style*="display: none"])+.mobile-logo-icon{display:none}@media (max-width:767px){.site-logo{height:36px}.site-title h1{font-size:1em}.mobile-logo-img{height:28px}}@media (max-width:479px){.site-logo{height:32px}.site-title h1{font-size:.95em}.mobile-logo-img{height:26px}}@media (max-width:379px){.site-logo{height:28px}.site-title h1{font-size:.85em}.mobile-logo-img{height:24px}}.banner-slider{background:#1a1a1a;border-radius:0;height:0;overflow:hidden;padding-top:33.3333%;position:relative;width:100%}.banner-slide{background-position:50%;background-repeat:no-repeat;background-size:cover;height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .8s ease,visibility .8s ease;visibility:hidden;width:100%}.banner-slide.active{opacity:1;visibility:visible;z-index:1}.banner-arrow,.banner-slide:hover{cursor:pointer}.banner-arrow{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0009;border:2px solid #fff6;border-radius:50%;color:#fff;display:flex;font-size:1.3em;height:50px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:50px;z-index:10}.banner-arrow:hover{background:#000c;border-color:#fffc;transform:translateY(-50%) scale(1.15)}.banner-arrow-left{left:20px}.banner-arrow-right{right:20px}.banner-indicators{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;border-radius:30px;bottom:25px;box-shadow:0 4px 15px #0000004d;display:flex;gap:12px;left:50%;padding:12px 24px;position:absolute;transform:translateX(-50%);z-index:10}.indicator{background:#ffffff80;border:2px solid #fffc;border-radius:50%;cursor:pointer;height:12px;padding:0;transition:all .3s ease;width:12px}.indicator:hover{background:#fffc;transform:scale(1.25)}.indicator.active{background:#fff;border-radius:12px;box-shadow:0 0 15px #fff9;width:45px}.banner-slider-loading{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;height:0;justify-content:center;padding-top:33.3333%;position:relative;width:100%}.banner-spinner{animation:spin 1s linear infinite;border:5px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:60px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:60px}@media (max-width:1024px){.banner-arrow{font-size:1.2em;height:45px;width:45px}.banner-arrow-left{left:15px}.banner-arrow-right{right:15px}}@media (max-width:767px){.banner-arrow{font-size:1em;height:38px;width:38px}.banner-arrow-left{left:10px}.banner-arrow-right{right:10px}.banner-indicators{bottom:15px;gap:8px;padding:8px 16px}.indicator{border-width:1.5px;height:9px;width:9px}.indicator.active{width:30px}}@media (max-width:480px){.banner-arrow{display:none}.banner-indicators{bottom:12px;gap:6px;padding:6px 14px}.indicator{border-width:1.5px;height:8px;width:8px}.indicator.active{border-radius:8px;width:25px}}@media (prefers-reduced-motion:reduce){.banner-arrow,.banner-slide,.indicator{transition:none}}.banner-arrow:focus,.indicator:focus{outline:3px solid #667eea;outline-offset:3px}@media print{.banner-slider{height:auto;padding-top:0;page-break-inside:avoid}.banner-arrow,.banner-indicators{display:none}.banner-slide{height:auto;opacity:1;padding-top:33.3333%;position:relative;visibility:visible}}.bihar-map-single-page{background:linear-gradient(135deg,#667eea,#764ba2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;min-height:100vh;padding:20px}.map-header{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-bottom:30px;padding:20px;text-align:center}.map-header h1{color:#2c3e50;font-size:2.5em;font-weight:700;margin-bottom:10px}.map-header p{color:#fff;font-size:1.1em}.map-section{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:1fr}@media (min-width:992px){.map-section{gap:25px;grid-template-columns:3fr 1fr}}.map-svg-container{align-items:center;background:#fff;border-radius:12px;box-shadow:0 6px 20px #00000026;display:flex;justify-content:center;min-height:500px;padding:20px;position:relative;width:100%}.bihar-svg-map{display:block;height:auto;max-width:100%;width:100%}.constituency-area{stroke:#828282;stroke-opacity:1;stroke-width:.66;stroke-miterlimit:4;transition:all .2s ease}.constituency-area.clickable{cursor:pointer}.constituency-area.clickable:hover{stroke:#000;stroke-width:2.5;stroke-opacity:1;filter:brightness(1.3) saturate(1.2)}.constituency-area.clickable:active{filter:brightness(1.1)}.constituency-label{fill:#111;font-family:Arial,sans-serif;font-size:12px;font-weight:600;transition:all .2s ease-in-out}.constituency-label.clickable{cursor:pointer}.constituency-label.clickable:hover{transform:scale(1.15)}.constituency-label.clickable:hover text{fill:#e74c3c;font-size:14px;font-weight:700;text-shadow:0 2px 4px #0003}.constituency-label.clickable:active{transform:scale(1.05)}.bihar-svg-map title{font-size:14px;font-weight:600}.election-info-section{display:flex;flex-direction:column;gap:15px}.election-info-box{grid-gap:12px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 6px 20px #00000026;color:#fff;display:grid;gap:12px;grid-template-columns:1fr;padding:18px}@media (min-width:992px){.election-info-box{grid-template-columns:1fr}}.election-info-box .info-item{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;display:flex;justify-content:space-between;padding:10px}.election-info-box .info-item:last-child{border-bottom:none}.election-info-box strong{align-items:center;color:#ffffffe6;display:flex;font-size:.85em;font-weight:700;gap:8px;letter-spacing:.5px;text-transform:uppercase}.election-info-box span{color:gold;font-size:1em;font-weight:800}.phase-color-box{border:2px solid #ffffff4d;border-radius:3px;display:inline-block;height:16px;margin-right:6px;vertical-align:middle;width:16px}.phase-1-color{background-color:#ffee6f}.phase-2-color{background-color:#ff71c6}.alert-news-box{background:linear-gradient(135deg,orange,#ff8c00);border:2px solid #ffffff4d;border-radius:12px;box-shadow:0 6px 20px #00000026;overflow:hidden;padding:0}.alert-header{align-items:center;background:linear-gradient(135deg,#ff5722f2,#ff9800f2);border-bottom:2px solid #fff3;display:flex;gap:10px;padding:14px 16px}.alert-header i{animation:bellRing 2s infinite;color:#fff;flex-shrink:0;font-size:20px}.alert-header h3{color:#fff;flex:1 1;font-size:14px;font-weight:800;margin:0;min-width:0}.alert-badge{animation:pulse 2s infinite;background:#ff1744;border-radius:12px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.8px;padding:3px 10px;text-transform:uppercase;white-space:nowrap}.alert-content{background:#ffffff05;padding:14px}.alert-message{align-items:center;color:#fff;display:flex;font-size:12px;font-weight:600;gap:8px;margin:0 0 12px}.alert-message i{color:gold;flex-shrink:0;font-size:16px}.pdf-options{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin-bottom:10px}.pdf-btn{align-items:center;background:#fff;border:2px solid #fff6;border-radius:10px;box-shadow:0 2px 8px #0000001a;color:#ff6b35;cursor:pointer;display:flex;flex-direction:column;font-size:11px;font-weight:700;gap:6px;padding:10px 8px;text-decoration:none;transition:all .3s ease}.pdf-btn:hover{background:#fff9f0;box-shadow:0 4px 12px #00000026;transform:translateY(-3px)}.pdf-btn i:first-child{color:#ff6b35;font-size:20px}.pdf-btn i:last-child{font-size:8px;opacity:.6;transition:all .3s ease}.pdf-btn:hover i:last-child{opacity:1;transform:translateX(2px)}.schedule-btn{border-color:#ff6b35}.schedule-btn:hover{background:#fff3e0}.guidelines-btn{border-color:#00acc1;color:#00acc1}.guidelines-btn:hover{background:#e0f7fa}.guidelines-btn i:first-child{color:#00acc1}.notification-btn{border-color:#7b1fa2;color:#7b1fa2}.notification-btn:hover{background:#f3e5f5}.notification-btn i:first-child{color:#7b1fa2}.alert-footer{border-top:1px solid #fff3;padding-top:10px;text-align:center}.alert-footer small{align-items:center;color:#fff;display:flex;font-size:11px;font-weight:500;gap:4px;justify-content:center;opacity:.8}.breadcrumb-nav{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-wrap:wrap;font-size:1em;gap:10px;margin-bottom:20px;padding:12px 20px}.breadcrumb-btn{background:none;border:none;border-radius:4px;color:#3498db;cursor:pointer;font-size:inherit;font-weight:600;padding:6px 12px;text-decoration:none;transition:all .2s}.breadcrumb-btn:hover{background:#3498db1a;color:#2980b9}.breadcrumb-nav i{color:#95a5a6;font-size:.8em}.breadcrumb-current{color:#2c3e50;font-weight:600}.full-page-section{background:#fff;border-radius:12px;box-shadow:0 6px 20px #00000026;padding:30px}.page-header{border-bottom:2px solid #ecf0f1;margin-bottom:30px;padding-bottom:20px}.page-header h1{color:#2c3e50;font-size:2em;margin-bottom:8px}.page-header p{color:#7f8c8d;font-size:1.1em}.page-header p i{color:#3498db;margin-right:5px}.candidates-grid-nomination-style{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-top:20px;padding:0}.candidate-card-nom{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff2;border-left:4px solid #cbd5e1;border-radius:15px;box-shadow:0 6px 20px #0000001a;cursor:pointer;padding:20px;position:relative;transition:all .3s ease}.candidate-card-nom:before{background:radial-gradient(circle,#667eea1a 0,#0000 70%);border-radius:0 0 0 100%;content:"";height:100px;position:absolute;right:0;top:0;width:100px}.candidate-card-nom:hover{box-shadow:0 10px 30px #667eea33;transform:translateY(-5px)}.card-header-nom{align-items:center;display:flex;gap:15px;margin-bottom:15px;position:relative;z-index:1}.candidate-photo-nom{align-items:center;border:3px solid #fff;border-radius:50%;box-shadow:0 4px 15px #0003;display:flex;flex-shrink:0;height:80px;justify-content:center;overflow:hidden;width:80px}.candidate-photo-nom img{height:100%;object-fit:cover;width:100%}.initials-nom{color:#fff;font-size:2em;font-weight:800;text-shadow:2px 2px 4px #0000004d}.candidate-info-nom{flex:1 1;min-width:0}.candidate-info-nom h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#1e293b;display:-webkit-box;font-size:1.15em;font-weight:800;line-height:1.3;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis}.constituency-name-nom{color:#64748b;font-size:.85em;margin-bottom:4px}.constituency-name-nom,.district-name-nom{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.district-name-nom{color:#94a3b8;font-size:.75em}.party-info-bar-nom{align-items:center;box-shadow:0 2px 10px #00000026;color:#fff;display:flex;gap:12px;justify-content:space-between;margin:15px -20px;padding:12px 16px;position:relative;z-index:1}.party-left-nom{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.party-badge-nom{font-size:1.1em;font-weight:800;text-shadow:1px 1px 2px #0000004d}.party-full-name-nom{color:#fff;font-size:.85em;margin-top:4px;opacity:.95;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-symbol-badge-nom{align-items:center;background:#fff;border:2px solid #ffffff4d;border-radius:50%;box-shadow:0 4px 8px #00000026;display:flex;flex-shrink:0;height:52px;justify-content:center;padding:8px;width:52px}.party-symbol-badge-nom img{height:100%;object-fit:contain;width:100%}.card-divider-nom{background:linear-gradient(90deg,#0000,#e2e8f0,#0000);height:1px;margin:15px 0}.candidate-details-nom{position:relative;z-index:1}.detail-item-nom{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:10px;justify-content:space-between;padding:8px 0}.detail-item-nom:last-child{border-bottom:none}.detail-label-nom{align-items:center;color:#64748b;display:flex;flex-shrink:0;font-size:.85em;font-weight:600;gap:6px}.detail-label-nom i{color:#94a3b8;font-size:1.1em}.detail-value-nom{color:#1e293b;font-size:.9em;font-weight:700;overflow:hidden;text-align:right;text-overflow:ellipsis}.criminal-badge-nom{background:#fee2e2;border-radius:12px;color:#ef4444;font-size:.8em;font-weight:700;padding:3px 10px;white-space:nowrap}.criminal-badge-nom.no-cases{background:#d1fae5;color:#10b981}.view-details-btn-nom{align-items:center;border:none;border-radius:10px;box-shadow:0 4px 12px #3b82f64d;color:#fff;cursor:pointer;display:flex;font-size:.9em;font-weight:700;gap:8px;justify-content:center;margin-top:15px;padding:10px;position:relative;transition:all .3s ease;width:100%;z-index:1}.view-details-btn-nom:hover{box-shadow:0 6px 18px #3b82f666;transform:translateY(-2px)}.empty-state-full,.loading-state{color:#95a5a6;padding:60px 20px;text-align:center}.empty-state-full i{color:#d0d3d4;font-size:4em;margin-bottom:20px}.empty-state-full h3{color:#7f8c8d;margin:10px 0}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px}.spinner-large{border:8px solid #ecf0f1;border-top-color:#3498db;height:70px;margin:20px auto;width:70px}.details-btn-full{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:25px;box-shadow:0 4px 8px #0003;color:#fff;cursor:pointer;font-weight:600;margin-top:15px;padding:10px 20px;transition:all .3s ease;width:100%}.details-btn-full:hover{box-shadow:0 6px 12px #0000004d;transform:translateY(-2px)}.details-btn-full i{margin-right:8px}@keyframes bellRing{0%,to{transform:rotate(0deg)}25%{transform:rotate(15deg)}75%{transform:rotate(-15deg)}}@media (max-width:1024px){.map-section{grid-template-columns:1fr}.election-info-section{flex-direction:column}.candidates-grid-nomination-style{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.bihar-map-single-page{padding:15px}.map-header h1{font-size:1.8em}.map-header p{font-size:1em}.map-svg-container{min-height:400px;padding:15px}.full-page-section{padding:20px}.page-header h1{font-size:1.5em}.candidates-grid-nomination-style{gap:15px;grid-template-columns:1fr}.candidate-card-nom{padding:18px}.candidate-photo-nom{height:70px;width:70px}.party-info-bar-nom{align-items:flex-start;flex-direction:column;gap:8px;margin:12px -18px;padding:10px 15px}.party-symbol-badge-nom{height:44px;padding:6px;width:44px}.card-header-nom{gap:12px}.candidate-info-nom h3{font-size:1em}.constituency-name-nom{font-size:.8em}.detail-item-nom{padding:6px 0}.detail-label-nom{font-size:.8em}.detail-value-nom{font-size:.85em}.election-info-box{padding:16px}.alert-news-box{margin-top:15px}.pdf-options{gap:8px;grid-template-columns:1fr}}@media (max-width:600px){.bihar-map-single-page{padding:10px}.map-header{margin-bottom:20px;padding:15px}.map-header h1{font-size:1.5em}.map-svg-container{min-height:350px;padding:12px}.election-info-section{gap:12px}.election-info-box{gap:10px;padding:14px}.election-info-box .info-item{gap:8px;padding:8px}.election-info-box strong{font-size:.75em}.election-info-box span{font-size:.9em}.alert-header{gap:8px;padding:12px}.alert-header h3{font-size:12px}.alert-badge{font-size:9px;padding:2px 8px}.full-page-section{padding:15px}.page-header{margin-bottom:20px;padding-bottom:15px}.page-header h1{font-size:1.3em}.candidates-grid-nomination-style{gap:12px;grid-template-columns:1fr;margin-top:15px}.candidate-card-nom{padding:15px}.candidate-photo-nom{height:60px;width:60px}.initials-nom{font-size:1.5em}.candidate-info-nom h3{font-size:.95em}.view-details-btn-nom{font-size:.85em;padding:8px}.breadcrumb-nav{font-size:.9em;padding:10px 15px}}@media (max-width:480px){.bihar-map-single-page{padding:8px}.map-header h1{font-size:1.3em}.map-svg-container{min-height:300px;padding:10px}.page-header h1{font-size:1.1em}.candidates-grid-nomination-style{gap:10px;grid-template-columns:1fr}.candidate-photo-nom{height:55px;width:55px}.candidate-card-nom{padding:12px}.party-info-bar-nom{padding:8px 12px}.party-symbol-badge-nom{height:40px;padding:5px;width:40px}.election-info-box .info-item{flex-direction:column;gap:4px;padding:6px}.pdf-btn{font-size:10px;padding:8px 6px}.pdf-btn i:first-child{font-size:16px}}@media (hover:none) and (pointer:coarse){.candidate-card-nom{-webkit-tap-highlight-color:rgba(102,126,234,.2)}.breadcrumb-btn,.pdf-btn,.view-details-btn-nom{min-height:44px}}@media print{.bihar-map-single-page{background:#fff}.breadcrumb-nav,.election-info-section,.map-section{display:none}.candidate-card-nom{break-inside:avoid;page-break-inside:avoid}.candidates-grid-nomination-style{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.constituency-select-wrapper{align-items:center;background:#f0f8ff;border-radius:15px;display:flex;gap:14px;justify-content:start;margin:15px 0;padding:20px}.constituency-select-label{color:#352d53;font-size:1.15em;font-weight:700;letter-spacing:.2px;margin-right:1px}.constituency-select{background:#f3f4fa;border:2.2px solid #764ba2;border-radius:9px;box-shadow:0 4px 16px #667eea1f;color:#522b77;font-size:1.1em;font-weight:600;min-width:330px;outline:none;padding:12px 18px;transition:border-color .24s,box-shadow .24s}.constituency-select:focus,.constituency-select:hover{background:#f9fcfe;border-color:#667eea;box-shadow:0 0 0 3px #764ba22e;color:#333d65}.constituency-select option{background:#fff;color:#3b2677;font-size:1em;font-weight:500}@media (max-width:600px){.constituency-select-wrapper{align-items:stretch;flex-direction:column;gap:8px}.constituency-select{font-size:1em;min-width:0;width:100%}.constituency-select-label{font-size:1em;margin-bottom:2px}}.candidates-badge{align-items:center;border:2px solid #fff;border-radius:50px;box-shadow:0 3px 12px #00000026;display:flex;font-size:.95rem;font-weight:800;gap:8px;left:16px;letter-spacing:.4px;padding:6px 18px 6px 12px;position:absolute;top:-25px;transition:all .3s ease;white-space:nowrap;z-index:20}.candidates-badge:hover{box-shadow:0 5px 18px #0003;transform:translateY(-2px)}.badges-icon{align-items:center;background:#ffffff40;border-radius:50%;display:flex;justify-content:center;min-height:28px;min-width:28px;padding:6px}.badges-label{font-size:1em;font-weight:800;text-shadow:0 1px 2px #0000001a}.winners-badge{background:linear-gradient(135deg,#43a047,#66bb6a);color:#fff}.winners-badge .badges-icon i{color:gold;font-size:1.2em}.runnerups-badge{background:linear-gradient(135deg,#fbc02d,#ffd54f);color:#1a1a1a}.runnerups-badge .badges-icon i{color:#f57c00;font-size:1.15em}@media (max-width:768px){.candidates-badge{font-size:.85rem;gap:6px;left:12px;padding:5px 14px 5px 10px}.badges-icon{min-height:24px;min-width:24px;padding:5px}.badges-icon i{font-size:1em!important}.badges-label{font-size:.9em}}@media (max-width:480px){.candidates-badge{font-size:.8rem;left:10px;padding:4px 12px 4px 8px}.badges-icon{min-height:22px;min-width:22px;padding:4px}}*{margin:0;padding:0}.bihar-news-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:0}.news-section{margin:0 auto;max-width:1200px;padding:0 16px}.news-hero{color:#fff;overflow:hidden;padding:60px 32px 40px;position:relative;text-align:center}.news-hero:before{background:#ffffff1a;height:500px;right:-10%;top:-50%;width:500px}.news-hero:after,.news-hero:before{border-radius:50%;content:"";position:absolute;z-index:0}.news-hero:after{background:#ffffff0d;bottom:-30%;height:400px;left:-5%;width:400px}.hero-content{position:relative;z-index:1}.hero-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:20px;display:inline-block;font-size:12px;font-weight:600;margin-bottom:16px;padding:8px 16px}.hero-title{font-size:48px;font-weight:800;letter-spacing:-1px;margin-bottom:12px;text-shadow:0 2px 10px #0003}.hero-subtitle{font-size:18px;font-weight:300;letter-spacing:.5px;margin-bottom:32px;opacity:.95}.hero-stats{gap:40px}.stat{align-items:center;display:flex;flex-direction:column}.stat-number{display:block;font-size:32px;font-weight:700;margin-bottom:4px}.stat-label{color:#fff;opacity:.85}.articles-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));padding:40px 0}.article-card{animation:fadeInUp .6s ease-out forwards;animation-fill-mode:both;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;display:flex;flex-direction:column;opacity:0;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}.article-card:hover{box-shadow:0 20px 60px #667eea4d;transform:translateY(-12px)}.article-image-wrapper{background:linear-gradient(135deg,#667eea,#764ba2);height:200px;overflow:hidden;position:relative;width:100%}.article-image{height:100%;object-fit:cover;transition:transform .5s ease;width:100%}.article-card:hover .article-image{transform:scale(1.08)}.article-overlay{align-items:flex-end;background:linear-gradient(135deg,#667eeacc,#764ba2cc);bottom:0;display:flex;left:0;opacity:0;padding:12px;position:absolute;right:0;top:0;transition:opacity .3s ease}.article-card:hover .article-overlay{opacity:1}.category-badge{background:#2563eb;border-radius:20px;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px}.article-content{display:flex;flex:1 1;flex-direction:column;padding:24px}.article-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.article-title{color:#1a202c;flex:1 1;font-size:18px;font-weight:700;line-height:1.4;text-decoration:none;transition:color .3s ease}.article-title:hover{color:#667eea}.article-language{background:#f0f4ff;border-radius:4px;color:#667eea;display:inline-block;font-size:11px;font-weight:600;padding:4px 8px;white-space:nowrap}.article-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#4a5568;display:-webkit-box;flex-grow:1;font-size:14px;line-height:1.6;margin:12px 0;overflow:hidden}.article-meta{align-items:center;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;display:flex;gap:12px;margin:16px 0;padding:12px 0}.meta-left{align-items:center;color:#64748b;font-size:12px;gap:8px}.source-badge{align-items:center;color:#2d3748;display:flex;font-weight:600;gap:6px}.source-dot{background:#667eea;border-radius:50%;display:inline-block;height:8px;width:8px}.separator{color:#cbd5e1}.publish-time{color:#64748b;font-weight:500}.read-more{align-self:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:inline-block;font-size:12px;font-weight:600;margin-top:12px;padding:10px 16px;text-decoration:none;transition:all .3s ease}.read-more:hover{box-shadow:0 8px 20px #667eea4d;transform:translateX(4px)}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 32px}.loader{height:60px;margin-bottom:32px;position:relative;width:60px}.loader-inner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:100%;width:100%}.loading-text{color:#fff;font-size:16px;font-weight:500}.error-container{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;margin:40px 0;padding:60px 32px;text-align:center}.error-icon{font-size:48px;margin-bottom:16px}.error-container h3{color:#1a202c;font-size:24px;margin-bottom:12px}.error-container p{color:#64748b;font-size:14px;margin-bottom:24px}.retry-btn{border-radius:8px;padding:12px 24px}.retry-btn:hover{box-shadow:0 8px 20px #667eea4d}.empty-state{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000001a;margin:40px 0;padding:80px 32px}.empty-icon{font-size:64px;margin-bottom:24px}.empty-state h3{color:#1a202c;font-size:28px;margin-bottom:12px}.empty-state p{color:#64748b}@media (max-width:768px){.articles-grid{grid-template-columns:1fr}.hero-title{font-size:36px}.hero-subtitle{font-size:16px}.hero-stats{gap:24px}.stat-number{font-size:24px}.article-card{margin:0}.news-hero{padding:40px 20px 30px}}@media (max-width:480px){.news-section{padding:0 12px}.hero-title{font-size:28px}.hero-subtitle{font-size:14px}.article-image-wrapper{height:160px}.article-content{padding:16px}.articles-grid{gap:16px}}.live-results-page{background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);min-height:100vh}.embedded-map-section{background:#0000;margin:0;padding:0}.embedded-map-section .bihar-map-single-page{background:#0000;min-height:auto}.embedded-map-section .map-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#667eeaf2;margin-bottom:0;padding:30px 20px}.embedded-map-section .map-section{margin:20px auto 30px}.embedded-map-section .official-map-container{box-shadow:0 15px 50px #0003}.content-wrapper{margin:0 auto;max-width:1450px;padding:20px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:20px}.stat-card{background:#fffffffa;border-radius:15px;box-shadow:0 6px 20px #0000001a;overflow:hidden;padding:22px;position:relative;transition:all .3s ease}.stat-card:hover{box-shadow:0 10px 30px #667eea40;transform:translateY(-5px)}.stat-card .stat-icon{color:#667eea;font-size:3em;opacity:.12;position:absolute;right:18px;top:18px}.stat-card h3{color:#64748b;font-size:.8em;font-weight:700;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.stat-card .value{color:#667eea;font-size:2.4em;font-weight:800;line-height:1}.stat-card .value.small{font-size:1.3em}.filters-container{align-items:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border-radius:15px;box-shadow:0 6px 20px #0000001a;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:18px}.filter-select,.search-input{background:#fff;border:2px solid #e2e8f0;border-radius:10px;flex:1 1;font-size:15px;font-weight:600;min-width:220px;padding:12px 18px;transition:all .3s ease}.filter-select:hover,.search-input:hover{border-color:#667eea;transform:translateY(-1px)}.filter-select:focus,.search-input:focus{border-color:#764ba2;box-shadow:0 0 0 3px #764ba21a;outline:none}.refresh-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:.95em;font-weight:700;gap:8px;padding:12px 25px;transition:all .3s ease;white-space:nowrap}.refresh-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.refresh-btn i{transition:transform .3s ease}.refresh-btn:hover i{transform:rotate(180deg)}.main-content-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 350px;margin-bottom:20px}.results-section{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border-radius:15px;box-shadow:0 6px 20px #0000001a;padding:25px}.results-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.results-header h2{color:#1e293b;font-size:1.5em;font-weight:800;margin:0}.badge-container{display:flex;flex-wrap:wrap;gap:10px}.round-badge{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 2px 8px #3b82f64d}.final-badge,.round-badge{border-radius:25px;color:#fff;font-size:.85em;font-weight:700;padding:8px 16px}.final-badge{animation:pulse-badge 2s ease-in-out infinite;background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d}@keyframes pulse-badge{0%,to{box-shadow:0 2px 8px #10b9814d;opacity:1}50%{box-shadow:0 4px 15px #10b98180;opacity:.8}}.results-content{max-height:580px;overflow-y:auto;padding-right:12px}.results-content::-webkit-scrollbar{width:8px}.results-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.results-content::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px}.results-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#764ba2,#667eea)}.candidate-card{background:#fff;border-left:5px solid #cbd5e1;box-shadow:0 3px 10px #00000014;cursor:pointer;margin-bottom:15px;padding:18px}.candidate-card:hover{box-shadow:0 6px 20px #667eea2e;transform:translateX(8px)}.candidate-card.leading{background:linear-gradient(90deg,#d1fae5,#fff);border-left-color:#10b981}.candidate-card.position-2{border-left-color:#f59e0b}.candidate-card.position-3{border-left-color:#3b82f6}.candidate-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:15px}.candidate-info{flex:1 1}.candidate-info h3{align-items:center;color:#1e293b;display:flex;font-size:1.2em;font-weight:800;gap:8px;margin:0 0 8px}.candidate-info .party{color:#64748b;font-size:.9em;font-weight:600;margin:0}.party-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px;color:#fff;display:inline-block;font-size:.8em;font-weight:700;margin-left:8px;padding:4px 12px}.position-badge{align-items:center;background:linear-gradient(135deg,#475569,#1e293b);border-radius:50%;box-shadow:0 3px 10px #0003;color:#fff;display:flex;flex-shrink:0;font-size:1.2em;font-weight:800;height:40px;justify-content:center;width:40px}.leading .position-badge{background:linear-gradient(135deg,#10b981,#059669)}.votes-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.votes{color:#667eea;font-size:1.8em;font-weight:800}.percentage{color:#10b981;font-size:1.3em}.progress-bar{background:#e2e8f0;border-radius:5px;height:10px;margin-bottom:12px}.progress-fill{box-shadow:0 0 10px #667eea80;transition:width .8s ease}.details-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 8px #3b82f64d;color:#fff;cursor:pointer;display:inline-flex;font-size:.9em;font-weight:700;gap:8px;padding:10px 20px;transition:all .3s ease}.details-btn:hover{box-shadow:0 6px 15px #3b82f666;transform:translateY(-2px)}.live-updates-sidebar{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border-radius:15px;box-shadow:0 6px 20px #0000001a;display:flex;flex-direction:column;max-height:650px;padding:20px}.live-updates-sidebar h2{align-items:center;color:#1e293b;display:flex;font-size:1.2em;font-weight:800;gap:10px;margin:0 0 15px}.live-indicator{animation:blink 1.5s infinite;background:#ef4444;border-radius:50%;box-shadow:0 0 10px #ef444480;height:12px;width:12px}.updates-list{flex:1 1;overflow-y:auto;padding-right:10px}.updates-list::-webkit-scrollbar{width:6px}.updates-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.updates-list::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px}.update-item{animation:slideIn .4s ease;background:#f8fafc;border-left:3px solid #667eea;border-radius:10px;margin-bottom:12px;padding:14px;transition:transform .2s ease}.update-item:hover{transform:translateX(4px)}.update-item.final{background:#d1fae5;border-left-color:#10b981}.update-time{color:#64748b;font-size:.8em;font-weight:700;margin-bottom:6px}.update-message{color:#1e293b;font-size:.9em;font-weight:600;line-height:1.4}.chart-section{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border-radius:15px;box-shadow:0 6px 20px #0000001a;margin-top:20px;padding:25px}.chart-header{border-bottom:2px solid #e2e8f0;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.chart-header,.chart-header h3{align-items:center;display:flex}.chart-header h3{color:#1e293b;font-size:1.3em;font-weight:800;gap:10px;margin:0}.chart-controls{display:flex;gap:10px}.chart-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#475569;cursor:pointer;display:flex;font-size:.9em;font-weight:700;gap:8px;padding:10px 20px;transition:all .3s ease}.chart-btn:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea33;color:#667eea;transform:translateY(-2px)}.chart-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 4px 15px #667eea4d;color:#fff}.modal-overlay{animation:fadeIn .3s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1e293bcc}.modal-content{animation:slideUp .4s ease;border-radius:18px;box-shadow:0 20px 50px #0000004d;max-width:700px;padding:30px;position:relative}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.modal-content::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#94a3b8;cursor:pointer;display:flex;font-size:30px;height:40px;justify-content:center;position:absolute;right:22px;top:18px;transition:all .3s ease;width:40px}.close-btn:hover{background:#fee2e2;color:#ef4444;transform:rotate(90deg)}.modal-content h2{border-bottom:2px solid #e2e8f0;color:#667eea;font-size:1.6em;font-weight:800;margin:0 0 25px;padding-bottom:15px}.detail-row{border-bottom:1px solid #e2e8f0;display:flex;gap:15px;justify-content:space-between;padding:14px 0}.detail-label{color:#475569;font-size:.95em;font-weight:700}.detail-value{color:#1e293b;font-size:.95em;font-weight:600;text-align:right}.detail-value.criminal-cases{color:#ef4444;font-weight:800}.detail-value.no-cases{color:#10b981;font-weight:800}.detail-value a{align-items:center;color:#3b82f6;display:inline-flex;font-weight:700;gap:5px;text-decoration:none}.detail-value a:hover{color:#2563eb;text-decoration:underline}.loading-spinner{padding:70px 20px;text-align:center}.spinner{border:5px solid #e2e8f0;height:60px;margin:0 auto 25px;width:60px}.empty-state p,.loading-spinner p{color:#475569;font-size:1.1em;font-weight:700;margin:0}.empty-state{color:#64748b;padding:70px 20px}.empty-state i{color:#667eea;font-size:4.5em;margin-bottom:25px;opacity:.2}@media (max-width:1199px){.main-content-grid{grid-template-columns:1fr}.live-updates-sidebar{max-height:400px}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:767px){.embedded-map-section .map-header{padding:20px 15px}.embedded-map-section .map-section{margin:15px auto 20px}.content-wrapper{padding:12px}.stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.stat-card{padding:15px}.stat-card h3{font-size:.7em}.stat-card .value{font-size:1.6em}.stat-card .value.small{font-size:1em}.filter-select,.search-input{min-width:100%;width:100%}.refresh-btn{justify-content:center;width:100%}.chart-container{height:300px}.modal-content{padding:20px;width:95%}}@media (max-width:479px){.stats-grid{grid-template-columns:1fr}.embedded-map-section .map-header h1{font-size:1.5em}}@media print{.chart-controls,.details-btn,.embedded-map-section,.filters-container,.live-updates-sidebar,.refresh-btn{display:none!important}}.chart-btn:focus-visible,.close-btn:focus-visible,.details-btn:focus-visible,.filter-select:focus-visible,.refresh-btn:focus-visible,.search-input:focus-visible{outline:3px solid #fbbf24;outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.news-section-wrapper{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:0;padding:0}.news-section-wrapper .bihar-news-page{background:#0000;padding:0}.news-section-wrapper .news-section{background:#0000;box-shadow:none;margin:0;max-width:100%;padding:0}.news-section-wrapper .news-hero{background:#0000;border-bottom:2px solid #ffffff1a;padding:40px 32px 30px}.news-section-wrapper .news-hero:after,.news-section-wrapper .news-hero:before{display:none}.news-section-wrapper .hero-title{color:#fff;text-shadow:0 2px 10px #0003}.news-section-wrapper .articles-grid{margin:0 auto;max-width:1200px;padding:40px 16px}@media (max-width:768px){.news-section-wrapper{margin:0 0 30px}.news-section-wrapper .articles-grid{padding:30px 12px}}.nom-nominations-page{background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);min-height:100vh;padding-bottom:30px}.nom-page-header{background:linear-gradient(135deg,#1e3c72,#2a5298);box-shadow:0 6px 20px #00000026;margin-bottom:25px;padding:30px 20px}.nom-page-header-content{margin:0 auto;max-width:1450px;text-align:center}.nom-page-header h1{color:#fff;font-size:2.2em;font-weight:800;margin:0 0 10px;text-shadow:2px 2px 8px #0000004d}.nom-page-header h1 i{margin-right:10px}.nom-page-header p{color:#fef3c7;font-size:1em;font-weight:600;margin:0}.nom-nominations-container{margin:0 auto;max-width:1450px;padding:0 20px}.nom-stats-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:20px}.nom-stat-box{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff2;border-radius:15px;box-shadow:0 6px 20px #0000001a;overflow:hidden;padding:22px;position:relative;text-align:center;transition:all .3s ease}.nom-stat-box:before{animation:nom-rotate 15s linear infinite;background:radial-gradient(circle,#667eea14 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}@keyframes nom-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.nom-stat-box:hover{box-shadow:0 10px 30px #667eea33;transform:translateY(-5px)}.nom-stat-icon{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.5em;margin-bottom:12px;position:relative;transition:all .3s ease;z-index:1}.nom-stat-box h3{color:#64748b;font-size:.8em;font-weight:600;letter-spacing:.3px;margin-bottom:10px;position:relative;text-transform:capitalize;z-index:1}.nom-stat-box .nom-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.2em;font-weight:800;position:relative;z-index:1}.nom-stat-box.nom-clickable{cursor:pointer}.nom-stat-box.nom-clickable:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.nom-stat-box.nom-clickable:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.nom-stat-box.nom-clickable:hover:before{left:100%}.nom-stat-box.nom-clickable:active{transform:translateY(-2px)}.nom-stat-action{bottom:15px;color:#0000004d;font-size:18px;position:absolute;right:15px;transition:all .3s ease}.nom-stat-box.nom-clickable:hover .nom-stat-action{color:#0009;transform:translateX(5px)}.nom-stat-box.nom-clickable:hover .nom-stat-icon{transform:scale(1.1) rotate(5deg)}.nom-filters-section{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff2;border-radius:15px;box-shadow:0 6px 20px #0000001a;margin-bottom:20px;overflow:hidden;padding:20px}.nom-filters-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));width:100%}.nom-filter-group{display:flex;flex-direction:column;gap:8px;min-width:0;width:100%}.nom-filter-group label{align-items:center;color:#475569;display:flex;font-size:.85em;font-weight:600;gap:6px;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap}.nom-filter-group label i{color:#667eea}.nom-filter-select,.nom-search-input{background:#fff;border:2px solid #e2e8f0;border-radius:10px;box-sizing:border-box;color:#1e293b;font-size:15px;font-weight:600;max-width:100%;padding:12px 18px;transition:all .3s ease;width:100%}.nom-filter-select:hover,.nom-search-input:hover{border-color:#667eea;transform:translateY(-1px)}.nom-filter-select:focus,.nom-search-input:focus{border-color:#764ba2;box-shadow:0 0 0 3px #764ba21a;outline:none}.nom-search-box{grid-column:1/-1;max-width:100%;width:100%}.nom-search-input-wrapper{align-items:center;display:flex;position:relative}.nom-search-input{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");background-position:15px;background-repeat:no-repeat;padding-left:45px;padding-right:40px;width:100%}.nom-search-input::placeholder{color:#94a3b8;font-size:14px;font-weight:500}.nom-clear-search-btn{background:none;border:none;border-radius:50%;color:#999;cursor:pointer;font-size:16px;padding:5px 8px;position:absolute;right:10px;transition:all .2s}.nom-clear-search-btn:hover{background:#fee2e2;color:#ef4444}.nom-active-filters{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;flex-wrap:wrap;gap:10px;margin-top:15px;padding:15px}.nom-filters-label{align-items:center;color:#666;display:flex;font-size:14px;font-weight:600;gap:5px}.nom-filters-label i{color:#667eea}.nom-filter-tag{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 12px}.nom-filter-tag button{align-items:center;background:#ffffff4d;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;height:20px;justify-content:center;transition:background .2s;width:20px}.nom-filter-tag button:hover{background:#ffffff80}.nom-clear-all-btn{align-items:center;background:#ef4444;border:none;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;padding:6px 15px;transition:all .3s}.nom-clear-all-btn:hover{background:#dc2626;transform:scale(1.05)}.nom-results-section{margin-top:40px}.nom-results-count{background:#fffffff2;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:20px;padding:15px 20px;text-align:center}.nom-results-count p{color:#64748b;font-size:16px;font-weight:600;margin:0}.nom-results-count strong{color:#667eea;font-size:20px;font-weight:800}.nom-constituencies-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.nom-constituency-box{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #00000014;cursor:pointer;display:flex;gap:15px;justify-content:space-between;padding:24px;transition:all .3s ease}.nom-constituency-box:hover{border-color:#667eea;box-shadow:0 8px 20px #667eea33;transform:translateY(-4px)}.nom-constituency-box-header{align-items:center;display:flex;flex:1 1;gap:15px;min-width:0}.nom-constituency-box-header i{color:#667eea;flex-shrink:0;font-size:26px}.nom-constituency-box-header h3{color:#1f2937;font-size:16px;font-weight:700;line-height:1.4;margin:0;word-break:break-word}.nom-constituency-box-arrow{color:#9ca3af;flex-shrink:0;font-size:22px;transition:all .3s ease}.nom-constituency-box:hover .nom-constituency-box-arrow{color:#667eea;transform:translateX(5px)}.nom-candidates-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.nom-candidate-card{background:#fff;border:2px solid #e5e7eb;border-radius:16px;box-shadow:0 4px 12px #00000014;cursor:pointer;overflow:hidden;padding:0;transition:all .3s ease}.nom-candidate-card:hover{border-color:#667eea;box-shadow:0 12px 24px #0000001f;transform:translateY(-4px)}.nom-card-header{align-items:flex-start;background:linear-gradient(180deg,#f9fafb 0,#fff);display:flex;gap:12px;padding:16px 16px 12px}.nom-candidate-photo{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:3px solid #fff;border-radius:50%;box-shadow:0 2px 8px #0000001a;display:flex;flex-shrink:0;height:70px;justify-content:center;overflow:hidden;width:70px}.nom-candidate-photo img{height:100%;object-fit:cover;width:100%}.nom-candidate-photo .nom-initials{color:#fff;font-size:24px;font-weight:700;text-transform:uppercase}.nom-candidate-info{flex:1 1;min-width:0;padding-top:4px}.nom-candidate-info h3{word-wrap:break-word;color:#1f2937;font-size:16px;font-weight:700;line-height:1.3;margin:0 0 8px}.nom-constituency-name{color:#6b7280;font-size:13px;font-weight:600;margin-bottom:3px}.nom-constituency-name,.nom-district-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nom-district-name{color:#9ca3af;font-size:12px;font-weight:500}.nom-party-info-bar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;gap:12px;justify-content:space-between;margin:0;padding:14px 16px}.nom-party-left{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.nom-party-info-bar .nom-party-badge{color:#fff;font-size:16px;font-weight:800;letter-spacing:.5px;text-shadow:1px 1px 2px #0003}.nom-party-info-bar .nom-party-full-name{color:#fffffff2;font-size:12px;font-weight:500;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nom-party-symbol-badge{align-items:center;background:#fff;border-radius:50%;box-shadow:0 2px 6px #00000026;display:flex;flex-shrink:0;height:48px;justify-content:center;padding:6px;width:48px}.nom-party-symbol-badge img{height:100%;object-fit:contain;width:100%}.nom-card-divider{background:linear-gradient(90deg,#0000,#e2e8f0,#0000);height:1px;margin:0}.nom-candidate-details{background:#fff;padding:16px}.nom-detail-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:12px;justify-content:space-between;padding:10px 0}.nom-detail-item:last-child{border-bottom:none;padding-bottom:0}.nom-detail-label{align-items:center;color:#6b7280;display:flex;flex-shrink:0;font-size:13px;font-weight:600;gap:8px}.nom-detail-label i{color:#9ca3af;font-size:14px;text-align:center;width:16px}.nom-detail-value{color:#1f2937;font-size:13px;font-weight:600;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.nom-criminal-badge{align-items:center;background:#fee2e2;border-radius:12px;color:#dc2626;display:inline-flex;font-size:12px;font-weight:700;gap:4px;padding:4px 12px}.nom-criminal-badge.nom-no-cases{background:#d1fae5;color:#059669}.nom-view-details-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:8px;justify-content:center;margin:0 16px 16px;padding:12px;transition:all .3s ease;width:calc(100% - 32px)}.nom-view-details-btn:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.nom-loading-spinner{padding:70px 20px;text-align:center}.nom-spinner{animation:nom-spin 1s linear infinite;border:5px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:60px;margin:0 auto 25px;width:60px}@keyframes nom-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.nom-loading-spinner p{color:#475569;font-size:1.1em;font-weight:700}.nom-empty-state{background:#fffffff2;border-radius:15px;box-shadow:0 6px 20px #0000001a;padding:70px 20px;text-align:center}.nom-empty-state i{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:4.5em;margin-bottom:25px;opacity:.2}.nom-empty-state p{color:#64748b;font-size:1.1em;font-weight:700}.nom-empty-hint{color:#9ca3af;font-size:.9em;font-weight:500;margin-top:10px}.nom-reset-filters-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:25px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:700;gap:8px;margin-top:20px;padding:12px 24px;transition:all .3s}.nom-reset-filters-btn:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}@media (max-width:1024px){.nom-page-header h1{font-size:2em}.nom-stats-row{gap:15px;grid-template-columns:repeat(3,1fr)}.nom-filters-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.nom-page-header{padding:25px 15px}.nom-page-header h1{font-size:1.8em}.nom-nominations-container{padding:0 15px}.nom-stats-row{gap:12px;grid-template-columns:repeat(2,1fr)}.nom-filters-section{padding:15px}.nom-candidates-grid,.nom-filters-grid{grid-template-columns:1fr}.nom-candidates-grid{gap:15px}.nom-constituencies-grid{grid-template-columns:1fr}.nom-constituency-box{padding:18px}.nom-constituency-box-header h3{font-size:14px}}@media (max-width:600px){.nom-page-header{padding:20px 12px}.nom-page-header h1{font-size:1.5em}.nom-nominations-container{padding:0 12px}.nom-stats-row{gap:10px;grid-template-columns:1fr}.nom-candidate-photo{height:60px;width:60px}.nom-party-symbol-badge{height:40px;width:40px}}@media (max-width:480px){.nom-page-header h1{font-size:1.3em}.nom-candidate-photo{height:55px;width:55px}}@media (hover:none) and (pointer:coarse){.nom-candidate-card,.nom-constituency-box{-webkit-tap-highlight-color:rgba(102,126,234,.1)}}@media print{.nom-filters-section,.nom-page-header,.nom-stat-action,.nom-view-details-btn{display:none!important}.nom-nominations-page{background:#fff!important}}@media (prefers-reduced-motion:reduce){.nom-nominations-page *{animation-duration:.01ms!important;transition-duration:.01ms!important}}.candidate-details-page{background:#f5f7fa;min-height:100vh}.candidate-details-container{margin:0 auto;max-width:1200px;padding:20px}.back-button{background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:14px;margin-bottom:20px;padding:10px 20px;transition:all .3s}.back-button:hover{background:#f7fafc;transform:translateX(-5px)}.details-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 10px 25px #0000001a;color:#fff;margin-bottom:30px;padding:40px}.header-content{align-items:center;display:flex;gap:30px}.candidate-photo-large{align-items:center;background:#ffffff1a;border:5px solid #ffffff4d;border-radius:50%;display:flex;flex-shrink:0;height:150px;justify-content:center;overflow:hidden;width:150px}.candidate-photo-large img{height:100%;object-fit:cover;width:100%}.initials-large{color:#fff;font-size:48px;font-weight:700}.header-info h1{font-size:36px;font-weight:700;margin:0 0 15px}.party-section{align-items:center;display:flex;gap:15px;margin-bottom:15px}.party-badge-large{background:#fff3;border-radius:20px;font-size:16px;font-weight:700;padding:8px 16px}.party-name-large{font-size:18px;opacity:.95}.party-symbol-large{align-items:center;background:#fff;border-radius:8px;display:flex;height:50px;justify-content:center;padding:5px;width:50px}.party-symbol-large img{max-height:100%;max-width:100%;object-fit:contain}.constituency-info{font-size:16px;margin:10px 0 0;opacity:.9}.details-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:30px}.details-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:25px}.details-card h3{align-items:center;color:#2d3748;display:flex;font-size:18px;gap:10px;margin:0 0 20px}.details-card h3 i{color:#667eea}.info-row{border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:12px 0}.info-row:last-child{border-bottom:none}.info-label{align-items:center;color:#4a5568;display:flex;font-weight:600;gap:8px}.info-value{color:#2d3748;font-weight:500;text-align:right}.info-value.financial{color:#10b981;font-weight:600}.info-value.financial-highlight{color:#059669;font-size:18px;font-weight:700}.masked-mobile{font-family:monospace;letter-spacing:2px}.criminal-badge{border-radius:20px;font-size:14px;font-weight:600;padding:5px 12px}.criminal-badge.has-cases{background:#fee2e2;color:#dc2626}.criminal-badge.no-cases{background:#d1fae5;color:#059669}.source-section{margin-top:30px;text-align:center}.source-link{align-items:center;border:2px solid;border-radius:8px;display:inline-flex;font-weight:600;gap:10px;padding:12px 24px;text-decoration:none;transition:all .3s}.source-link:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}@media (max-width:768px){.header-content{flex-direction:column;text-align:center}.candidate-photo-large{height:120px;width:120px}.header-info h1{font-size:28px}.details-grid{grid-template-columns:1fr}}.top-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:20px}.share-container{position:relative}.share-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.share-button:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.share-button i{font-size:1.1em}.share-menu{animation:slideDown .3s ease;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;margin-top:10px;min-width:200px;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.share-option{align-items:center;background:#fff;border:none;border-bottom:1px solid #f0f0f0;color:#2c3e50;cursor:pointer;display:flex;font-size:.95em;font-weight:600;gap:12px;padding:12px 16px;transition:all .2s ease;width:100%}.share-option:last-child{border-bottom:none}.share-option:hover{background:#f8f9fa;padding-left:20px}.share-option i{font-size:1.2em;text-align:center;width:20px}.share-option.twitter:hover{background:#f0f9ff;color:#1da1f2}.share-option.facebook:hover{background:#f0f2f5;color:#1877f2}.share-option.whatsapp:hover{background:#f0f7f0;color:#25d366}.share-option.linkedin:hover{background:#f0f6ff;color:#0a66c2}.share-option.email:hover{background:#fff8f0;color:#ea4335}.share-option.copy:hover{background:#f5f5f5;color:#667eea}.share-option.twitter i{color:#1da1f2}.share-option.facebook i{color:#1877f2}.share-option.whatsapp i{color:#25d366}.share-option.linkedin i{color:#0a66c2}.share-option.email i{color:#ea4335}.share-option.copy i{color:#667eea}@media (max-width:768px){.top-actions{align-items:stretch;flex-direction:column}.back-button,.share-button{justify-content:center;width:100%}.share-menu{border-radius:16px 16px 0 0;bottom:0;box-shadow:0 -8px 24px #00000026;left:0;min-width:0;min-width:auto;position:fixed;right:0;top:auto}.share-option{padding:14px 20px}}.affidavit-section{margin:2rem 0;padding:0 1rem}.affidavit-card{align-items:center;background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;padding:1.5rem;transition:all .3s ease}.affidavit-card:hover{border-color:#dee2e6;box-shadow:0 4px 12px #0000001f}.affidavit-header{align-items:center;display:flex;flex:1 1;gap:1rem;min-width:250px}.affidavit-icon{align-items:center;background:linear-gradient(135deg,#dc2626,#991b1b);border-radius:12px;color:#fff;display:flex;flex-shrink:0;font-size:1.5rem;height:60px;justify-content:center;width:60px}.affidavit-info h3{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0}.affidavit-info p{color:#6b7280;font-size:.875rem;margin:.25rem 0 0}.affidavit-actions{display:flex;flex-wrap:wrap;gap:1rem}.btn-download,.btn-view{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.75rem 1.25rem;transition:all .3s ease}.btn-view{color:#fff}.btn-view:hover{box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.btn-download{background:#f3f4f6;border:2px solid #e5e7eb;color:#374151}.btn-download:hover{background:#e5e7eb;border-color:#d1d5db;transform:translateY(-2px)}.pdf-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:9999}.pdf-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;height:90vh;max-width:90vw;overflow:hidden}.pdf-modal-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.pdf-modal-header h2{align-items:center;color:#1f2937;display:flex;font-size:1.25rem;gap:.75rem;margin:0}.pdf-modal-header h2 i{color:#dc2626}.pdf-close-btn{align-items:center;background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:0;transition:all .3s ease;width:40px}.pdf-close-btn:hover{background:#e5e7eb;color:#1f2937}.pdf-modal-body{background:#f3f4f6;flex:1 1;overflow:hidden}.pdf-viewer{background:#fff;border:none;height:100%;width:100%}.pdf-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:space-between;padding:1.5rem}.btn-close-modal,.btn-download-modal{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.btn-download-modal{color:#fff}.btn-download-modal:hover{box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.btn-close-modal{background:#e5e7eb;border:none;color:#374151}.btn-close-modal:hover{background:#d1d5db}@media (max-width:768px){.affidavit-card{flex-direction:column;text-align:center}.affidavit-header{flex-direction:column;width:100%}.affidavit-actions{justify-content:center;width:100%}.pdf-modal-content{height:95vh;max-width:95vw}.pdf-modal-header{padding:1rem}.pdf-modal-header h2{font-size:1rem}.pdf-modal-footer{flex-direction:column}.btn-close-modal,.btn-download-modal{justify-content:center;width:100%}}.modal-overlay{align-items:center;animation:fadeIn .3s ease-in;background:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-content .modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #f0f0f0;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:20px}.modal-content .modal-header h2{align-items:center;color:#fff;display:flex;font-size:22px;gap:10px;margin:0}.modal-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;height:40px;justify-content:center;padding:0;transition:all .3s;width:40px}.modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.affidavit-form{padding:30px}.form-intro{margin-bottom:25px;text-align:center}.form-intro p{color:#666;font-size:14px;margin:0}.form-group{margin-bottom:20px}.form-group label{color:#333}.required{color:#e74c3c;font-weight:700}.form-input{background:#fff;border:2px solid #ddd;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 15px;transition:all .3s}.form-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-input.error{background:#fff5f5;border-color:#e74c3c}.error-message{font-size:12px;margin-top:5px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:30px}.btn-cancel,.btn-submit{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:120px;padding:12px 25px;transition:all .3s}.btn-cancel{background:#ecf0f1;color:#333}.btn-cancel:hover{background:#d5dbdb;transform:translateY(-2px)}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-submit:hover:not(:disabled){box-shadow:0 5px 20px #667eea66;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}@media (max-width:600px){.modal-content{width:95%}.affidavit-form{padding:20px}.modal-header h2{font-size:18px}.form-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{min-width:100%}}:root{--primary-violet:#7c3aed;--primary-violet-light:#a78bfa;--primary-gradient:linear-gradient(45deg,var(--primary-violet) 0%,var(--primary-violet-light) 100%);--background-gradient:linear-gradient(120deg,#5b21b6,#1e1b4b);--success-green:#10b981;--success-green-light:#d1fae5;--share-gradient:linear-gradient(45deg,#10b981,#34d399);--text-primary:#1f2937;--text-secondary:#6b7280;--border-color:#e5e7eb;--shadow-soft:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-strong:0 25px 50px -12px #00000040}.voter-certificate-page{background-image:linear-gradient(120deg,#5b21b6,#1e1b4b);background-image:var(--background-gradient);font-family:Inter,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;padding:40px 20px}.cert-header{animation:fadeInDown .6s ease;color:#fff;margin-bottom:40px;text-align:center}.cert-header h1{align-items:center;display:flex;font-size:clamp(28px,5vw,42px);font-weight:700;gap:15px;justify-content:center;margin-bottom:10px;text-shadow:0 2px 4px #0003}.cert-header p{font-size:clamp(14px,2.5vw,16px);font-weight:400;margin:0;margin-inline:auto;max-width:500px;opacity:.9}.cert-display-card,.cert-form-card{animation:slideUp .7s cubic-bezier(.25,1,.5,1);background:#fff;border:1px solid #ffffff1a;border-radius:24px;box-shadow:0 25px 50px -12px #00000040;box-shadow:var(--shadow-strong);margin:0 auto;max-width:600px;padding:clamp(24px,5vw,40px)}.cert-display-card{max-width:850px;text-align:center}.success-message{align-items:center;background-color:#d1fae5;background-color:var(--success-green-light);border-radius:12px;color:#10b981;color:var(--success-green);display:flex;font-size:18px;font-weight:600;gap:12px;justify-content:center;margin-bottom:30px;padding:16px}.success-message i{font-size:24px}.certificate-image-wrapper{border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;box-shadow:var(--shadow-soft);display:inline-block;font-size:0;line-height:0;margin:20px auto;overflow:hidden;padding:0;transition:transform .3s ease,box-shadow .3s ease}.certificate-image-wrapper:hover{box-shadow:0 25px 50px -12px #00000040;box-shadow:var(--shadow-strong);transform:scale(1.02)}.certificate-svg{aspect-ratio:1000/700;display:block;height:auto;width:100%}.certificate-actions{flex-wrap:wrap;gap:16px;margin-top:40px}.cert-btn,.certificate-actions{display:flex;justify-content:center}.cert-btn{align-items:center;border:2px solid #0000;border-radius:12px;cursor:pointer;font-size:15px;font-weight:600;gap:10px;letter-spacing:.5px;padding:14px 28px;transition:all .3s ease}.cert-btn.primary{background-image:linear-gradient(45deg,#7c3aed,#a78bfa);background-image:var(--primary-gradient);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;box-shadow:var(--shadow-soft);color:#fff}.cert-btn.primary:hover:not(:disabled){box-shadow:0 10px 20px -5px #7c3aed80;transform:translateY(-3px)}.cert-btn.share{background-image:linear-gradient(45deg,#10b981,#34d399);background-image:var(--share-gradient);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;box-shadow:var(--shadow-soft);color:#fff}.cert-btn.share:hover:not(:disabled){box-shadow:0 10px 20px -5px #10b98180;transform:translateY(-3px)}.cert-btn.secondary{background-color:initial;border-color:#e5e7eb;border-color:var(--border-color);color:#6b7280;color:var(--text-secondary)}.cert-btn.secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#d1d5db;color:#1f2937;color:var(--text-primary)}.cert-btn:disabled{cursor:not-allowed;opacity:.6}.cert-btn.large{width:100%}form{display:flex;flex-direction:column;gap:24px}.form-group{gap:8px}.form-group label{color:#1f2937;color:var(--text-primary);font-size:14px}.form-group input,.form-group select{border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:14px;padding:12px 14px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus{border-color:#7c3aed;border-color:var(--primary-violet);box-shadow:0 0 0 3px #7c3aed1a;outline:none}.form-group small{color:#6b7280;color:var(--text-secondary);font-size:12px;margin-top:4px}.selfie-upload-section{margin-top:8px}.selfie-upload-box{background-color:#f9fafb;border:2px dashed #e5e7eb;border:2px dashed var(--border-color);border-radius:12px;cursor:pointer;padding:40px;text-align:center;transition:all .3s ease}.selfie-upload-box:hover{background-color:#f3e8ff;border-color:#7c3aed;border-color:var(--primary-violet)}.selfie-upload-box i{color:#a78bfa;color:var(--primary-violet-light);font-size:48px;margin-bottom:15px}.selfie-preview{border-radius:12px;overflow:hidden;position:relative}.selfie-preview img{display:block;height:auto;width:100%}.change-photo-btn{align-items:center;background:#0009;border:none;border-radius:8px;bottom:15px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;padding:10px 18px;position:absolute;right:15px;transition:all .3s ease}.change-photo-btn:hover{background:#000c}.error-message{background:#fee2e2;border-radius:8px;color:#b91c1c;font-size:14px;font-weight:600;gap:12px;padding:14px 16px}.loading-small{color:#7c3aed;color:var(--primary-violet);font-size:12px;font-weight:600;margin-left:8px}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.voter-certificate-page{padding:30px 15px}.cert-display-card,.cert-form-card{padding:24px}}@media (max-width:480px){.certificate-actions{flex-direction:column}}.pp-poll-percentage-page *{box-sizing:border-box;margin:0;padding:0}.pp-poll-percentage-page{background:linear-gradient(135deg,#667eea,#764ba2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;padding:40px 20px}.pp-poll-header{animation:pp-fadeInDown .6s ease;color:#fff;margin-bottom:40px;text-align:center}.pp-poll-header h1{align-items:center;display:flex;font-size:42px;font-weight:800;gap:15px;justify-content:center;margin-bottom:10px;text-shadow:2px 2px 4px #0003}.pp-poll-subtitle{font-size:16px;font-weight:500;margin-bottom:20px;opacity:.95}.pp-phase-info{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.pp-date-badge,.pp-phase-badge,.pp-time-badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:20px;display:flex;font-size:14px;font-weight:600;gap:8px;padding:8px 16px}.pp-stats-container{grid-gap:20px;animation:pp-slideUp .6s ease;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.pp-stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;gap:20px;padding:24px;transition:transform .3s ease,box-shadow .3s ease}.pp-stat-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-5px)}.pp-stat-icon{align-items:center;border-radius:12px;display:flex;font-size:28px;height:60px;justify-content:center;width:60px}.pp-stat-card.pp-total .pp-stat-icon{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.pp-stat-card.pp-districts .pp-stat-icon{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.pp-stat-card.pp-highest .pp-stat-icon{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.pp-stat-card.pp-lowest .pp-stat-icon{background:linear-gradient(135deg,#fa709a,#fee140);color:#fff}.pp-stat-content h3{color:#666;font-size:14px;font-weight:600;margin-bottom:8px}.pp-stat-value{color:#2c3e50;font-size:32px;font-weight:800;margin:0}.pp-stat-content small{color:#999;display:block;font-size:12px;margin-top:4px}.pp-controls-container{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:20px;padding:20px}.pp-search-box{flex:1 1;min-width:250px;position:relative}.pp-search-box i{color:#999;left:15px;position:absolute;top:50%;transform:translateY(-50%)}.pp-search-box input{border:2px solid #e0e0e0;border-radius:8px;font-size:14px;padding:12px 12px 12px 45px;transition:all .3s ease;width:100%}.pp-search-box input:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;outline:none}.pp-sort-controls{align-items:center;display:flex;gap:12px}.pp-sort-controls label{color:#2c3e50;font-size:14px;font-weight:600}.pp-sort-controls select{border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 14px;transition:all .3s ease}.pp-sort-controls select:focus{border-color:#667eea;outline:none}.pp-sort-order-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;padding:10px 14px;transition:all .3s ease}.pp-sort-order-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:scale(1.1)}.pp-poll-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-bottom:20px;overflow:hidden}.pp-poll-table{border-collapse:collapse;width:100%}.pp-poll-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.pp-poll-table th{font-size:14px;font-weight:700;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.pp-poll-table tbody tr{border-bottom:1px solid #f0f0f0;transition:all .3s ease}.pp-poll-table tbody tr:hover{background:#f8f9fa;transform:scale(1.01)}.pp-poll-table td{font-size:14px;padding:16px}.pp-rank-badge{align-items:center;border-radius:20px;color:#fff;display:inline-flex;font-size:14px;font-weight:700;gap:5px;justify-content:center;min-width:50px;padding:6px 12px}.pp-district-name{color:#2c3e50;font-size:15px;font-weight:700}.pp-percentage-badge{font-size:18px;font-weight:800}.pp-progress-cell{width:40%}.pp-progress-bar{background:#f0f0f0;border-radius:15px;height:30px;overflow:hidden;position:relative;width:100%}.pp-progress-fill{align-items:center;border-radius:15px;display:flex;height:100%;justify-content:flex-end;padding-right:10px;transition:width .6s ease}.pp-progress-text{color:#fff;font-size:12px;font-weight:700;text-shadow:1px 1px 2px #0000004d}.pp-total-row-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-bottom:30px;padding:20px}.pp-total-row{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;justify-content:space-between;padding:16px}.pp-total-label,.pp-total-row{align-items:center;display:flex}.pp-total-label{font-size:18px;font-weight:800;gap:10px}.pp-total-percentage{font-size:32px;font-weight:900}.pp-download-section{text-align:center}.pp-download-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:700;gap:10px;letter-spacing:.8px;padding:16px 32px;text-transform:uppercase;transition:all .3s ease}.pp-download-btn:hover{box-shadow:0 8px 20px #667eea66;transform:translateY(-3px)}@keyframes pp-fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes pp-slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.pp-poll-percentage-page{padding:20px 10px}.pp-poll-header h1{font-size:28px}.pp-phase-info{align-items:center;flex-direction:column}.pp-stats-container{grid-template-columns:1fr}.pp-controls-container{flex-direction:column}.pp-poll-table-container{overflow-x:auto}.pp-poll-table td,.pp-poll-table th{font-size:12px;padding:12px 8px}.pp-progress-cell{width:100%}}@media print{.pp-poll-percentage-page{background:#fff}.pp-controls-container,.pp-download-section{display:none}.pp-poll-table tbody tr:hover{background:#0000;transform:none}}*{box-sizing:border-box}.polling-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:calc(100vh - 200px);padding:40px 20px}.polling-header{animation:slideDown .6s ease-out;margin-bottom:40px;text-align:center}.header-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;padding:30px}.polling-header h1{align-items:center;color:#fff;display:flex;font-size:42px;font-weight:700;gap:15px;justify-content:center;margin:0 0 10px;text-shadow:2px 2px 4px #0003}.polling-header .subtitle{color:#ffffffe6;font-size:16px;margin:0}.phase-selector-container{animation:slideUp .6s ease-out .1s both;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;margin-bottom:30px;padding:25px}.selector-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:15px}.selector-header label{color:#333;font-size:15px;font-weight:700}.current-date{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:13px;font-weight:600;padding:6px 16px}.phase-buttons{flex-wrap:wrap;gap:12px}.phase-btn,.phase-buttons{display:flex;justify-content:center}.phase-btn{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;flex-direction:column;font-weight:700;min-width:70px;padding:12px 16px;transition:all .3s ease}.phase-btn:hover:not(:disabled){border-color:#667eea;box-shadow:0 4px 12px #667eea4d;color:#667eea;transform:translateY(-2px)}.phase-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 6px 16px #667eea66;color:#fff}.phase-btn:disabled{cursor:not-allowed;opacity:.6}.phase-num{font-size:18px;margin-bottom:4px}.phase-label{font-size:11px;opacity:.7}.error-alert{align-items:center;animation:shake .4s ease-out;background:#fee;border-left:4px solid #f44;border-radius:8px;color:#c33;display:flex;gap:12px;margin-bottom:20px;padding:16px}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.error-alert i{flex-shrink:0;font-size:20px}.close-alert{background:none;border:none;color:inherit;cursor:pointer;font-size:18px;margin-left:auto;padding:0}.loading-spinner{align-items:center;color:#fff;display:flex;flex-direction:column;gap:20px;justify-content:center;padding:80px 20px}.spinner-animation{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:50px;width:50px}.loading-spinner p{font-size:16px;margin:0}.controls-section{animation:slideUp .6s ease-out .2s both;background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001a;flex-wrap:wrap;gap:15px;margin-bottom:30px;padding:15px}.search-control{align-items:center;display:flex;flex:1 1;min-width:250px;position:relative}.search-control i{color:#999;left:12px;pointer-events:none;position:absolute}.search-control input{border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 15px 10px 38px;transition:all .3s ease;width:100%}.search-control input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.sort-control{align-items:center;display:flex;gap:10px}.sort-control label{color:#333;font-weight:700;white-space:nowrap}.sort-control select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 12px;transition:all .3s ease}.sort-control select:hover{border-color:#667eea}.sort-control select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.constituencies-section,.districts-section{animation:slideUp .6s ease-out .3s both;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;padding:30px}.overall-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:30px}.overall-stats .stat-card{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:flex;gap:15px;padding:20px;transition:all .3s ease}.overall-stats .stat-card:hover{box-shadow:0 8px 24px #667eea4d;transform:translateY(-4px)}.stat-icon{font-size:28px;opacity:.8}.stat-info{display:flex;flex-direction:column}.stat-label{font-size:12px;letter-spacing:.5px}.stat-value{font-size:24px;font-weight:700;margin-top:4px}.summary-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:30px}.summary-card{align-items:center;border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:20px;text-align:center;transition:all .3s ease}.summary-card.total{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.summary-card.average{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.summary-card.highest{background:linear-gradient(135deg,#10b981,#047857);color:#fff}.summary-card.lowest{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.summary-card.voters{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.summary-card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-4px)}.summary-card i{font-size:24px;opacity:.8}.summary-card label{font-size:12px;letter-spacing:.5px;opacity:.9;text-transform:uppercase}.summary-card value{font-size:20px;font-weight:700}.section-title{color:#1f2937;font-size:22px;font-weight:700;gap:12px;margin-bottom:25px}.section-title i{font-size:26px}.constituency-header{flex-wrap:wrap;gap:20px;margin-bottom:30px}.back-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:14px;gap:10px;padding:12px 24px}.back-btn:hover{box-shadow:0 6px 16px #667eea66;transform:translateX(-4px)}.constituency-header h2{align-items:center;color:#1f2937;display:flex;flex:1 1;font-size:22px;font-weight:700;gap:10px;margin:0}.constituency-header h2 i{color:#667eea}.table-wrapper{border-radius:12px;box-shadow:0 4px 16px #00000014;margin-bottom:30px;overflow-x:auto}.data-table{border-collapse:collapse;font-size:14px;width:100%}.data-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.data-table th{font-weight:700;letter-spacing:.5px;padding:16px}.data-table td{padding:16px}.data-table tbody tr{transition:all .3s ease}.data-table tbody tr:hover{background:#f9fafb;box-shadow:inset 0 0 0 1px #e5e7eb}.data-table tbody tr:last-child td{border-bottom:none}.center{text-align:center}.index-col,.rank-col{text-align:center;width:50px}.rank-badge{font-size:24px;line-height:1}.rank-num{align-items:center;background:#f3f4f6;border-radius:50%;color:#667eea;display:inline-block;display:flex;font-weight:700;height:32px;justify-content:center;width:32px}.constituency-cell,.district-cell{color:#1f2937;font-weight:600}.constituency-info,.district-info{align-items:center;display:flex;gap:10px}.constituency-info i,.district-info i{color:#667eea;font-size:16px}.percentage-cell{display:flex;justify-content:center}.percentage-badge{background:#667eea;border-radius:20px;color:#fff;display:inline-block;font-size:13px;font-weight:700;padding:8px 16px}.gender-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 12px}.gender-badge.male{background:#dbeafe;color:#1e40af}.gender-badge.female{background:#fce7f3;color:#831843}.top-constituency{color:#6b7280}.progress-col{min-width:150px}.progress-wrapper{align-items:center;display:flex;gap:10px}.progress-bar{background:#e5e7eb;border-radius:12px;flex:1 1;height:24px;overflow:hidden;position:relative}.progress-fill{align-items:center;color:#fff;display:flex;font-size:11px;font-weight:700;justify-content:center;position:relative;transition:width .4s ease}.progress-fill:after{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.progress-text{color:#1f2937;font-size:13px;font-weight:700;min-width:40px;text-align:right}.center .action-btn{align-items:center;background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;height:36px;justify-content:center;transition:all .3s ease;width:36px}.center .action-btn:hover{background:#764ba2;box-shadow:0 4px 12px #667eea4d;transform:translateX(3px)}.empty-state{color:#9ca3af;padding:60px 20px;text-align:center}.empty-state i{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state p{color:#6b7280;font-size:16px;margin:0}@media (max-width:1024px){.polling-page{padding:20px 15px}.data-table td,.data-table th{padding:12px}.phase-buttons{justify-content:space-between}.phase-btn{flex:1 1}}@media (max-width:768px){.polling-page{padding:15px 10px}.polling-header h1{font-size:28px}.phase-buttons{gap:8px}.phase-btn{min-width:60px;padding:10px 12px}.controls-section{flex-direction:column}.search-control,.sort-control{min-width:100%}.sort-control{justify-content:space-between}.overall-stats,.summary-cards{grid-template-columns:repeat(2,1fr)}.data-table{font-size:12px}.data-table td,.data-table th{padding:10px 8px}.progress-text{min-width:30px}.constituencies-section,.districts-section{padding:15px}.constituency-header{align-items:flex-start;flex-direction:column}.back-btn{justify-content:center;width:100%}.constituency-header h2{font-size:18px;width:100%}.section-title{font-size:18px}}@media (max-width:480px){.polling-header h1{font-size:22px;gap:8px}.phase-buttons{gap:6px}.phase-btn{font-size:12px;min-width:50px;padding:8px 10px}.overall-stats,.summary-cards{grid-template-columns:1fr}.table-wrapper{font-size:11px}.percentage-badge{font-size:12px;padding:6px 10px}.action-btn{font-size:14px;height:32px;width:32px}}.vc-vote-counting-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;overflow-x:hidden;padding:20px;position:relative}.vc-vote-counting-page:before{animation:vc-gradientMove 15s ease-in-out infinite;background:radial-gradient(circle at 20% 50%,#667eea33 0,#0000 50%),radial-gradient(circle at 80% 80%,#764ba233 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:0}@keyframes vc-gradientMove{0%,to{opacity:.5}50%{opacity:.8}}.vc-results-container{margin:0 auto;max-width:1400px;position:relative;z-index:10}.vc-page-header{animation:vc-floatIn .5s ease-out forwards;background:#fff;border:1px solid #0000000d;border-radius:24px;box-shadow:0 10px 40px #0000001a;margin:0 auto 30px;max-width:1400px;padding:20px 40px}.vc-page-header-content{align-items:center;display:flex;flex-direction:column;gap:10px;text-align:center}.vc-page-header-content h1{align-items:center;color:#1e293b;display:flex;font-size:32px;font-weight:800;gap:15px;margin:0}.vc-page-header-content h1 i{color:#667eea;font-size:36px}.vc-page-header-content p{color:#64748b;font-size:16px;font-weight:500;margin:0;max-width:600px}@keyframes vc-floatIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.vc-tabs-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:16px;box-shadow:0 4px 20px #00000014,inset 0 0 0 1px #ffffff80;display:flex;gap:12px;margin:0 auto 30px;max-width:1400px;overflow:hidden;padding:12px;position:relative}.vc-tabs-container:before{background:linear-gradient(135deg,#667eea0d,#764ba20d);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.vc-tab{align-items:center;background:#0000;border:none;border-radius:12px;color:#64748b;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:700;gap:10px;justify-content:center;letter-spacing:.5px;overflow:hidden;padding:16px 32px;position:relative;text-transform:uppercase;transition:all .4s cubic-bezier(.4,0,.2,1);z-index:1}.vc-tab:before{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:12px;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.vc-tab:hover:before{opacity:1}.vc-tab:hover{color:#667eea;transform:translateY(-2px)}.vc-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 8px 24px #667eea66,inset 0 0 0 1px #fff3;color:#fff;transform:translateY(-2px)}.vc-tab.active:before{opacity:0}.vc-tab.active:after{background:radial-gradient(circle,#fff3 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}@keyframes vc-tab-shine{0%,to{opacity:.5;transform:rotate(0deg)}50%{opacity:.8;transform:rotate(180deg)}}.vc-tab i{font-size:20px;transition:transform .3s ease}.vc-tab:hover i{transform:scale(1.15)}.vc-tab.active i{animation:vc-icon-bounce .6s ease-out}@keyframes vc-icon-bounce{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.vc-tab-badge{animation:vc-badge-pulse 2s ease-in-out infinite;background:#ef4444;border-radius:10px;color:#fff;font-size:11px;font-weight:800;margin-left:6px;padding:3px 8px}@keyframes vc-badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.vc-tab.active .vc-tab-badge{background:#ffffff40;color:#fff}@media (max-width:768px){.vc-tabs-container{flex-direction:column;gap:8px;padding:10px}.vc-tab{font-size:14px;padding:14px 20px}.vc-tab i{font-size:18px}}@media (max-width:480px){.vc-tab{font-size:13px;letter-spacing:.3px;padding:12px 16px}.vc-tab i{font-size:16px}}.vc-constituency-selector{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#fffffff2;border-radius:14px;box-shadow:0 4px 14px #00000014,inset 0 0 0 1px #ffffff80;margin-bottom:16px;padding:20px;position:relative;z-index:100}.vc-constituency-selector label{color:#1e293b;font-size:13px;font-weight:600;letter-spacing:.4px;margin-bottom:6px;text-transform:uppercase}.vc-search-input-wrapper{align-items:center;display:flex;position:relative}.vc-search-icon{color:#94a3b8;font-size:15px;left:11px;position:absolute;z-index:1}.vc-constituency-search{background:#ffffffdb;border:2px solid #e2e8f0;border-radius:8px;font-size:13px;font-weight:500;padding:10px 38px;transition:all .3s;width:100%}.vc-constituency-search:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea17,0 2px 8px #667eea1c;outline:none;transform:translateY(-1px)}.vc-clear-search{align-items:center;background:none;border:none;color:#94a3b8;cursor:pointer;display:flex;font-size:17px;justify-content:center;padding:4px;position:absolute;right:12px;transition:color .2s;z-index:2}.vc-clear-search:hover{color:#ef4444}.vc-dropdown-list{animation:vc-slideDown .2s ease-out;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 30px #00000026;left:25px;margin-top:8px;max-height:400px;overflow-y:auto;position:absolute;right:25px;top:100%;z-index:1001}@keyframes vc-slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.vc-dropdown-item{align-items:center;border-bottom:1px solid #f1f5f9;cursor:pointer;display:flex;gap:12px;padding:14px 20px;transition:all .2s}.vc-dropdown-item:last-child{border-bottom:none}.vc-dropdown-item:hover{background:#f8f9ff}.vc-dropdown-item.vc-selected{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.vc-constituency-code{background:#f0f4ff;border-radius:8px;color:#667eea;font-size:13px;font-weight:700;min-width:80px;padding:5px 12px;text-align:center}.vc-dropdown-item.vc-selected .vc-constituency-code{background:#fff3;color:#fff}.vc-constituency-name{color:#1e293b;flex:1 1;font-size:15px;font-weight:500}.vc-dropdown-item.vc-selected .vc-constituency-name{color:#fff}.vc-dropdown-item.vc-no-results{color:#94a3b8;cursor:default;justify-content:center;padding:20px;text-align:center}.vc-dropdown-item.vc-no-results:hover{background:#fff}.vc-dropdown-list::-webkit-scrollbar{width:8px}.vc-dropdown-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.vc-dropdown-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.vc-dropdown-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.vc-results-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.vc-stat-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:20px;box-shadow:0 8px 32px #0000001a,inset 0 0 0 1px #ffffff80;display:flex;gap:20px;overflow:hidden;padding:30px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.vc-stat-card:before{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.vc-stat-card:hover:before{left:100%}.vc-stat-card:hover{box-shadow:0 20px 60px #667eea33,inset 0 0 0 1px #667eea4d;transform:translateY(-8px) scale(1.02)}.vc-stat-card i{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 2px 4px rgba(102,126,234,.3));font-size:48px}.vc-stat-content{flex:1 1}.vc-stat-value{color:#1e293b;font-size:32px;font-weight:800;line-height:1;margin-bottom:5px}.vc-stat-label{color:#64748b;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.vc-leading-candidate-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b4d;border-radius:24px;box-shadow:0 20px 60px #f59e0b66,inset 0 0 0 1px #f59e0b33;margin-bottom:30px;overflow:hidden;padding:40px;position:relative}.vc-leading-candidate-card:before{animation:vc-rotate 20s linear infinite;background:radial-gradient(circle,#ffffff4d 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}@keyframes vc-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.vc-leading-badge-top{align-items:center;animation:vc-bounce 2s ease-in-out infinite;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:12px;box-shadow:0 8px 24px #f59e0b80,inset 0 0 0 1px #fff3;color:#fff;display:flex;font-size:15px;font-weight:800;gap:10px;padding:12px 24px;position:absolute;right:25px;top:25px;z-index:10}@keyframes vc-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.vc-leading-content{align-items:center;display:flex;gap:30px}.vc-leading-photo{background:#fff;border:6px solid #f59e0b;border-radius:50%;box-shadow:0 10px 30px #0003,0 0 0 3px #ffffff80;flex-shrink:0;height:160px;overflow:hidden;position:relative;width:160px;z-index:10}.vc-leading-photo img{height:100%;object-fit:cover;width:100%}.vc-candidate-avatar-fallback{align-items:center;background:linear-gradient(135deg,#cbd5e1,#94a3b8);color:#fff;display:none;font-size:60px;height:100%;justify-content:center;width:100%}.vc-leading-info h2{color:#1e293b;font-size:36px;font-weight:800;margin:0 0 10px}.vc-leading-party{color:#64748b;font-size:18px;font-weight:600;margin-bottom:15px}.vc-leading-votes{align-items:baseline;display:flex;flex-wrap:wrap;gap:10px}.vc-votes-number{color:#f59e0b;font-size:48px;font-weight:900;line-height:1}.vc-votes-label{color:#64748b;font-size:20px;font-weight:600}.vc-vote-percentage{color:#10b981;font-size:24px}.vc-results-list{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-bottom:20px;padding:30px}.vc-results-list h3{color:#1e293b;font-size:24px;font-weight:700;margin:0 0 25px}.vc-result-item{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8f9facc;border-radius:16px;display:flex;gap:20px;margin-bottom:16px;overflow:hidden;padding:24px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.vc-result-item:before{background:linear-gradient(180deg,#667eea,#764ba2);content:"";height:100%;left:0;position:absolute;top:0;transform:scaleY(0);transition:transform .4s;width:4px}.vc-result-item:hover:before{transform:scaleY(1)}.vc-result-item:hover{background:#fffffff2;box-shadow:0 8px 32px #0000001f,inset 0 0 0 1px #667eea1a;transform:translateX(8px) scale(1.02)}.vc-result-item.vc-rank-1{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left:4px solid #f59e0b}.vc-result-item.vc-rank-2{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-left:4px solid #818cf8}.vc-result-item.vc-rank-3{background:linear-gradient(135deg,#fed7aa,#fdba74);border-left:4px solid #f97316}.vc-rank-badge{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 6px 16px #667eea66,inset 0 0 0 2px #ffffff4d;color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:800;height:54px;justify-content:center;transition:all .3s;width:54px}.vc-result-item:hover .vc-rank-badge{transform:rotate(1turn) scale(1.1)}.vc-result-item.vc-rank-1 .vc-rank-badge{animation:vc-pulse-rank 2s ease-in-out infinite;background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 6px 20px #f59e0b80,inset 0 0 0 2px #ffffff4d}@keyframes vc-pulse-rank{0%,to{box-shadow:0 6px 20px #f59e0b80,inset 0 0 0 2px #ffffff4d}50%{box-shadow:0 8px 30px #f59e0bb3,inset 0 0 0 3px #fff6}}.vc-result-item.vc-rank-2 .vc-rank-badge{background:linear-gradient(135deg,#94a3b8,#64748b)}.vc-result-item.vc-rank-3 .vc-rank-badge{background:linear-gradient(135deg,#f97316,#ea580c)}.vc-candidate-photo{background:#fff;border:3px solid #667eea;box-shadow:0 2px 8px #0000001a}.vc-candidate-photo .vc-candidate-avatar-fallback{font-size:24px;height:100%;width:100%}.vc-candidate-details{flex:1 1;min-width:0}.vc-candidate-name{color:#1e293b;font-size:18px;font-weight:700;margin-bottom:5px}.vc-candidate-party{color:#64748b;font-size:14px;font-weight:600}.vc-vote-info{flex:2 1;min-width:200px}.vc-vote-count{color:#667eea;font-size:24px;font-weight:800;margin-bottom:8px}.vc-vote-bar{background:linear-gradient(90deg,#e2e8f0,#cbd5e1);box-shadow:inset 0 2px 4px #0000001a;height:14px;margin-bottom:8px;overflow:hidden}.vc-vote-bar,.vc-vote-bar-fill{border-radius:8px;position:relative}.vc-vote-bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);box-shadow:0 2px 8px #667eea66;height:100%;transition:width 1s cubic-bezier(.4,0,.2,1)}.vc-vote-bar-fill:after{background:linear-gradient(180deg,#fff6,#0000);border-radius:8px 8px 0 0;content:"";height:50%;left:0;position:absolute;right:0;top:0}.vc-vote-percentage{color:#64748b;font-size:16px;font-weight:700}.vc-result-item.vc-rank-1 .vc-vote-bar-fill{animation:vc-shimmer 2s infinite;background:linear-gradient(90deg,#f59e0b,#d97706);box-shadow:0 2px 12px #f59e0b80}@keyframes vc-shimmer{0%,to{opacity:1}50%{opacity:.8}}.vc-loading-container,.vc-no-results,.vc-select-constituency-cta{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;padding:60px;text-align:center}.vc-loading-container i,.vc-no-results i,.vc-select-constituency-cta i{color:#cbd5e1;display:block;font-size:64px;margin-bottom:20px}.vc-spinner{animation:vc-spin 1s linear infinite;border:6px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:60px;margin:0 auto 20px;width:60px}@keyframes vc-spin{to{transform:rotate(1turn)}}.vc-loading-container p,.vc-no-results h3,.vc-select-constituency-cta p{color:#1e293b;font-size:24px;font-weight:700;margin:0}.vc-no-results p{color:#64748b;font-size:16px;font-weight:500;margin-top:10px}.vc-select-constituency-cta{background:linear-gradient(135deg,#f0f4ff,#e0e7ff);border:2px dashed #667eea}.vc-select-constituency-cta i{animation:vc-bounce 2s ease-in-out infinite;color:#667eea}.vc-select-constituency-cta p{color:#475569;font-size:18px;font-weight:600}.vc-party-dashboard{animation:vc-fadeIn .5s ease-out}@keyframes vc-fadeIn{0%{opacity:0}to{opacity:1}}.vc-dashboard-header{background:#fff;border-radius:20px;box-shadow:0 8px 32px #0000001a;margin-bottom:30px;padding:35px;text-align:center}.vc-dashboard-header h2{align-items:center;color:#1e293b;display:flex;font-size:32px;font-weight:800;gap:15px;justify-content:center;margin:0 0 10px}.vc-dashboard-header h2 i{color:#667eea;font-size:36px}.vc-dashboard-header p{color:#64748b;font-size:16px;font-weight:500;margin:0}.vc-party-stats-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:30px}.vc-party-stat-card{background:#fff;border-radius:20px;box-shadow:0 8px 24px #0000001a;overflow:hidden;padding:35px;position:relative;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.vc-party-stat-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:5px;left:0;position:absolute;right:0;top:0}.vc-party-stat-card.vc-party-rank-1:before{background:linear-gradient(90deg,#f59e0b,#d97706)}.vc-party-stat-card.vc-party-rank-2:before{background:linear-gradient(90deg,#94a3b8,#64748b)}.vc-party-stat-card.vc-party-rank-3:before{background:linear-gradient(90deg,#f97316,#ea580c)}.vc-party-stat-card:hover{box-shadow:0 16px 48px #667eea33;transform:translateY(-10px)}.vc-party-rank{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 12px #667eea4d;color:#fff;display:flex;font-size:16px;font-weight:700;height:40px;justify-content:center;position:absolute;right:20px;top:20px;width:40px}.vc-party-stat-card.vc-party-rank-1 .vc-party-rank{animation:vc-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b66}@keyframes vc-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.vc-party-logo{border:4px solid #e2e8f0;border-radius:50%;box-shadow:0 4px 16px #0000001a;height:100px;margin:0 auto 20px;overflow:hidden;width:100px}.vc-party-logo img{height:100%;object-fit:cover;width:100%}.vc-party-logo-fallback{align-items:center;background:linear-gradient(135deg,#cbd5e1,#94a3b8);color:#fff;display:flex;font-size:40px;height:100%;justify-content:center;width:100%}.vc-party-stat-card h3{color:#1e293b;font-size:22px;font-weight:800;margin:0 0 8px}.vc-party-short-name{color:#64748b;font-size:14px;font-weight:600;margin-bottom:20px}.vc-party-seats{margin-bottom:15px}.vc-seats-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;display:block;font-size:48px;font-weight:900;line-height:1;margin-bottom:5px}.vc-party-stat-card.vc-party-rank-1 .vc-seats-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f59e0b,#d97706);-webkit-background-clip:text;background-clip:text}.vc-seats-label{color:#64748b;font-size:14px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.vc-party-votes{align-items:center;border-top:2px solid #f1f5f9;color:#64748b;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding-top:15px}.vc-party-votes i{color:#667eea}.vc-all-parties-table{background:#fff;border-radius:20px;box-shadow:0 8px 32px #0000001a;margin-bottom:30px;padding:35px}.vc-all-parties-table h3{color:#1e293b;font-size:24px;font-weight:700;margin:0 0 25px}.vc-parties-table-wrapper{overflow-x:auto}.vc-parties-table{border-collapse:collapse;width:100%}.vc-parties-table thead{background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.vc-parties-table th{border-bottom:2px solid #e2e8f0;color:#1e293b;font-size:14px;font-weight:700;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.vc-parties-table tbody tr{border-bottom:1px solid #f1f5f9;transition:all .3s}.vc-parties-table tbody tr:hover{background:#f8f9ff;transform:scale(1.01)}.vc-parties-table tbody tr.vc-top-party-1{background:linear-gradient(90deg,#fef3c7,#0000)}.vc-parties-table tbody tr.vc-top-party-2{background:linear-gradient(90deg,#e0e7ff,#0000)}.vc-parties-table tbody tr.vc-top-party-3{background:linear-gradient(90deg,#fed7aa,#0000)}.vc-parties-table td{color:#475569;font-size:15px;padding:18px 16px}.vc-table-rank{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:inline-flex;font-size:14px;font-weight:700;height:36px;justify-content:center;width:36px}.vc-top-party-1 .vc-table-rank{background:linear-gradient(135deg,#f59e0b,#d97706)}.vc-top-party-2 .vc-table-rank{background:linear-gradient(135deg,#94a3b8,#64748b)}.vc-top-party-3 .vc-table-rank{background:linear-gradient(135deg,#f97316,#ea580c)}.vc-party-name-cell{align-items:center;display:flex;gap:12px}.vc-party-mini-logo{border:2px solid #e2e8f0;border-radius:8px;height:40px;object-fit:cover;width:40px}.vc-party-full-name{color:#1e293b}.vc-party-code{color:#64748b;font-size:13px;font-weight:600}.vc-seats-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;display:inline-flex;font-size:18px;font-weight:700;padding:8px 16px}.vc-top-party-1 .vc-seats-badge{background:linear-gradient(135deg,#f59e0b,#d97706)}.vc-votes-cell{color:#1e293b;font-weight:700}.vc-vote-share-cell{align-items:center;display:flex;gap:12px}.vc-vote-share-bar{background:#e2e8f0;border-radius:6px;flex:1 1;height:12px;overflow:hidden}.vc-vote-share-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:6px;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.vc-vote-share-percent{color:#667eea;font-weight:700;min-width:50px}.vc-all-candidates-header{margin-bottom:30px;text-align:center}.vc-all-candidates-header h2{align-items:center;color:#fff;display:flex;font-size:28px;gap:12px;justify-content:center;margin-bottom:10px}.vc-all-candidates-header p{color:#ffffffe6;font-size:15px}.vc-candidates-grid-view{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-top:30px}.vc-candidate-card{background:#fff;border-left:5px solid #667eea;border-radius:12px;box-shadow:0 4px 16px #0000001a;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all .3s ease}.vc-candidate-card:hover{box-shadow:0 12px 32px #00000026;transform:translateY(-8px)}.vc-vote-count-badge{animation:vc-pulse-badge 2s ease-in-out infinite;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:10px;box-shadow:0 4px 16px #f59e0b66;color:#fff;margin-top:10px;padding:8px 12px;position:absolute;right:10px;text-align:center;top:10px;z-index:10}@keyframes vc-pulse-badge{0%,to{box-shadow:0 4px 16px #f59e0b66;transform:scale(1)}50%{box-shadow:0 6px 20px #f59e0b99;transform:scale(1.05)}}.vc-vote-number{font-size:18px;font-weight:900;line-height:1;margin-bottom:2px;text-shadow:0 1px 2px #0003}.vc-vote-label{font-size:9px;font-weight:700;letter-spacing:.5px;opacity:.95}.vc-card-header{align-items:center;display:flex;gap:12px;padding:15px 100px 15px 15px}.vc-candidate-photo{align-items:center;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 8px #00000026;display:flex;flex-shrink:0;height:60px;justify-content:center;overflow:hidden;position:relative;width:60px}.vc-candidate-photo img{height:100%;object-fit:cover;width:100%}.vc-initials{align-items:center;color:#fff;display:flex;font-size:22px;font-weight:800;justify-content:center;text-shadow:0 1px 2px #0003}.vc-candidate-info{flex:1 1;min-width:0}.vc-candidate-info h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#1e293b;display:-webkit-box;font-size:14px;font-weight:800;line-height:1.2;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis}.vc-constituency-name{color:#475569;font-size:11px;font-weight:700;margin-bottom:2px}.vc-constituency-name,.vc-district-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vc-district-name{color:#64748b;font-size:10px;font-weight:600}.vc-party-info-bar{align-items:center;color:#fff;display:flex;justify-content:space-between;margin-top:auto;overflow:hidden;padding:12px 15px;position:relative}.vc-party-info-bar:before{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%;z-index:1}.vc-party-left{align-items:center;display:flex;flex:1 1;gap:10px;min-width:0;position:relative;z-index:2}.vc-party-badge{background:#3f51b5;border-radius:8px;box-shadow:0 2px 8px #00000026;color:inherit;flex-shrink:0;font-size:12px;font-weight:800;padding:4px 10px}.vc-party-full-name{font-size:11px;font-weight:700;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px #0000001a;white-space:nowrap}.vc-party-symbol-badge{align-items:center;background:#fff;border-radius:50%;box-shadow:0 4px 12px #0003;display:flex;flex-shrink:0;height:40px;justify-content:center;padding:8px;position:relative;width:40px;z-index:2}.vc-party-symbol-badge img{height:100%;object-fit:contain;width:100%}.vc-party-symbol-fallback{align-items:center;color:#cbd5e1;display:none;font-size:20px;height:100%;justify-content:center;width:100%}.vc-countdown-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px}.vc-countdown-card{animation:vc-fadeInScale .8s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border-radius:32px;box-shadow:0 20px 60px #0003,inset 0 0 0 1px #ffffff80;max-width:900px;padding:60px 40px;text-align:center;width:100%}@keyframes vc-fadeInScale{0%{opacity:0;transform:scale(.9) translateY(30px)}to{opacity:1;transform:scale(1) translateY(0)}}.vc-countdown-icon{align-items:center;animation:vc-pulse-icon 2s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 15px 40px #667eea66;color:#fff;display:flex;font-size:60px;height:120px;justify-content:center;margin:0 auto 30px;width:120px}@keyframes vc-pulse-icon{0%,to{box-shadow:0 15px 40px #667eea66;transform:scale(1)}50%{box-shadow:0 20px 50px #667eea99;transform:scale(1.05)}}.vc-countdown-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:42px;font-weight:800;margin:0 0 15px}.vc-countdown-subtitle{color:#64748b;font-size:20px;font-weight:600;margin:0 0 20px}.vc-target-date{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:16px;box-shadow:0 8px 24px #f59e0b4d;color:#92400e;display:inline-flex;font-size:24px;font-weight:800;gap:12px;margin-bottom:50px;padding:15px 30px}.vc-target-date i{font-size:28px}.vc-countdown-timer{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:40px}.vc-time-box{animation:vc-bounce-gentle 2s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 30px #667eea4d;min-width:130px;padding:25px 30px}.vc-time-box:first-child{animation-delay:0s}.vc-time-box:nth-child(3){animation-delay:.1s}.vc-time-box:nth-child(5){animation-delay:.2s}.vc-time-box:nth-child(7){animation-delay:.3s}@keyframes vc-bounce-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.vc-time-value{color:#fff;font-size:56px;font-weight:900;line-height:1;margin-bottom:8px;text-shadow:0 2px 4px #0003}.vc-time-label{color:#ffffffe6;font-size:14px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.vc-time-separator{animation:vc-blink-separator 1.5s ease-in-out infinite;color:#667eea;font-size:48px;font-weight:800}@keyframes vc-blink-separator{0%,to{opacity:1}50%{opacity:.3}}.vc-countdown-message{align-items:center;background:linear-gradient(135deg,#f0f4ff,#e0e7ff);border-radius:16px;display:flex;gap:15px;justify-content:center;margin-bottom:40px;padding:25px 30px}.vc-countdown-message i{color:#667eea;flex-shrink:0;font-size:28px}.vc-countdown-message p{color:#475569;font-size:18px;font-weight:600;margin:0;text-align:left}.vc-countdown-features{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:30px}.vc-feature-item{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:20px;transition:all .3s ease}.vc-feature-item:hover{border-color:#667eea;box-shadow:0 10px 25px #667eea33;transform:translateY(-5px)}.vc-feature-item i{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:36px}.vc-feature-item span{color:#1e293b;font-size:15px;font-weight:700;text-align:center}@media (max-width:1200px){.vc-candidates-grid-view{gap:18px;grid-template-columns:repeat(3,1fr)}.vc-page-header,.vc-results-container{max-width:1200px}}@media (max-width:900px){.vc-candidates-grid-view{gap:15px;grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.vc-candidates-grid-view{gap:15px;grid-template-columns:1fr}.vc-card-header{padding:15px 110px 15px 15px}.vc-candidate-photo{height:70px;width:70px}.vc-initials{font-size:26px}.vc-candidate-info h3{font-size:15px}.vc-constituency-name{font-size:12px}.vc-district-name{font-size:11px}.vc-party-info-bar{padding:12px 15px}.vc-party-badge{font-size:13px;padding:5px 12px}.vc-party-full-name{font-size:12px}.vc-party-symbol-badge{height:45px;width:45px}.vc-vote-count-badge{padding:10px 14px;right:12px;top:12px}.vc-vote-number{font-size:20px}.vc-vote-label{font-size:10px}}@media (max-width:768px){.vc-vote-counting-page{padding:15px}.vc-page-header{padding:25px}.vc-page-header-content h1{flex-direction:column;font-size:24px}.vc-page-header-content h1 i{font-size:30px}.vc-page-header-content p{font-size:14px}.vc-tabs-container{flex-direction:column;gap:0}.vc-tab{padding:12px 20px}.vc-tab,.vc-tab.active{border-bottom:1px solid #e2e8f0}.vc-tab.active{border-left:4px solid #667eea}.vc-constituency-selector{padding:20px}.vc-results-stats{grid-template-columns:1fr}.vc-leading-candidate-card,.vc-stat-card{padding:20px}.vc-leading-badge-top{justify-content:center;margin-bottom:15px;position:static}.vc-leading-content{flex-direction:column;gap:20px;text-align:center}.vc-leading-photo{height:120px;margin:0 auto;width:120px}.vc-leading-info h2{font-size:28px}.vc-leading-votes{justify-content:center}.vc-results-list{padding:20px}.vc-result-item{flex-wrap:wrap;gap:15px;padding:15px}.vc-candidate-details,.vc-vote-info{flex:none;width:100%}.vc-party-stats-grid{grid-template-columns:1fr}.vc-parties-table-wrapper{overflow-x:scroll}.vc-parties-table{min-width:600px}.vc-countdown-card{padding:40px 25px}.vc-countdown-icon{font-size:50px;height:100px;width:100px}.vc-countdown-title{font-size:32px}.vc-countdown-subtitle{font-size:16px}.vc-target-date{font-size:20px;padding:12px 24px}.vc-time-box{min-width:100px;padding:20px}.vc-time-value{font-size:42px}.vc-time-separator{font-size:36px}.vc-countdown-features{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.vc-countdown-timer{gap:8px}.vc-time-box{min-width:70px;padding:15px 10px}.vc-time-value{font-size:32px}.vc-time-label{font-size:11px}.vc-time-separator{font-size:28px}.vc-countdown-features{grid-template-columns:1fr}}.vc-vote-counting-page::-webkit-scrollbar{width:10px}.vc-vote-counting-page::-webkit-scrollbar-track{background:#ffffff1a}.vc-vote-counting-page::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:5px}.vc-vote-counting-page::-webkit-scrollbar-thumb:hover{background:#ffffff80}@media print{.vc-vote-counting-page{background:#fff;padding:0}.vc-constituency-selector{display:none}.vc-results-container{max-width:100%}.vc-candidate-card,.vc-result-item{page-break-inside:avoid}}.vc-alliance-chart-container{background:#fff;border-radius:20px;box-shadow:0 8px 32px #0000001a;margin-bottom:30px;padding:40px}.vc-alliance-chart{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr);margin-top:30px}.vc-alliance-group{background:linear-gradient(180deg,#ffffffe6,#f8f9fae6);border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 12px #00000014;padding:20px;transition:all .3s ease}.vc-alliance-group:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-5px)}.vc-alliance-header{border-bottom:2px solid #e2e8f0;margin-bottom:20px;padding-bottom:15px;text-align:center}.vc-alliance-header h4{font-size:24px;font-weight:900;letter-spacing:1px;margin:0 0 5px}.vc-alliance-header p{color:#64748b;font-size:13px;font-weight:600;margin:0}.vc-alliance-bars-container{align-items:flex-end;background:linear-gradient(180deg,#667eea05,#0000);border-radius:12px;display:flex;gap:12px;height:280px;justify-content:space-around;margin-bottom:20px;padding:15px 10px;position:relative}.vc-alliance-bars-container:before{background:#cbd5e1;bottom:0;content:"";height:1px;left:0;position:absolute;right:0}.vc-alliance-bar-item{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:10px}.vc-alliance-bar-wrapper{align-items:flex-end;display:flex;height:220px;justify-content:center;width:100%}.vc-alliance-bar-fill{align-items:flex-start;animation:vc-alliance-bar-grow .8s ease-out;background:linear-gradient(180deg,#667eea,#764ba2);border-radius:8px 8px 0 0;box-shadow:0 -4px 16px #667eea40;display:flex;justify-content:center;max-width:50px;padding-top:10px;position:relative;transition:all .5s cubic-bezier(.4,0,.2,1);width:70%}@keyframes vc-alliance-bar-grow{0%{height:0;opacity:0}to{opacity:1}}.vc-alliance-bar-fill:before{background:linear-gradient(180deg,#fff6,#0000);border-radius:8px 8px 0 0;content:"";height:40%;left:0;position:absolute;right:0;top:0}.vc-alliance-bar-item:hover .vc-alliance-bar-fill{box-shadow:0 -6px 20px #667eea66;transform:scaleX(1.15)}.vc-alliance-bar-value{animation:vc-value-fade .4s ease-out .3s both;color:#fff;font-size:16px;font-weight:900;text-shadow:0 1px 3px #0000004d;z-index:10}@keyframes vc-value-fade{0%{opacity:0}to{opacity:1}}.vc-alliance-bar-label{color:#1e293b;font-size:12px;font-weight:800;letter-spacing:.5px;text-align:center}.vc-alliance-footer{align-items:center;border-top:3px solid #e2e8f0;display:flex;justify-content:space-between;padding-top:15px}.vc-alliance-total{display:flex;flex-direction:column;gap:3px}.vc-alliance-seats{color:#1e293b;font-size:32px;font-weight:900;line-height:1}.vc-alliance-label{color:#64748b;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.vc-alliance-votes{color:#64748b;font-size:12px;font-weight:600;text-align:right}@media (max-width:1024px){.vc-alliance-chart{gap:25px;grid-template-columns:1fr}.vc-alliance-bars-container{height:250px}.vc-alliance-bar-wrapper{height:190px}}@media (max-width:768px){.vc-alliance-chart-container{padding:25px 20px}.vc-alliance-bars-container{gap:8px;height:220px}.vc-alliance-bar-wrapper{height:170px}.vc-alliance-bar-fill{width:80%}.vc-alliance-bar-value{font-size:14px}.vc-alliance-bar-label{font-size:10px}}.vc-constituency-section-header{align-items:center;background:#f5f7fa;border-left:5px solid #667eea;border-radius:6px;box-shadow:0 1px 6px 0 #667eea0f;color:#334155;display:flex;font-size:1.35rem;font-weight:600;gap:10px;letter-spacing:.5px;margin-bottom:18px;margin-top:36px;padding:12px 24px}.vc-constituency-section-header i{color:#667eea;font-size:1.15em;margin-right:10px}.vc-candidate-card,.vc-winner-card{overflow:visible;position:relative}.vc-winner-badge{align-items:center;background:linear-gradient(90deg,#ffe066,gold 85%);border:2px solid #fff;border-radius:30px;box-shadow:0 6px 16px #ffd70033;color:#d18616;display:flex;font-size:16px;font-weight:700;padding:6px 20px;position:absolute;right:-16px;top:-16px;z-index:2}.vc-winner-badge i{color:#ff6b00;font-size:18px;margin-right:6px}.vc-winner-card{border:2.5px solid gold!important;box-shadow:0 8px 28px #ffd7002e}.winner-runnerup-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:2rem 1rem 4rem}.page-header{color:#fff;margin-bottom:2.5rem;text-align:center}.page-header h1{font-size:2.5rem;font-weight:700;margin:0 0 .5rem;text-shadow:2px 2px 8px #0000004d}.subtitle{font-weight:300;margin:0;opacity:.95}.controls-section{display:flex;justify-content:center;margin:0 auto 2.5rem;max-width:1200px}.controls-bar{align-items:flex-start;background:#fff;border-radius:20px;box-shadow:0 8px 35px #1e283c1f;display:flex;gap:2rem;justify-content:space-between;padding:2.2rem 2.5rem;width:100%}.search-container{align-items:center;display:flex;flex-grow:1;justify-content:flex-start;min-width:420px;position:relative}.search-icon{color:#6c72b5;filter:drop-shadow(0 1px 2px #667eea22);font-size:1.25rem;left:1.35rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-input{background:#f7fafd;border:none;border-radius:50px;box-shadow:0 4px 16px #667eea21;color:#43435c;font-size:1.08rem;font-weight:500;letter-spacing:.01em;outline:none;padding:1rem 3.3rem 1rem 2.6rem;transition:box-shadow .2s,background .2s;width:100%}.search-input:focus{background:#fff;box-shadow:0 6px 24px #667eea30}.clear-search-btn{align-items:center;background:#e74c3c;border:none;border-radius:50%;box-shadow:0 2px 8px #e74c3c21;color:#fff;cursor:pointer;display:flex;font-size:1.15rem;height:34px;justify-content:center;position:absolute;right:14px;top:50%;transform:translateY(-50%);transition:background .2s,transform .18s;width:34px}.clear-search-btn:hover{background:#c0392b;transform:translateY(-50%) scale(1.08)}.results-info{align-self:center;color:#797993;font-size:1.09rem;font-weight:500;letter-spacing:.01em;min-width:215px;padding-top:.09rem;text-align:right}.results-count strong{color:gold;font-weight:700}.error-container,.loading-container{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin:2rem auto;max-width:500px;padding:4rem 2rem;text-align:center}.spinner{animation:spin 1s linear infinite;border:5px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;margin:0 auto 1.5rem;width:50px}.error-icon{display:block;font-size:3rem;margin-bottom:1rem}.error-message{font-size:1.1rem;margin-bottom:1.5rem}.retry-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50px;box-shadow:0 4px 15px #667eea66;color:#fff;cursor:pointer;font-weight:600;padding:.9rem 2.5rem;transition:all .3s ease}.retry-btn:hover{box-shadow:0 6px 20px #667eea99;transform:translateY(-2px)}.no-results{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001a;margin:2rem auto;max-width:500px;padding:4rem 2rem}.no-results-icon{display:block;font-size:4rem;margin-bottom:1rem}.no-results h3{color:#333;font-size:1.5rem;margin:0 0 .5rem}.no-results p{color:#666;margin-bottom:1.5rem}.reset-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50px;box-shadow:0 4px 15px #667eea66;color:#fff;cursor:pointer;font-weight:600;padding:.9rem 2.5rem;transition:all .3s ease}.reset-btn:hover{box-shadow:0 6px 20px #667eea99;transform:translateY(-2px)}.results-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(500px,1fr));margin:0 auto;max-width:1400px}.constituency-card{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001f;padding:1.5rem;transition:all .3s ease}.constituency-card:hover{box-shadow:0 12px 40px #0000002e;transform:translateY(-4px)}.constituency-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;gap:.8rem;margin-bottom:1.5rem;padding-bottom:1rem}.const-code{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;font-size:.85rem;font-weight:700;letter-spacing:.5px;padding:.4rem 1rem}.const-name{color:#2c3e50;flex:1 1;font-size:1.2rem;font-weight:600;margin:0}.candidates-container{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.candidate-card{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #0000;border-radius:12px;display:flex;flex-direction:column;padding:1.5rem;position:relative;text-align:center;transition:all .3s ease}.card-badge{border-radius:20px;box-shadow:0 4px 12px #00000026;font-size:.85rem;font-weight:700;left:50%;padding:.4rem 1.2rem;position:absolute;top:-12px;transform:translateX(-50%);white-space:nowrap}.winner-badge{background:linear-gradient(135deg,gold,#ffed4e);color:#333}.runnerup-badge{background:linear-gradient(135deg,silver,#e8e8e8);color:#333}.winner-card{border-color:gold}.runnerup-card{border-color:silver}.candidate-photo-wrapper{background:#fff;border-radius:50%;box-shadow:0 4px 16px #00000026;height:90px;margin:1.5rem 0 1rem;overflow:hidden;width:90px}.candidate-photo{height:100%;object-fit:cover;width:100%}.photo-placeholder{align-items:center;display:flex;font-size:2.5rem;height:100%;justify-content:center;width:100%}.winner-placeholder{background:linear-gradient(135deg,#fffacd,#ffed4e)}.runnerup-placeholder{background:linear-gradient(135deg,#e0e0e0,#f5f5f5)}.candidate-name{color:#2c3e50;font-size:1.1rem;font-weight:700;line-height:1.3;margin:0 0 .8rem}.party-info{align-items:center;background:#ffffffb3;border-radius:8px;display:flex;gap:.6rem;justify-content:center;margin-bottom:1rem;min-height:45px;padding:.6rem 1rem}.party-symbol{border-radius:4px;height:35px;object-fit:contain;width:35px}.party-name{color:#555;font-size:.95rem;font-weight:600}.vote-count{background:#fffc;border-radius:8px;display:flex;flex-direction:column;gap:.3rem;padding:.8rem;width:100%}.vote-label{color:#777;font-size:.85rem;font-weight:500}.vote-number{color:#2c3e50;font-size:1.4rem;font-weight:700}.no-data-card{background:#f0f0f0;border-color:#ddd;color:#999;font-style:italic;justify-content:center;min-height:250px}@media (max-width:1024px){.results-grid{grid-template-columns:1fr}}@media (max-width:900px){.controls-bar{align-items:stretch;flex-direction:column;gap:1.2rem;padding:1.1rem 1.1rem 1.5rem}.results-info{font-size:1rem;margin-top:.7rem;padding-top:0;text-align:left}.results-info,.search-container{min-width:0;min-width:auto}}@media (max-width:768px){.page-header h1{font-size:2rem}.candidates-container{grid-template-columns:1fr}.constituency-header{align-items:flex-start;flex-direction:column}.const-code{align-self:flex-start}.controls-bar{padding:.8rem .5rem 1.2rem}}.voter-survey-page{background:linear-gradient(135deg,#3f51b5,#3f51b5);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh;padding:40px 20px}.survey-container{animation:slideUp .4s ease;background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;margin:0 auto;max-width:900px;overflow:hidden}.survey-header{background:linear-gradient(135deg,#1e3c72,#2a5298);color:#fff;overflow:hidden;padding:50px 40px;position:relative;text-align:center}.survey-header:before{background:radial-gradient(circle at 20% 50%,#ffffff14 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.survey-header h1{font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin-bottom:12px;position:relative;z-index:1}.survey-header p{font-size:1.1rem;font-weight:400;opacity:.92;position:relative;z-index:1}.survey-form{max-height:calc(100vh - 200px);overflow-y:auto;padding:40px}.survey-form::-webkit-scrollbar{width:8px}.survey-form::-webkit-scrollbar-track{background:#f5f5f5}.survey-form::-webkit-scrollbar-thumb{background:#2a5298;border-radius:4px}.survey-form::-webkit-scrollbar-thumb:hover{background:#1e3c72}.form-section{animation:fadeIn .5s ease;border-bottom:1px solid #e9ecef;margin-bottom:40px;padding-bottom:30px}.form-section:last-child{border-bottom:none}.form-row{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:24px}.form-group{display:flex;flex-direction:column;position:relative}.form-group label{align-items:center;color:#2c3e50;display:flex;font-size:.95rem;font-weight:600;gap:5px;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background:#f8f9fb;border:1.5px solid #d4d9e3;border-radius:8px;color:#2c3e50;font-family:inherit;font-size:1rem;padding:12px 16px;transition:all .3s ease}.form-group input::placeholder,.form-group textarea::placeholder{color:#a0a9ba}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#fff;border-color:#2a5298;box-shadow:0 0 0 4px #2a529814;outline:none;transform:translateY(-2px)}.form-group input:disabled,.form-group select:disabled{background:#f0f2f5;color:#8b9aaa;cursor:not-allowed;opacity:.7}.form-group input.error,.form-group select.error,.form-group textarea.error{background:#fef5f5;border-color:#e74c3c}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{box-shadow:0 0 0 4px #e74c3c14}.error-message{align-items:center;animation:slideIn .2s ease;color:#e74c3c;display:flex;font-size:.85rem;font-weight:500;gap:5px;margin-top:6px}.error-message:before{content:"⚠️";font-size:.9rem}.checking-message{align-items:center;animation:pulse 1.5s infinite;color:#3498db;display:flex;font-size:.85rem;gap:5px;margin-top:6px}.checking-message:before{animation:dot 1.5s infinite;background:#3498db;border-radius:50%;content:"";display:inline-block;height:8px;width:8px}@keyframes dot{0%{transform:scale(.8)}50%{transform:scale(1.2)}to{transform:scale(.8)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.survey-form .selected-candidate-info{animation:slideIn .3s ease;background:linear-gradient(135deg,#f0f4f8,#e8eef7);border-left:4px solid #2a5298;border-radius:12px;margin-top:25px;padding:24px}.survey-form .candidate-card{align-items:center;display:flex;gap:20px;padding:12px 0}.survey-form .candidate-photo{border:3px solid #2a5298;border-radius:50%;box-shadow:0 4px 12px #2a529826;flex-shrink:0;height:80px;object-fit:cover;width:80px}.survey-form .candidate-details{flex:1 1}.survey-form .candidate-details h3{color:#1e3c72;font-size:1.25rem;font-weight:700;margin:0 0 6px}.survey-form .candidate-details .party{color:#2a5298;font-size:.95rem;font-weight:600;margin-bottom:8px}.survey-form .candidate-details p{color:#5a6c7d;font-size:.95rem;margin:4px 0}.form-actions{border-top:1px solid #e9ecef;margin-top:0;padding-top:30px;text-align:center}.submit-btn{background:linear-gradient(135deg,#2a5298,#1e3c72);border:none;border-radius:8px;box-shadow:0 4px 15px #2a529833;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;letter-spacing:.3px;overflow:hidden;padding:14px 56px;position:relative;transition:all .3s ease}.submit-btn:before{background:#ffffff26;content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .3s ease;width:100%}.submit-btn:hover:not(:disabled){box-shadow:0 8px 25px #2a52984d;transform:translateY(-2px)}.submit-btn:hover:not(:disabled):before{left:100%}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{box-shadow:0 2px 8px #00000014;cursor:not-allowed;opacity:.65}@media (max-width:768px){.voter-survey-page{padding:20px 10px}.survey-container{border-radius:12px}.survey-header{padding:35px 25px}.survey-header h1{font-size:2rem}.survey-header p{font-size:1rem}.survey-form{padding:25px 20px}.form-row{gap:18px;grid-template-columns:1fr}.form-section{margin-bottom:30px;padding-bottom:20px}.survey-form .candidate-card{flex-direction:column;text-align:center}.survey-form .candidate-photo{height:70px;width:70px}.submit-btn{font-size:1rem;padding:12px 40px;width:100%}.form-actions{margin-top:0;padding-top:20px}}@media (max-width:480px){.survey-header h1{font-size:1.5rem}.form-group label,.survey-header p{font-size:.9rem}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:12px 14px}.survey-form .candidate-card{gap:15px}.survey-form .candidate-details h3{font-size:1.1rem}.form-row{gap:12px}}@media (prefers-reduced-motion:reduce){.error-message,.form-section,.submit-btn,.survey-container{animation:none}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.submit-btn:hover{transition:none}}@media print{.voter-survey-page{background:#fff;padding:0}.survey-container{border-radius:0;box-shadow:none}.form-actions,.submit-btn{display:none}}.survey-thank-you-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px}.thank-you-container{animation:slideUp .5s ease;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;margin-bottom:40px;max-width:600px;padding:60px 40px;text-align:center}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.success-icon{animation:bounceIn .6s ease;display:flex;justify-content:center;margin-bottom:30px}@keyframes bounceIn{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.thank-you-container h1{color:#27ae60;font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin-bottom:15px}.subtitle{color:#666;font-size:1.1rem;line-height:1.5;margin-bottom:30px}.survey-id-box{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-left:4px solid #667eea;border-radius:12px;box-shadow:0 2px 8px #667eea1a;margin:30px 0;padding:25px}.id-label{color:#666;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.survey-id{background:#fff;border:2px dashed #667eea;border-radius:8px;color:#667eea;display:inline-block;font-family:Courier New,monospace;font-size:1.3rem;font-weight:700;letter-spacing:1px;padding:12px 20px}.survey-info{color:#555;font-size:1rem;line-height:1.8;margin:30px 0}.action-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:40px}.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:50px;box-shadow:0 4px 15px #0000001a;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;justify-content:center;padding:14px 35px;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-secondary{background:#fff;border:2px solid #667eea;color:#667eea}.btn-primary:hover{background:linear-gradient(135deg,#5568d3,#6a3f92);box-shadow:0 10px 30px #667eea66;transform:translateY(-3px)}.btn-secondary:hover{background:#f8f9fa;border-color:#764ba2;box-shadow:0 10px 25px #667eea33;color:#764ba2;transform:translateY(-3px)}.btn-primary:active,.btn-secondary:active{transform:translateY(-1px)}.tech-provider-footer{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-top:2px solid #dee2e6;box-shadow:0 -5px 20px #0000000d;margin-top:auto;padding:30px 20px;text-align:center;width:100%}.footer-content{margin:0 auto;max-width:1200px}.tech-credit{align-items:center;color:#495057;display:flex;flex-wrap:wrap;font-size:14px;font-weight:500;justify-content:center;letter-spacing:.5px;margin:0}.provider-name{margin-left:6px}.provider-name a{border-radius:4px;color:#667eea;font-weight:700;letter-spacing:.3px;padding:4px 8px;text-decoration:none;transition:all .3s ease}.provider-name a:hover{background:#667eea1a;box-shadow:0 2px 8px #667eea33;color:#764ba2;text-decoration:underline}.provider-name a:visited{color:#667eea}@media (max-width:768px){.thank-you-container{margin-bottom:30px;max-width:90%;padding:40px 25px}.thank-you-container h1{font-size:2rem}.subtitle{font-size:1rem}.survey-id-box{margin:25px 0;padding:20px}.survey-id{font-size:1.1rem;padding:10px 15px}.action-buttons{flex-direction:column;gap:12px}.btn-primary,.btn-secondary{font-size:.95rem;padding:12px 20px;width:100%}.tech-provider-footer{padding:20px 15px}.tech-credit{flex-direction:column;font-size:13px}.provider-name{margin-left:0;margin-top:6px}}@media (max-width:480px){.survey-thank-you-page{padding:15px}.thank-you-container{border-radius:16px;padding:30px 20px}.thank-you-container h1{font-size:1.7rem;margin-bottom:10px}.subtitle{font-size:.95rem}.survey-info{font-size:.9rem;line-height:1.6;margin:20px 0}.survey-id-box{border-radius:10px;margin:20px 0;padding:15px}.id-label{font-size:.85rem}.survey-id{font-size:1rem;padding:8px 12px}.action-buttons{gap:10px;margin-top:30px}.btn-primary,.btn-secondary{border-radius:40px;font-size:.9rem;padding:11px 18px}.success-icon svg{height:80px;width:80px}.tech-provider-footer{padding:15px 12px}.tech-credit{font-size:12px}}.btn-primary:focus,.btn-secondary:focus,.provider-name a:focus{outline:2px solid #667eea;outline-offset:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.survey-thank-you-page{animation:fadeIn .3s ease}@media print{.action-buttons,.tech-provider-footer{display:none}.thank-you-container{border:1px solid #ddd;box-shadow:none}}.survey-results-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:40px 20px}.survey-results-container{margin:0 auto;max-width:1200px}.results-header{animation:slideDown .5s ease;margin-bottom:40px;text-align:center}.results-header h1{align-items:center;color:#fff;display:flex;font-size:2.8rem;font-weight:700;gap:15px;justify-content:center;margin-bottom:10px}.results-header h1 i{color:#667eea;font-size:2.5rem}.results-header p{color:#d2d0d0;font-size:1.1rem;margin:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.demo-warning{animation:slideUp .5s ease;background:#fffbeb;border-left:5px solid #f59e0b;border-radius:8px;display:flex;gap:15px;margin-bottom:30px;padding:20px}.demo-warning i{color:#f59e0b;flex-shrink:0;font-size:2rem}.demo-warning-content h4{color:#92400e;font-size:1.1rem;margin-top:0}.demo-warning-content p{color:#78350f;margin:5px 0}.demo-cta{margin-top:10px}.participate-link{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;display:inline-flex;font-weight:600;gap:8px;padding:10px 20px;text-decoration:none;transition:all .3s ease}.participate-link:hover{box-shadow:0 5px 15px #667eea4d;transform:translateY(-2px)}.real-data-badge{align-items:center;animation:slideUp .5s ease;background:#d1fae5;border-radius:20px;color:#065f46;display:inline-flex;font-weight:600;gap:8px;margin-bottom:30px;padding:10px 20px}.real-data-badge i{color:#10b981;font-size:1.2rem}.summary-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.stat-box{align-items:center;animation:fadeInUp .6s ease;background:#fff;border-radius:12px;box-shadow:0 5px 15px #0000001a;display:flex;gap:20px;padding:25px;transition:all .3s ease}.stat-box:hover{box-shadow:0 10px 25px #00000026;transform:translateY(-5px)}.stat-box i{align-items:center;background:#667eea1a;border-radius:50%;color:#667eea;display:flex;flex-shrink:0;font-size:2.5rem;height:60px;justify-content:center;width:60px}.stat-content h3{color:#fff;font-size:2rem;font-weight:700;margin:0 0 5px}.stat-content p{align-items:center;color:#666;display:flex;font-size:.95rem;gap:8px;margin:0}.demo-tag{background:#fecaca;border-radius:4px;color:#991b1b;font-size:.75rem;font-weight:600;padding:2px 8px}.view-selector{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:40px}.view-btn{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:25px;color:#666;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:12px 25px;transition:all .3s ease}.view-btn:hover{border-color:#667eea;color:#667eea}.view-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.chart-section{animation:fadeInUp .6s ease;background:#fff;border-radius:12px;box-shadow:0 5px 15px #0000001a;padding:30px}.chart-header,.chart-section{margin-bottom:30px}.chart-header h2{color:#333;font-size:1.8rem;font-weight:700;margin:0 0 10px}.chart-header p{color:#666;font-size:1rem;margin:0}.chart-container{height:400px;margin-bottom:30px;position:relative}.data-table{overflow-x:auto}.data-table table{border-collapse:collapse;margin-top:20px;width:100%}.data-table th{background:#f3f4f6;border-bottom:2px solid #e5e7eb;color:#333;font-weight:600;padding:15px;text-align:left}.data-table td{border-bottom:1px solid #e5e7eb;color:#555;padding:15px}.percentage-bar{align-items:center;display:flex;gap:10px}.bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;flex:1 1;height:8px;max-width:150px}.bar-fill.green{background:linear-gradient(90deg,#10b981,#059669)}.percentage-bar span{color:#667eea;font-weight:600;min-width:45px}.issues-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:30px}.issue-card{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:12px;padding:20px;position:relative;transition:all .3s ease}.issue-card:hover{box-shadow:0 10px 25px #0000001a;transform:translateY(-5px)}.issue-rank{align-items:center;background:#667eea;border-radius:50%;color:#fff;display:flex;font-size:1.2rem;font-weight:700;height:40px;justify-content:center;position:absolute;right:10px;top:10px;width:40px}.issue-card h4{color:#333;font-size:1.1rem;margin:0 0 15px;padding-right:50px}.issue-stats{display:flex;justify-content:space-between;margin-bottom:10px}.issue-stats .votes{color:#555;font-size:.9rem}.issue-stats .percentage{color:#667eea;font-weight:700}.issue-progress{background:#0000001a;border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:3px;height:100%}.rating-summary{margin-top:30px}.rating-stats{display:flex;flex-direction:column;gap:20px}.rating-stat{grid-gap:20px;align-items:center;display:grid;gap:20px;grid-template-columns:150px 1fr 150px}.rating-label{color:#333;font-weight:600}.rating-bar-container{background:#e5e7eb;border-radius:12px;height:25px;overflow:hidden}.rating-bar{border-radius:12px;height:100%;transition:width .5s ease}.rating-count{color:#555;font-weight:600;text-align:right}.insights-section{margin-bottom:40px;margin-top:50px}.insights-section h2{align-items:center;color:#fff;display:flex;font-size:1.8rem;gap:10px;margin-bottom:25px}.insights-section h2 i{color:#f59e0b}.insights-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.insight-card{animation:fadeInUp .6s ease;background:#fff;border-radius:12px;box-shadow:0 5px 15px #0000001a;padding:25px;transition:all .3s ease}.insight-card:hover{box-shadow:0 10px 25px #00000026;transform:translateY(-5px)}.insight-icon{color:#667eea;font-size:2.5rem;margin-bottom:15px}.insight-card h3{color:#333;font-size:1.2rem;margin:0 0 10px}.insight-card p{color:#666;line-height:1.6;margin:0}.disclaimer{background:#eff6ff;border-left:5px solid #3b82f6;border-radius:8px;display:flex;gap:15px;margin-top:40px;padding:20px}.disclaimer i{color:#3b82f6;flex-shrink:0;font-size:1.5rem}.disclaimer p{color:#1e40af;line-height:1.6;margin:0}.error-state,.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;text-align:center}.spinner-large{animation:spin 1s linear infinite;border:5px solid #e5e7eb;border-radius:50%;border-top-color:#667eea;height:60px;margin-bottom:20px;width:60px}@media (max-width:768px){.results-header h1{font-size:1.8rem}.summary-stats{grid-template-columns:1fr}.view-selector{flex-direction:column}.view-btn{justify-content:center;width:100%}.chart-section{padding:20px}.chart-container{height:300px}.insights-grid,.rating-stat{grid-template-columns:1fr}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}.live-badge{align-items:center;animation:slideUp .5s ease;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #6ee7b7;border-radius:25px;color:#065f46;display:flex;font-weight:600;gap:15px;margin-bottom:30px;padding:12px 20px}.live-dot{animation:blink 1s infinite;color:#10b981;display:inline-flex;height:12px;width:12px}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.auto-refresh-btn,.refresh-btn{background:#0000;border:none;color:#065f46;cursor:pointer;font-size:1.2rem;padding:5px 10px;transition:all .3s ease}.auto-refresh-btn:hover,.refresh-btn:hover{color:#10b981;transform:scale(1.2)}.refresh-btn i{animation:none}.refresh-btn:active i{animation:spin .5s linear}.no-data-state{animation:fadeInUp .6s ease;background:#fff;border-radius:12px;box-shadow:0 5px 15px #0000001a;padding:80px 20px;text-align:center}.no-data-state i{color:#d1d5db;font-size:4rem;margin-bottom:20px}.no-data-state h3{color:#333;font-size:1.8rem;margin-bottom:10px}.no-data-state p{color:#666;font-size:1.1rem;margin-bottom:25px}.participate-cta{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:25px;color:#fff;display:inline-flex;font-size:1.1rem;font-weight:700;gap:10px;padding:14px 35px;text-decoration:none;transition:all .3s ease}.participate-cta:hover{box-shadow:0 10px 25px #667eea4d;transform:translateY(-3px)}.live-tag{animation:pulse 2s infinite;background:#fca5a5;border-radius:4px;color:#991b1b;font-size:.75rem;font-weight:700;padding:2px 8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.analytics-page{background:#f5f7fa;min-height:100vh;padding:40px 20px}.analytics-container{margin:0 auto;max-width:1200px}.analytics-container h1{color:#333;font-size:2.5rem;margin-bottom:40px;text-align:center}.analytics-section{background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a;margin-bottom:30px;padding:30px}.analytics-section h2{color:#333;font-size:1.8rem;margin-bottom:25px}.analytics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.analytics-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;padding:25px;transition:all .3s ease}.analytics-card:hover{box-shadow:0 10px 30px #667eea4d;transform:translateY(-5px)}.analytics-card h3{font-size:1.3rem;margin-bottom:10px}.analytics-card p{margin:5px 0;opacity:.9}.concerns-list{display:flex;flex-direction:column;gap:15px}.concern-item{background:#f8f9fa;border-radius:10px;padding:20px;transition:all .3s ease}.concern-item:hover{box-shadow:0 5px 15px #0000001a;transform:translateX(5px)}.concern-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.concern-header h3{color:#333;font-size:1.2rem;margin:0}.percentage{color:#667eea;font-size:1.5rem;font-weight:700}@media (max-width:768px){.analytics-section{padding:20px}.analytics-grid{grid-template-columns:1fr}}.blog-page{background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);min-height:100vh}.blog-hero{background:linear-gradient(135deg,#667eeaf2,#764ba2f2);box-shadow:0 4px 20px #0003;color:#fff;padding:80px 20px 60px;text-align:center}.blog-hero-content h1{font-size:3em;font-weight:800;margin-bottom:15px;text-shadow:2px 2px 10px #0000004d}.blog-hero-content h1 i{color:gold;margin-right:15px}.blog-hero-content p{font-size:1.3em;margin-bottom:40px;opacity:.95}.hero-stats{display:flex;flex-wrap:wrap;gap:60px;justify-content:center}.hero-stat{align-items:center;display:flex;flex-direction:column}.stat-number{color:gold;font-size:2.5em;font-weight:800;line-height:1}.stat-label{font-size:.9em;letter-spacing:1px;margin-top:8px;opacity:.9;text-transform:uppercase}.blog-container{margin:0 auto;max-width:1400px;padding:40px 20px}.blog-controls{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff2;border-radius:20px;box-shadow:0 8px 30px #00000026;margin-bottom:40px;padding:30px}.search-box{position:relative}.search-box i{color:#667eea;font-size:1.2em;left:20px;position:absolute;top:50%;transform:translateY(-50%)}.search-box input{border:2px solid #e2e8f0;border-radius:15px;font-size:1.05em;font-weight:600;margin-bottom:10px;padding:18px 20px 18px 55px;transition:all .3s ease;width:100%}.search-box input:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;outline:none}.category-filters{display:flex;flex-wrap:wrap;gap:12px}.category-btn{background:#fff;border:2px solid #e2e8f0;border-radius:25px;color:#475569;cursor:pointer;font-size:.95em;font-weight:700;padding:12px 25px;transition:all .3s ease}.category-btn:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea33;color:#667eea;transform:translateY(-2px)}.category-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 6px 20px #667eea66;color:#fff}.section-title{align-items:center;color:#1e293b;display:flex;font-size:2em;font-weight:800;gap:15px;margin-bottom:30px}.section-title i{color:#667eea;font-size:.9em}.results-count{color:#64748b;font-size:.5em;font-weight:600;margin-left:10px}.featured-section{margin-bottom:60px}.featured-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.featured-card{background:#fff;border-radius:20px;box-shadow:0 8px 30px #0000001f;cursor:pointer;overflow:hidden;transition:all .3s ease}.featured-card:hover{box-shadow:0 15px 40px #667eea40;transform:translateY(-8px)}.featured-image{height:240px;overflow:hidden;position:relative}.featured-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.featured-card:hover .featured-image img{transform:scale(1.1)}.featured-badge{background:linear-gradient(135deg,gold,#ffed4e);border-radius:20px;box-shadow:0 4px 15px #ffd70066;color:#1e293b;font-size:.85em;font-weight:700;padding:8px 16px;position:absolute;right:15px;top:15px}.featured-badge i{margin-right:5px}.featured-content{padding:25px}.blog-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.category-tag{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px;color:#fff;font-size:.8em;font-weight:700;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.read-time{color:#64748b;font-size:.9em;font-weight:600}.read-time i{margin-right:5px}.featured-content h3{color:#1e293b;font-size:1.4em;font-weight:800;line-height:1.3;margin-bottom:12px}.featured-content p{color:#475569;font-weight:500;line-height:1.6;margin-bottom:20px}.blog-footer{align-items:center;border-top:2px solid #f1f5f9;color:#64748b;display:flex;font-size:.85em;font-weight:600;justify-content:space-between;padding-top:15px}.author i,.date i{color:#667eea;margin-right:6px}.all-blogs-section{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff2;border-radius:20px;box-shadow:0 8px 30px #0000001f;margin-bottom:40px;padding:40px}.blog-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.blog-card{background:#fff;border:2px solid #0000;border-radius:18px;box-shadow:0 4px 15px #00000014;cursor:pointer;overflow:hidden;transition:all .3s ease}.blog-card:hover{border-color:#667eea;box-shadow:0 10px 30px #667eea33;transform:translateY(-5px)}.blog-image{height:200px;overflow:hidden;position:relative}.blog-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.blog-card:hover .blog-image img{transform:scale(1.08)}.category-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#667eeaf2;border-radius:12px;color:#fff;font-size:.75em;font-weight:700;left:12px;padding:6px 12px;position:absolute;text-transform:uppercase;top:12px}.blog-content{padding:22px}.blog-content h3{font-size:1.2em;font-weight:800;line-height:1.3;margin-bottom:10px}.blog-excerpt{color:#475569;font-size:.95em;font-weight:500;line-height:1.5;margin-bottom:15px}.blog-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.tag{background:#f1f5f9;border-radius:10px;color:#667eea;font-size:.75em;font-weight:700;padding:4px 10px}.no-results{color:#64748b;padding:80px 20px;text-align:center}.no-results i{font-size:5em;margin-bottom:20px;opacity:.2}.no-results h3{color:#1e293b;font-size:1.8em;margin-bottom:10px}.blog-cta{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 40px #667eea4d;padding:60px 40px;text-align:center}.cta-content i{color:gold;font-size:3em;margin-bottom:20px}.cta-content h3{color:#fff;font-size:2.2em;font-weight:800;margin-bottom:15px}.cta-content p{color:#ffffffe6;font-size:1.2em;margin-bottom:35px}.cta-buttons{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.cta-btn{align-items:center;border:none;border-radius:50px;cursor:pointer;display:inline-flex;font-size:1.05em;font-weight:700;gap:10px;padding:16px 35px;transition:all .3s ease}.cta-btn.primary{background:#fff;box-shadow:0 4px 20px #ffffff4d;color:#667eea}.cta-btn.primary:hover{box-shadow:0 8px 30px #fff6;transform:translateY(-3px)}.cta-btn.secondary{background:#fff3;border:2px solid #fff;color:#fff}.cta-btn.secondary:hover{background:#fff;color:#667eea;transform:translateY(-3px)}@media (max-width:768px){.blog-hero-content h1{font-size:2em}.hero-stats{gap:30px}.stat-number{font-size:2em}.blog-grid,.featured-grid{grid-template-columns:1fr}.category-filters{justify-content:center}.section-title{font-size:1.5em}.cta-content h3{font-size:1.6em}.cta-buttons{flex-direction:column}.cta-btn{justify-content:center;width:100%}}.blog-detail-page{background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);min-height:100vh;padding-bottom:60px}.breadcrumb{align-items:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff2;box-shadow:0 2px 15px #0000001a;display:flex;flex-wrap:wrap;font-size:.95em;gap:12px;margin-bottom:30px;margin:0 auto;max-width:1400px;padding:18px 0;padding:18px 20px}.breadcrumb-link{color:#667eea;cursor:pointer;font-weight:600;transition:all .2s ease}.breadcrumb-link:hover{color:#764ba2;text-decoration:underline}.breadcrumb i{color:#cbd5e1;font-size:.8em}.breadcrumb-current{color:#475569;font-weight:700}.blog-detail-container{margin:0 auto;max-width:1400px;padding:0 20px}.blog-header{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border-radius:20px;box-shadow:0 10px 40px #00000026;margin-bottom:30px;padding:50px}.blog-header-content .category-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;display:inline-block;font-size:.85em;font-weight:700;letter-spacing:1px;margin-bottom:20px;padding:8px 18px;text-transform:uppercase}.blog-title{color:#1e293b;font-size:3em;font-weight:900;line-height:1.2;margin-bottom:18px}.blog-subtitle{color:#475569;font-size:1.4em;font-weight:500;line-height:1.5;margin-bottom:30px}.blog-meta-bar{align-items:center;border-top:2px solid #e2e8f0;gap:20px;justify-content:space-between;padding-top:25px}.blog-meta-bar,.meta-left{display:flex;flex-wrap:wrap}.meta-left{gap:25px}.meta-left>span{color:#64748b;font-size:.95em;font-weight:600}.meta-left i{color:#667eea;margin-right:8px}.share-buttons{align-items:center;display:flex;gap:10px}.share-label{color:#64748b;font-size:.9em;font-weight:700;margin-right:5px}.share-btn{align-items:center;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.95em;height:40px;justify-content:center;transition:all .3s ease;width:40px}.share-btn:hover{box-shadow:0 6px 20px #0003;transform:translateY(-3px)}.share-btn.facebook{background:#1877f2}.share-btn.twitter{background:#1da1f2}.share-btn.whatsapp{background:#25d366}.share-btn.linkedin{background:#0077b5}.blog-featured-image{border-radius:20px;box-shadow:0 10px 40px #00000026;margin-bottom:40px;max-height:600px;overflow:hidden}.blog-featured-image img{display:block;height:100%;object-fit:cover;width:100%}.blog-content-wrapper{grid-gap:40px;display:grid;gap:40px;grid-template-columns:1fr 350px;margin-bottom:60px}.blog-article{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border-radius:20px;box-shadow:0 8px 30px #0000001f;padding:50px}.blog-content{color:#334155;font-size:1.1em;line-height:1.8}.blog-content h2{border-bottom:3px solid #667eea;color:#1e293b;font-size:2em;font-weight:800;margin:40px 0 20px;padding-bottom:15px}.blog-content h3{color:#1e293b;font-size:1.5em;font-weight:700;margin:30px 0 15px}.blog-content h4{color:#475569;font-size:1.2em;font-weight:700;margin:25px 0 12px}.blog-content p{font-weight:500;margin-bottom:20px}.blog-content ol,.blog-content ul{margin:20px 0 20px 30px}.blog-content li{line-height:1.7;margin-bottom:12px}.blog-content strong{color:#1e293b;font-weight:700}.blog-content blockquote{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-left:5px solid #667eea;border-radius:10px;box-shadow:0 4px 15px #0000000d;color:#475569;font-size:1.15em;font-style:italic;font-weight:600;margin:30px 0;padding:25px 30px}.blog-content table{border-collapse:collapse;border-radius:10px;box-shadow:0 4px 15px #00000014;margin:30px 0;overflow:hidden;width:100%}.blog-content td,.blog-content th{border-bottom:1px solid #e2e8f0;padding:15px;text-align:left}.blog-content th{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:.9em;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.blog-content tr:hover{background:#f8fafc}.blog-content .checklist,.blog-content .cta-box,.blog-content .info-box{background:linear-gradient(135deg,#e0e7ff,#f3e8ff);border:2px solid #667eea;border-radius:15px;margin:30px 0;padding:25px}.blog-content .checklist h4,.blog-content .cta-box h4,.blog-content .info-box h4{color:#667eea;margin-bottom:15px;margin-top:0}.blog-content .task-list{list-style:none;margin-left:0}.blog-content .task-list li{padding-left:30px;position:relative}.blog-content .task-list li:before{color:#10b981;content:"✓";font-size:1.2em;font-weight:900;left:0;position:absolute}.blog-tags-section{border-top:2px solid #e2e8f0;margin-top:40px;padding-top:30px}.blog-tags-section h4{align-items:center;color:#1e293b;display:flex;font-weight:700;gap:10px;margin-bottom:15px}.blog-tags-section i{color:#667eea}.tags-list{display:flex;flex-wrap:wrap;gap:10px}.tags-list .tag{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:2px solid #0000;border-radius:20px;color:#667eea;font-size:.9em;font-weight:700;padding:8px 16px;transition:all .3s ease}.tags-list .tag:hover{background:#fff;border-color:#667eea;transform:translateY(-2px)}.blog-share-footer{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px;margin-top:40px;padding:30px;text-align:center}.blog-share-footer h4{color:#fff;font-size:1.3em;margin-bottom:20px}.share-buttons-large{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.share-btn-large{align-items:center;border:none;border-radius:30px;color:#fff;cursor:pointer;display:flex;font-size:.95em;font-weight:700;gap:10px;padding:12px 25px;transition:all .3s ease}.share-btn-large:hover{box-shadow:0 8px 25px #0000004d;transform:translateY(-3px)}.share-btn-large.facebook{background:#1877f2}.share-btn-large.twitter{background:#1da1f2}.share-btn-large.whatsapp{background:#25d366}.blog-sidebar{display:flex;flex-direction:column;gap:25px}.sidebar-card{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border-radius:18px;box-shadow:0 6px 25px #0000001a;padding:25px}.sidebar-card h3{align-items:center;color:#1e293b;display:flex;font-size:1.2em;font-weight:800;gap:10px;margin-bottom:20px}.sidebar-card h3 i{color:#667eea}.quick-links{display:flex;flex-direction:column;gap:12px}.quick-link-btn,.quick-links a{align-items:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;color:#475569;cursor:pointer;display:flex;font-size:.95em;font-weight:600;gap:10px;padding:12px 16px;text-decoration:none;transition:all .3s ease;width:100%}.quick-link-btn:hover,.quick-links a:hover{background:#fff;border-color:#667eea;color:#667eea;transform:translateX(5px)}.quick-links i{color:#667eea}.reminder-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-align:center}.reminder-card i{color:gold;font-size:2.5em;margin-bottom:15px}.reminder-card h3{color:#fff;justify-content:center;margin-bottom:15px}.reminder-card p{font-size:1.05em;line-height:1.6;margin-bottom:20px}.reminder-stats{border-top:2px solid #ffffff4d;display:flex;gap:20px;justify-content:space-around;margin-top:20px;padding-top:20px}.reminder-stat{align-items:center;display:flex;flex-direction:column}.reminder-stat strong{color:gold;font-size:1.8em;font-weight:900;line-height:1}.reminder-stat span{font-size:.85em;margin-top:5px;opacity:.9}.related-section{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border-radius:20px;box-shadow:0 8px 30px #0000001f;margin-bottom:40px;padding:40px}.related-section h2{align-items:center;color:#1e293b;display:flex;font-size:2em;font-weight:800;gap:15px;margin-bottom:30px}.related-section h2 i{color:#667eea}.related-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.related-card{background:#fff;border:2px solid #0000;border-radius:15px;box-shadow:0 4px 15px #00000014;cursor:pointer;overflow:hidden;transition:all .3s ease}.related-card:hover{border-color:#667eea;box-shadow:0 10px 30px #667eea33;transform:translateY(-5px)}.related-image{height:180px;overflow:hidden}.related-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.related-card:hover .related-image img{transform:scale(1.1)}.related-content{padding:20px}.related-content .category-tag{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:inline-block;font-size:.75em;font-weight:700;margin-bottom:12px;padding:5px 12px;text-transform:uppercase}.related-content h3{color:#1e293b;font-size:1.1em;font-weight:800;line-height:1.3;margin-bottom:10px}.related-content p{color:#475569;font-size:.9em;line-height:1.5;margin-bottom:12px}.related-content .read-more{align-items:center;color:#667eea;display:flex;font-size:.9em;font-weight:700;gap:8px}.related-content .read-more i{transition:transform .3s ease}.related-card:hover .read-more i{transform:translateX(5px)}.back-to-blog{text-align:center}.back-btn{align-items:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border:2px solid #667eea;border-radius:50px;box-shadow:0 6px 25px #0000001a;color:#667eea;cursor:pointer;display:inline-flex;font-size:1.05em;font-weight:700;gap:12px;padding:15px 35px;transition:all .3s ease}.back-btn:hover{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 10px 35px #667eea4d;color:#fff;transform:translateY(-3px)}.blog-loading{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:80vh}.blog-loading .spinner{animation:spin 1s linear infinite;border:5px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:60px;margin-bottom:20px;width:60px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:1024px){.blog-content-wrapper{grid-template-columns:1fr}.blog-sidebar{order:-1}}@media (max-width:768px){.blog-header{padding:30px 25px}.blog-title{font-size:2em}.blog-subtitle{font-size:1.1em}.blog-meta-bar{align-items:flex-start;flex-direction:column}.blog-article{padding:30px 20px}.blog-content{font-size:1em}.blog-content h2{font-size:1.6em}.related-grid{grid-template-columns:1fr}.share-buttons-large{flex-direction:column}.share-btn-large{justify-content:center;width:100%}}.news-page{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;min-height:100vh}.news-page-main{flex:1 1;min-height:calc(100vh - 300px)}.news-page-footer{background:#0000001a;border-top:1px solid #ffffff1a;color:#fff;margin-top:40px;padding:20px;text-align:center}.news-page-footer p{font-size:14px;margin:0;opacity:.8}@media (max-width:768px){.news-page-main{min-height:calc(100vh - 250px)}.news-page-footer{font-size:12px;padding:16px}}@media (max-width:480px){.news-page-main{min-height:calc(100vh - 200px)}.news-page-footer p{font-size:12px}}.legal-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:60px 20px}.legal-container{animation:fadeInUp .6s ease-out;background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001a;margin:0 auto;max-width:900px;padding:50px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.legal-container h1{border-bottom:4px solid #667eea;color:#1e293b;font-size:36px;margin-bottom:10px;padding-bottom:15px}.legal-last-updated{color:#64748b;font-size:14px;font-style:italic;margin-bottom:30px}.legal-section{margin-bottom:35px}.legal-section h2{color:#334155;font-size:24px;margin-bottom:15px;margin-top:25px}.legal-section h3{color:#475569;font-size:18px;margin-bottom:10px;margin-top:15px}.legal-section p{color:#475569;font-size:15px;line-height:1.8;margin-bottom:12px}.legal-section ul{margin:15px 0;padding-left:30px}.legal-section ul li{color:#475569;font-size:15px;line-height:1.8;margin-bottom:8px}.legal-section strong{color:#1e293b;font-weight:600}.highlight-warning{background:#fef3c7;border-left:4px solid #f59e0b;border-radius:6px;margin:20px 0;padding:15px 20px}.highlight-warning strong{color:#f59e0b}.disclaimer-footer{background:#f1f5f9;border-left:4px solid #667eea;border-radius:8px;margin-top:40px;padding:20px}.disclaimer-footer p{color:#1e293b;font-size:15px;margin:0}@media (max-width:768px){.legal-page{padding:120px 15px 40px}.legal-container{padding:30px 20px}.legal-container h1{font-size:28px}.legal-section h2{font-size:20px}.legal-section h3{font-size:16px}.legal-section p,.legal-section ul li{font-size:14px}}@media (max-width:480px){.legal-page{padding:100px 10px 30px}.legal-container{padding:20px 15px}.legal-container h1{font-size:24px}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.3913899f.css.map*/