*{box-sizing:border-box}body{background:#f5f7fa;color:#0f172a;font-family:Segoe UI,Inter,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;margin:0}a{color:inherit}button{font-family:inherit}.app-footer{background:#fff;border-top:1px solid #0c2e1514;color:#64748b;font-size:.875rem;margin-top:auto;padding:1.5rem 1rem;text-align:center;width:100%}.app-footer p{margin:0}.app-footer strong{color:#07601e;font-weight:600}.page .app-footer{order:1;padding-bottom:.5rem}.auth-screen .app-footer,.landing-page .app-footer{background:#0000;border-top:1px solid #ffffff1a;bottom:0;color:#fffc;left:0;margin-top:0;padding:1.5rem 1rem;position:absolute;right:0;width:100%}.auth-screen .app-footer strong{color:#fff}.landing-page .app-footer{background:#0000;border-top:1px solid #ffffff1a;color:#fffc}.landing-page .app-footer strong{color:#fff}.splash-screen{animation:fadeOut .5s ease-out 2.5s forwards;background:linear-gradient(160deg,#0a2c12,#1f6b2a);height:100%;left:0;position:fixed;top:0;width:100%;z-index:9999}.splash-content,.splash-screen{align-items:center;display:flex;flex-direction:column;justify-content:center}.splash-content{gap:2rem;padding:2rem;text-align:center}.splash-logo{animation:scaleIn .8s ease-out;height:auto;max-height:280px;max-width:280px;object-fit:contain;width:auto}.splash-text{animation:fadeIn 1s ease-out .5s both;color:#fff;font-size:1rem;font-weight:500;letter-spacing:.05em;margin:0;opacity:.9}.splash-footer{align-items:center;animation:fadeIn 1.2s ease-out .8s both;bottom:2rem;display:flex;justify-content:center;left:50%;position:absolute;transform:translateX(-50%)}.splash-digit-logo{height:auto;max-height:60px;max-width:120px;object-fit:contain;opacity:.95;width:auto}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:.9;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0;visibility:hidden}}@media (max-width:768px){.splash-logo{max-height:200px;max-width:200px}.splash-text{font-size:.9rem;padding:0 1rem}.splash-footer{bottom:1.5rem}.splash-digit-logo{max-height:50px;max-width:100px}}@media (max-width:480px){.splash-logo{max-height:160px;max-width:160px}.splash-text{font-size:.85rem}.splash-footer{bottom:1rem}.splash-digit-logo{max-height:40px;max-width:80px}}.page{background:#f0f5f0;color:#0c2e15;display:flex;flex-direction:column;min-height:100vh}.content{flex:1 1;margin:0 auto;padding:2rem 1.5rem 3rem;width:min(1200px,100%)}.with-tab-padding{padding-bottom:5.5rem}.bottom-tab{background:#fff;border-top:1px solid #0c2e1514;bottom:0;box-shadow:0 -6px 20px #0000000d;display:flex;justify-content:center;left:0;margin-top:auto;padding:.4rem .5rem calc(env(safe-area-inset-bottom, 0) + .4rem);position:-webkit-sticky;position:sticky;width:100%}.tab-link{align-items:center;background:#0000;border:none;color:#94a3b8;display:flex;flex:1 1;flex-direction:column;font-size:.85rem;font-weight:600;gap:.3rem;padding:.35rem 0;text-align:center;text-decoration:none}.tab-icon{font-size:1.3rem}.tab-links{display:flex;width:min(420px,100%)}.tab-link.active{color:#07601e}.logout-btn{background:#0f5521;border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:600;margin-top:1.5rem;padding:.85rem 1.2rem}.logout-btn.solid{width:100%}.landing-page{align-items:center;background:linear-gradient(160deg,#0a2c12,#1f6b2a);color:#fff;display:flex;justify-content:center;min-height:100vh}.landing-overlay{max-width:480px;padding:2.5rem;text-align:center}.landing-icon{font-size:4rem;margin-bottom:1rem}.landing-actions{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.landing-actions button{background:#fff;border:none;border-radius:30px;color:#0f5521;cursor:pointer;font-size:1rem;font-weight:600;padding:.9rem}.landing-actions button.outlined{background:#0000;border:2px solid #fff;color:#fff}.auth-screen{align-items:center;background:linear-gradient(140deg,#0a2c12,#1f6b2a);display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem 2rem 5rem;position:relative}.auth-card{background:#fff;border-radius:20px;box-shadow:0 20px 45px #00000026;padding:2.5rem;text-align:center;width:min(420px,100%)}.auth-card h1{font-size:clamp(1.8rem,5vw,2.4rem)}.auth-card h2{font-size:clamp(1.2rem,4vw,1.6rem)}.auth-card button,.auth-card input{font-size:1rem}.auth-card form{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.auth-card label{color:#0d3b66;font-weight:600;text-align:left}.auth-card input{border:1px solid #dfe6ee;border-radius:10px;margin-top:.4rem;padding:.9rem;width:100%}.auth-card button{background:#0f5521;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;margin-top:.5rem;padding:.9rem}.auth-icon{font-size:3rem;margin:1rem 0}.auth-switch{margin-top:1rem}.auth-switch a{color:#0f5521;font-weight:600}.form-error{background:#fee2e2;color:#b91c1c}.form-error,.form-success{border-radius:8px;font-size:.9rem;padding:.6rem}.form-success{background:#e9f7ee;color:#0f5521}.page-header{margin-bottom:2rem;text-align:center}.page-header h1{color:#0c2e15;font-size:2.2rem;margin-bottom:.4rem}.candidat-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.candidat-card{background:#fff;border-radius:18px;box-shadow:0 15px 30px #00000014;cursor:pointer;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.candidat-card:hover{box-shadow:0 20px 45px #0000001f;transform:translateY(-4px)}.candidat-card img{aspect-ratio:1/1;object-fit:cover;width:100%}.candidat-card.null-card{align-items:center;background:#081c0c;color:#f8fafc;display:flex;flex-direction:column;gap:1rem;justify-content:center}.null-icon{font-size:3rem}.null-vote-btn{background:#1f2937;border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:600;margin-top:.5rem;padding:.8rem 1.4rem;width:100%}.null-vote-btn:disabled{cursor:not-allowed;opacity:.7}.candidat-info{padding:1rem;text-align:center}.candidat-info h2{margin-bottom:.2rem}.candidat-info .filiere{color:#0f5521;font-weight:700}.detail-page .detail-card{background:#fffffff2;border-radius:24px;box-shadow:0 20px 40px #0000001a;display:flex;flex-wrap:wrap;gap:2rem;padding:2rem}.detail-card img{border-radius:16px;object-fit:cover;width:min(320px,100%)}.detail-info{flex:1 1;min-width:260px}.detail-actions{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0}.detail-actions button{border:none;border-radius:10px;color:#fff;cursor:pointer;flex:1 1;font-weight:600;min-width:180px;padding:.9rem;transition:transform .2s ease,box-shadow .2s ease}.detail-actions button:first-child{background:#0c7c2f}.detail-actions button:nth-child(2){background:#0a471c}.detail-actions .null-vote{background:#1f2937}.detail-actions button:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-2px)}.stats-list{grid-gap:1rem;display:grid;gap:1rem}.stats-overview{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:1.5rem}.overview-card{background:#fff;border-radius:16px;box-shadow:0 10px 25px #00000014;display:flex;flex-direction:column;gap:.3rem;padding:1.25rem}.overview-card span{color:#475569;font-size:.95rem}.overview-card strong{color:#0f5521;font-size:2rem}.overview-card small{color:#475569;font-size:.85rem}.overview-card.null{background:#101828;color:#f8fafc}.overview-card.null small,.overview-card.null span{color:#f8fafccc}.overview-card.null strong{color:#fbbf24}.stat-card{background:#fff;border-radius:18px;box-shadow:0 10px 25px #00000014;padding:1.5rem}.stat-card header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.stat-title{color:#0c2e15;font-size:1.1rem;font-weight:700;margin:0}.stat-subtitle{color:#475569;font-size:.9rem;margin:.25rem 0 0}.stat-votes{color:#0f5521;font-weight:600;margin:1rem 0 .4rem}.stat-meta{color:#475569;font-size:.85rem;margin-top:.6rem}.progress-bar{background:#e5e7eb;border-radius:999px;height:12px;overflow:hidden;width:100%}.progress{background:#0a471c;height:100%}.percentage{color:#0a471c;font-weight:700}.pdf-viewer{border-radius:16px;box-shadow:inset 0 0 0 1px #0a471c26;height:75vh;margin-top:1.5rem;overflow:hidden}.pdf-viewer iframe{border:none;height:100%;width:100%}.profile-card{background:#fff;border-radius:18px;box-shadow:0 15px 30px #00000014;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.profile-row{align-items:center;border-bottom:1px solid #0f55211a;display:flex;justify-content:space-between;padding:.75rem 0}.profile-row:last-of-type{border-bottom:none}.profile-row span{color:#4b5563}.back-btn{background:none;border:none;color:#0f5521;cursor:pointer;font-weight:600;margin-bottom:1rem}.info{background:#e9f7ee;border-radius:12px;color:#0f5521;padding:1rem}.blocked-info{border:1px dashed #0f552166;box-shadow:inset 0 0 0 1px #0f55211a;text-align:center}.error{background:#fde8e8;border-radius:12px;color:#862933;padding:1rem}.main-nav .mobile-toggle{display:none}@media (max-width:768px){.content{padding:1.5rem 1rem 2.5rem}.landing-overlay{padding:1.5rem}.landing-actions{flex-direction:column}.auth-screen{padding:1rem}.auth-card{padding:1.5rem}.candidat-card{border-radius:16px}.detail-page .detail-card{padding:1.5rem}.detail-actions{flex-direction:column}.detail-actions button{min-width:100%}.stats-list{grid-template-columns:1fr}.bottom-tab{border-radius:18px 18px 0 0}}@media (max-width:480px){.landing-content{margin-top:1rem}.landing-actions button{font-size:.95rem}.auth-card input{padding:.75rem}.detail-card img{width:100%}.page-header h1{font-size:1.8rem}.candidat-info h2{font-size:1.1rem}.progress-bar{height:10px}.with-tab-padding{padding-bottom:6.5rem}}
/*# sourceMappingURL=main.f8407aa0.css.map*/