body,html{margin:0;overflow-x:hidden;padding:0;width:100%}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}.App{margin:0;overflow-x:hidden;padding:0;text-align:center;width:100%}*,.App{box-sizing:border-box}img{background-color:#e9ecef;height:auto;max-width:100%}.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)}}.main-menu{background-color:#fff;box-shadow:0 2px 8px #0000001a;left:0;position:fixed;right:0;top:0;width:100%;z-index:2000}.main-menu-spacer{flex:0 0 auto}.menu-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;padding:.7rem 20px}.menu-logo{flex-shrink:0}.menu-logo img{background-color:initial;height:58px;width:auto}.menu-links{display:flex;gap:0;justify-content:center;list-style:none;margin:0;padding:0}.btn-donate-wrapper{flex-shrink:0}.menu-links a,.menu-links li{position:relative}.menu-links a{color:#333;display:block;font-size:.82rem;font-weight:600;padding:.7rem 13px;text-decoration:none;text-transform:uppercase;transition:all .3s ease}.menu-links a:after{background:#007bff;bottom:0;content:"";height:3px;left:0;position:absolute;transition:width .3s ease;width:0}.menu-links a:hover{color:#007bff}.menu-links a:hover:after{width:100%}.menu-links a.active{color:#007bff}.menu-links a.active:after{width:100%}.menu-links .menu-auth-start{margin-left:12px;padding-left:14px}.menu-links .menu-auth-start:before{background:#d7dde5;content:"";height:26px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:1px}.menu-links a.menu-auth-link{border:1px solid #007bff;border-radius:999px;color:#007bff;line-height:1;margin:0 3px;padding:.58rem 13px}.menu-links a.menu-auth-link:after{display:none}.menu-links a.menu-auth-login.active,.menu-links a.menu-auth-login:hover{background:#eaf4ff;color:#0056b3}.menu-links a.menu-auth-signup{background:#007bff;color:#fff}.menu-links a.menu-auth-signup.active,.menu-links a.menu-auth-signup:hover{background:#0056b3;border-color:#0056b3;color:#fff}.btn-donate{background:#007bff;border:none;border-radius:25px;color:#fff;cursor:pointer;display:inline-block;font-size:.82rem;font-weight:600;padding:.7rem 1.5rem;text-decoration:none;text-transform:uppercase;transition:all .3s ease;white-space:nowrap}.btn-donate:hover{background:#0056b3;transform:translateY(-2px)}.scroll-progress-bar{background:#0000000f;height:3px;overflow:hidden;width:100%}.scroll-progress-fill{border-radius:0 2px 2px 0;height:100%;transition:width .18s ease-out}.scroll-progress-fill.progress-yellow{background:linear-gradient(90deg,#ffd43b,#fab005)}.scroll-progress-fill.progress-red{background:linear-gradient(90deg,#ff6b6b,#c92a2a)}.scroll-progress-fill.progress-blue{background:linear-gradient(90deg,#007bff,#00c6ff)}@media (max-width:768px){.menu-container,.menu-links{flex-direction:column;gap:1rem}.menu-links{align-items:center}.menu-logo img{height:50px}.menu-links .menu-auth-start{margin-left:0;margin-top:.25rem;padding-left:0;padding-top:1rem}.menu-links .menu-auth-start:before{height:1px;left:50%;top:0;transform:translateX(-50%);width:44px}}.header{height:500px;overflow:hidden;position:relative}.carousel-container{height:100%;position:relative;width:100%}.carousel-slide{align-items:center;background-position:50%;background-size:cover;display:flex;height:100%;justify-content:center;left:0;opacity:0;position:absolute;top:0;transform:translateX(100%);transition:opacity .8s ease-in-out,transform .8s ease-in-out;width:100%}.carousel-slide:first-child{justify-content:flex-start;padding-left:5%}.carousel-slide:nth-child(2){justify-content:flex-end;padding-right:5%}.carousel-slide:nth-child(3){justify-content:flex-start;padding-left:5%}.carousel-slide.active{opacity:1;transform:translateX(0);z-index:2}.carousel-slide:before{background:#0006;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.header-content{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:start;margin:0 30px;position:relative;text-align:center;z-index:3}.header-presentation{font-size:1.97rem;font-weight:700;margin:0 0 .5rem}.header-subtitle{font-size:.97rem;margin:0 0 1.5rem;max-width:600px}.header-buttons{display:flex;gap:1rem}.btn{border:none;border-radius:4px;cursor:pointer;font-size:.97rem;font-weight:600;padding:.75rem 2rem;transition:all .3s ease}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3;transform:translateY(-2px)}.btn-secondary{background-color:initial;border:2px solid #fff;color:#fff}.btn-secondary:hover{background-color:#fff;color:#007bff;transform:translateY(-2px)}.carousel-btn{background-color:#ffffff80;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.47rem;height:50px;position:absolute;top:50%;transform:translateY(-50%);transition:background-color .3s ease;width:50px;z-index:3}.carousel-btn:hover{background-color:#fffc}.carousel-prev{left:20px}.carousel-next{right:20px}.carousel-indicators{bottom:20px;display:flex;gap:.5rem;left:50%;position:absolute;transform:translateX(-50%);z-index:3}.indicator{background-color:#ffffff80;border:none;border-radius:50%;cursor:pointer;height:12px;transition:background-color .3s ease;width:12px}.indicator.active{background-color:#fff}@media (max-width:768px){.header{height:300px}.header-presentation{font-size:1.97rem}.header-subtitle{font-size:.97rem}.header-buttons{flex-direction:column}.carousel-btn{font-size:1.17rem;height:40px;width:40px}}.president-section{padding:1.5rem 2rem}.president-container{align-items:center;display:flex;gap:1.5rem;justify-content:center;margin:0 auto;max-width:900px}.president-image{background-color:#e9ecef;border-radius:2px;flex-shrink:0;height:183px;overflow:hidden;width:198px}.president-image img{height:100%;object-fit:cover;width:100%}.president-info{flex:1 1;max-width:500px}.president-text{color:#666;font-size:.92rem;line-height:1.5;margin:0 0 1rem;text-align:left}.president-divider{background-color:#007bff;height:5px;margin:1rem 0;width:80px}.president-name{color:#007bff;font-size:.97rem;font-weight:600;margin:0;text-align:left}@media (max-width:768px){.president-container{flex-direction:column;gap:1.5rem}.president-image{height:200px;width:200px}.president-info{max-width:100%}}.nation-message-section{background:#fff;padding:4rem 2rem}.nation-message-container{align-items:stretch;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);margin:0 auto;max-width:1200px}.nation-message-image{min-height:440px;overflow:hidden}.nation-message-image img{display:block;height:100%;object-fit:cover;width:100%}.nation-message-content{align-items:flex-start;background:#f5f7fa;display:flex;flex-direction:column;justify-content:center;padding:3rem}.nation-message-kicker{color:#007bff;font-size:.78rem;font-weight:800;letter-spacing:.08em;margin-bottom:.75rem;text-transform:uppercase}.nation-message-content h2{color:#1a1a2e;font-size:2rem;margin:0 0 1rem}.nation-message-content>p{color:#5d6670;line-height:1.7;margin:0}.nation-message-content blockquote{border-left:4px solid #007bff;color:#1f2933;font-size:1.05rem;font-weight:700;line-height:1.65;margin:1.75rem 0;padding:.25rem 0 .25rem 1rem}.nation-message-signature{display:flex;flex-direction:column;gap:.25rem}.nation-message-signature strong{color:#1a1a2e}.nation-message-signature span{color:#007bff;font-size:.86rem;font-weight:800}@media (max-width:900px){.nation-message-container{grid-template-columns:1fr}.nation-message-image{min-height:340px}}@media (max-width:680px){.nation-message-section{padding:3rem 1.25rem}.nation-message-image{min-height:260px}.nation-message-content{padding:2rem 1.5rem}.nation-message-content h2{font-size:1.75rem}}.join-appc-section{background:#f5f7fa;padding:4rem 2rem}.join-appc-container{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);margin:0 auto;max-width:1200px}.join-appc-intro{align-self:center}.join-appc-kicker{color:#007bff;display:block;font-size:.78rem;font-weight:800;letter-spacing:.08em;margin-bottom:.75rem;text-transform:uppercase}.join-appc-intro h2{color:#1a1a2e;font-size:2rem;margin:0 0 1rem}.join-appc-intro p{color:#5d6670;line-height:1.7;margin:0 0 1.5rem;max-width:520px}.join-appc-intro button{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:800;padding:.9rem 1.2rem;transition:background-color .25s ease,transform .25s ease}.join-appc-intro button:hover{background:#0056b3;transform:translateY(-2px)}.join-appc-reasons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.join-appc-reason{border-left:1px solid #dbe3ec;padding:.5rem 1.5rem}.join-appc-reason>span{color:#007bff;display:block;font-size:.78rem;font-weight:900;margin-bottom:1.25rem}.join-appc-reason h3{color:#1a1a2e;font-size:1.05rem;margin:0 0 .75rem}.join-appc-reason p{color:#64748b;font-size:.9rem;line-height:1.65;margin:0}@media (max-width:900px){.join-appc-container{grid-template-columns:1fr}}@media (max-width:680px){.join-appc-section{padding:3rem 1.25rem}.join-appc-reasons{grid-template-columns:1fr}.join-appc-reason{border-left:none;border-top:1px solid #dbe3ec;padding:1.25rem 0}.join-appc-reason>span{margin-bottom:.65rem}}.slogan-section{background:#007bff;margin:0;padding:1.5rem 2rem;text-align:center}.slogan-text{color:#fff;font-size:1.97rem;font-weight:700;letter-spacing:1px;margin:0}@media (max-width:768px){.slogan-text{font-size:1.8rem}}.news-section{margin:3rem auto;max-width:1200px;padding:0 2rem}.news-section-header{margin-bottom:2.5rem;text-align:center}.news-section h2{color:#111;font-size:2rem;font-weight:800;letter-spacing:-.5px;margin-bottom:.5rem}.news-section-subtitle{color:#888;font-size:1rem;margin:0}.news-section-divider{background:linear-gradient(90deg,#007bff,#0056b3);border-radius:2px;height:4px;margin:.75rem auto 0;width:50px}.news-grid{grid-gap:1.75rem;gap:1.75rem;grid-template-columns:repeat(3,1fr);margin-bottom:2.5rem}.news-card{border:1px solid #f0f0f0;border-radius:14px;box-shadow:0 2px 12px #00000012;transition:transform .3s ease,box-shadow .3s ease}.news-card:hover{box-shadow:0 12px 32px #007bff21;transform:translateY(-6px)}.news-image-container{height:210px;overflow:hidden}.news-image{height:100%;transition:transform .4s ease}.news-card:hover .news-image{transform:scale(1.05)}.news-image-overlay{background:linear-gradient(180deg,#0000 50%,#00000059);inset:0;pointer-events:none;position:absolute}.news-type-ribbon{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:20px;box-shadow:0 2px 8px #007bff66;font-size:.68rem;font-weight:700;left:12px;letter-spacing:.5px;padding:.3rem .8rem;top:12px}.news-content{gap:.5rem;padding:1.25rem 1.5rem 1.5rem}.news-content h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#1a1a2e;display:-webkit-box;font-size:1.05rem;font-weight:700;line-height:1.45;margin:0;overflow:hidden}.news-content p{font-size:.88rem;line-height:1.6;margin:0}.news-footer{border-top:1px solid #f0f0f0;justify-content:space-between;margin-top:.75rem;padding-top:.75rem}.news-date{align-items:center;color:#aaa;display:flex;font-size:.78rem;gap:.3rem}.news-date:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23aaa'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V10h14v10zM5 8V6h14v2H5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;content:"";display:inline-block;height:12px;width:12px}.btn-lire-plus{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:20px;font-size:.75rem;font-weight:700;letter-spacing:.3px;padding:.38rem 1rem;transition:all .3s ease;white-space:nowrap}.btn-lire-plus:hover{background:linear-gradient(135deg,#0056b3,#003d80);box-shadow:0 4px 12px #007bff59;transform:translateY(-1px)}.btn-autres-actualites{align-items:center;background:#0000;border:2px solid #007bff;border-radius:30px;color:#007bff;display:flex;font-size:.9rem;font-weight:700;gap:.5rem;justify-content:center;letter-spacing:.5px;margin:0 auto;padding:.75rem 2.5rem;text-decoration:none;transition:all .3s ease;width:-webkit-max-content;width:max-content}.btn-autres-actualites:after{content:"→";transition:transform .3s ease}.btn-autres-actualites:hover{background:linear-gradient(135deg,#007bff,#0056b3);border-color:#0000;box-shadow:0 6px 20px #007bff4d;color:#fff;transform:translateY(-2px)}.btn-autres-actualites:hover:after{transform:translateX(4px)}.error-message,.loading{color:#888;font-size:1rem;padding:3rem;text-align:center}.error-message{color:#dc3545}@media (max-width:992px){.news-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.news-grid{grid-template-columns:1fr}.news-section h2{font-size:1.6rem}}.vision-section{background:#fff;padding:4rem 2rem}.vision-container{margin:0 auto;max-width:1200px}.vision-header{grid-gap:1rem 3rem;border-bottom:1px solid #dbe3ec;display:grid;gap:1rem 3rem;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);margin-bottom:2rem;padding-bottom:2rem}.vision-header span{color:#007bff;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.vision-header h2{color:#1a1a2e;font-size:2rem;grid-column:1;margin:0}.vision-header p{align-self:end;color:#5d6670;grid-column:2;grid-row:1/span 2;line-height:1.7;margin:0}.vision-content{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.vision-principle{grid-gap:1rem;border-left:1px solid #dbe3ec;display:grid;gap:1rem;grid-template-columns:auto minmax(0,1fr);padding:.5rem 1.5rem .75rem}.vision-principle>span{color:#007bff;font-size:.78rem;font-weight:900;padding-top:.2rem}.vision-principle h3{color:#1a1a2e;font-size:1.1rem;margin:0 0 .75rem}.vision-principle p{color:#64748b;font-size:.92rem;line-height:1.65;margin:0}.vision-values ul{grid-gap:.55rem;display:grid;gap:.55rem;list-style:none;margin:0;padding:0}.vision-values li{color:#64748b;font-size:.9rem;padding-left:1rem;position:relative}.vision-values li:before{background:#007bff;border-radius:50%;content:"";height:5px;left:0;position:absolute;top:.45rem;width:5px}@media (max-width:900px){.vision-header{grid-template-columns:1fr}.vision-header h2,.vision-header p{grid-column:1;grid-row:auto}.vision-content{grid-template-columns:1fr}.vision-principle{border-left:none;border-top:1px solid #dbe3ec;padding:1.5rem 0}}@media (max-width:680px){.vision-section{padding:3rem 1.25rem}.vision-header h2{font-size:1.75rem}}.objectives-section{padding:1.5rem 2rem}.objectives-container{grid-gap:0;align-items:stretch;display:grid;gap:0;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px}.objectives-text{background-color:#007bff;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:2rem}.objectives-text h2{color:#fff;font-size:1.97rem;margin-bottom:1rem}.objectives-text ul{list-style:none;padding:0}.objectives-text li{color:#fff;font-size:.97rem;line-height:1.5;margin-bottom:.8rem;padding-left:2rem;position:relative}.objectives-text li:before{background:#fff;border-radius:50%;content:"";height:6px;left:.35rem;position:absolute;top:.65rem;width:6px}.objectives-image{background-color:#e9ecef;overflow:hidden}.objectives-image img{height:100%;object-fit:cover;width:100%}@media (max-width:768px){.objectives-container{gap:1.5rem;grid-template-columns:1fr}.objectives-text h2{font-size:1.8rem}.objectives-text li{font-size:.97rem}}.sectors-section{background-color:#f9f9f9;padding:3rem 2rem}.sectors-section h2{color:#333;font-size:2.47rem;font-weight:700;margin-bottom:3rem;text-align:center}.sectors-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:1200px}.sector-card{background-color:#fff;border-radius:8px;display:flex;flex-direction:column;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.sector-card:hover{transform:translateY(-5px)}.sector-image{background-color:#e9ecef;height:220px;overflow:hidden;width:100%}.sector-image img{height:100%;object-fit:cover;width:100%}.sector-content{display:flex;flex-direction:column;flex-grow:1;padding:1.5rem}.sector-content h3{color:#007bff;font-size:1.47rem;font-weight:700;margin:0 0 .75rem}.sector-content p{color:#555;flex-grow:1;font-size:.92rem;line-height:1.6;margin:0}@media (max-width:768px){.sectors-section{padding:2rem 1rem}.sectors-section h2{font-size:1.77rem;margin-bottom:2rem}.sectors-grid{gap:1.5rem;grid-template-columns:1fr}}.contact-section{background:#fff;padding:4rem 2rem}.contact-container{margin:0 auto;max-width:1200px}.contact-header{grid-gap:2rem;align-items:end;border-bottom:1px solid #dbe3ec;display:grid;gap:2rem;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);margin-bottom:2rem;padding-bottom:2rem}.contact-header span{color:#007bff;display:block;font-size:.78rem;font-weight:800;letter-spacing:.08em;margin-bottom:.7rem;text-transform:uppercase}.contact-header h2{color:#1a1a2e;font-size:2rem;margin:0}.contact-header p{color:#5d6670;line-height:1.7;margin:0}.contact-layout{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}.contact-form{display:flex;flex-direction:column;gap:1rem}.contact-details h3,.contact-form h3{color:#1a1a2e;font-size:1.15rem;margin:0 0 .5rem}.contact-form-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form label{color:#1f2933;display:flex;flex-direction:column;font-size:.88rem;font-weight:800;gap:.45rem}.contact-form input,.contact-form textarea{background:#f8fbff;border:1px solid #d7dee8;border-radius:8px;color:#1a1a2e;font:inherit;padding:.85rem .95rem;transition:border-color .25s ease,box-shadow .25s ease}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff24;outline:none}.contact-form button{align-self:flex-start;background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:800;padding:.9rem 1.2rem;transition:background-color .25s ease,transform .25s ease}.contact-form button:hover{background:#0056b3;transform:translateY(-2px)}.contact-details{background:#f5f7fa;padding:1.5rem}.contact-detail{align-items:flex-start;border-top:1px solid #dbe3ec;display:flex;gap:.9rem;padding:1rem 0}.contact-detail>svg{color:#007bff;flex:0 0 auto;margin-top:.2rem}.contact-detail div{display:flex;flex-direction:column;gap:.25rem}.contact-detail strong,.contact-social>strong{color:#1f2933;font-size:.88rem}.contact-detail a,.contact-detail span,.contact-social small{color:#64748b;font-size:.86rem;line-height:1.5}.contact-detail a{color:#007bff;text-decoration:none}.contact-detail a:hover{text-decoration:underline}.contact-social{border-top:1px solid #dbe3ec;padding-top:1rem}.contact-social div{display:flex;gap:.65rem;margin:.8rem 0 .5rem}.contact-social div span{align-items:center;background:#fff;border-radius:50%;color:#007bff;display:inline-flex;height:36px;justify-content:center;width:36px}@media (max-width:850px){.contact-header,.contact-layout{grid-template-columns:1fr}}@media (max-width:680px){.contact-section{padding:3rem 1.25rem}.contact-form-grid{grid-template-columns:1fr}.contact-form button{width:100%}}.footer{background:#007bff;color:#fff;margin-top:3rem;padding:3rem 2rem 1rem}.footer-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr 1fr 1fr;margin:0 auto 2rem;max-width:1200px}.footer-section h4{font-size:1.07rem;font-weight:600;margin:0 0 1rem}.footer-about{grid-column:1}.footer-logo{height:50px;margin-bottom:1rem}.footer-logo img{background-color:initial;filter:brightness(0) invert(1);height:100%;width:auto}.footer-description{color:#ffffffe6;font-size:.87rem;line-height:1.5;margin:0 0 1rem}.footer-socials{display:flex;gap:.8rem}.social-link{align-items:center;background-color:#fff3;border-radius:50%;color:#fff;display:inline-flex;font-size:1.07rem;height:35px;justify-content:center;text-decoration:none;transition:all .3s ease;width:35px}.social-link:hover{background-color:#fff6;transform:translateY(-3px)}.social-link i{align-items:center;display:inline-flex;font-style:normal;height:20px;justify-content:center;width:20px}.icon-facebook:before{content:"f";font-weight:700}.icon-twitter:before{content:"𝕏"}.icon-linkedin:before{content:"in";font-size:.87rem;font-weight:700}.icon-instagram:before{content:"📷";font-size:1.17rem}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin-bottom:.7rem}.footer-links a{color:#ffffffe6;font-size:.92rem;text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:#fff;text-decoration:underline}.footer-contact{font-size:.87rem;line-height:1.6}.footer-contact p{margin:0 0 .5rem}.footer-contact a{color:#ffffffe6;text-decoration:none;transition:color .3s ease}.footer-contact a:hover{color:#fff;text-decoration:underline}.btn-newsletter{background-color:#fff;border:none;border-radius:4px;color:#007bff;cursor:pointer;font-size:.87rem;font-weight:600;margin-top:.8rem;padding:.6rem 1.2rem;transition:all .3s ease}.btn-newsletter:hover{background-color:#ffffffe6;transform:translateY(-2px)}.footer-bottom{border-top:1px solid #fff3;color:#fffc;font-size:.82rem;padding-top:1.5rem;text-align:center}.footer-bottom p{margin:.3rem 0}.heart{color:#ff4757;margin:0 .3rem}@media (max-width:768px){.footer-container{gap:1.5rem;grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}.footer-section h4{font-size:.97rem}.footer-contact,.footer-links a{font-size:.82rem}}.news-page{margin:2rem auto;max-width:1200px;padding:0 2rem}.news-page h1{color:#333;font-size:2.47rem;margin-bottom:2rem;text-align:center}.news-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:3rem}.news-card{background:#fff;border-radius:8px;box-shadow:none;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:transform .3s ease}.news-card:hover{transform:translateY(-5px)}.news-image-container{height:200px;position:relative}.news-type-ribbon{background-color:#dc3545;border-radius:3px;color:#fff;font-size:.72rem;font-weight:600;left:10px;padding:.35rem .75rem;position:absolute;text-transform:uppercase;top:10px;z-index:10}.news-image{height:200px;object-fit:cover;width:100%}.news-content{display:flex;flex:1 1;flex-direction:column;padding:1.5rem}.news-content h3{font-size:1.17rem;margin:0 0 .5rem}.news-content p{color:#666;flex:1 1;margin:0 0 1rem}.news-footer{align-items:center;display:flex;flex-direction:column;gap:.5rem}.news-date{color:#999;font-size:.87rem}.btn-lire-plus{background-color:#007bff;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:.72rem;font-weight:600;margin-top:.5rem;padding:.25rem .6rem;transition:background-color .3s ease}.btn-lire-plus:hover{background-color:#0056b3}.pagination{align-items:center;border-top:1px solid #eee;display:flex;gap:2rem;justify-content:center;margin:3rem 0;padding:2rem 0}.pagination-btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.97rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .3s ease}.pagination-btn:hover:not(:disabled){background-color:#0056b3;transform:translateY(-2px)}.pagination-btn:disabled{background-color:#ccc;cursor:not-allowed;opacity:.5}.pagination-info{color:#666;font-size:.97rem;font-weight:500}.current-page{color:#007bff;font-weight:700}@media (max-width:768px){.news-page{margin:1rem auto}.news-page h1{font-size:1.77rem}.news-grid{gap:1.5rem;grid-template-columns:1fr}.pagination{flex-direction:column;gap:1rem}}.news-detail{margin:2rem auto;max-width:900px;padding:2rem}.btn-back{background:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:600;margin-bottom:2rem;padding:.7rem 1.5rem;transition:all .3s ease}.btn-back:hover{background:#0056b3;transform:translateY(-2px)}.news-detail-article{background:#fff;border-radius:10px;padding:2rem}.news-detail-article h1{color:#333;font-size:2.5rem;margin-bottom:1rem}.news-detail-meta{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.news-type-badge{background:#007bff;border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;padding:.5rem 1rem}.news-date{color:#666;font-size:.95rem}.news-share{margin-left:auto;position:relative}.news-share-button{align-items:center;background:#111827;border:none;border-radius:5px;color:#fff;cursor:pointer;display:inline-flex;font-weight:700;gap:.45rem;padding:.65rem 1rem}.news-share-button:hover{background:#007bff}.news-share-options{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 14px 35px #11182729;padding:.75rem;position:absolute;right:0;top:calc(100% + .6rem);width:245px;z-index:20}.news-share-options-header{align-items:center;color:#111827;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:.5rem}.news-share-options-header button{background:#0000;border:none;color:#6b7280;cursor:pointer;display:grid;height:30px;place-items:center;width:30px}.news-share-options-list{grid-gap:.25rem;display:grid;gap:.25rem}.news-share-options-list button{align-items:center;background:#0000;border:none;border-radius:5px;color:#374151;cursor:pointer;display:flex;gap:.7rem;padding:.65rem .7rem;text-align:left;width:100%}.news-share-options-list button:hover{background:#f3f4f6;color:#007bff}.news-share-message{align-items:center;color:#15803d;display:inline-flex;font-size:.85rem;font-weight:700;gap:.3rem}.news-images-gallery{margin-bottom:2rem}.main-image-container{border-radius:8px;margin-bottom:1rem;overflow:hidden;position:relative}.main-image{display:block;height:auto;max-height:500px;object-fit:cover;width:100%}.image-controls{align-items:center;background:#0009;bottom:0;color:#fff;display:flex;justify-content:space-between;left:0;padding:1rem;position:absolute;right:0}.image-nav-btn{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.2rem;height:40px;transition:all .3s ease;width:40px}.image-nav-btn:hover:not(:disabled){background:#fff6}.image-nav-btn:disabled{cursor:not-allowed;opacity:.3}.image-counter{font-weight:600}.thumbnails{display:flex;gap:.8rem;overflow-x:auto;padding:.5rem 0}.thumbnail{border:3px solid #0000;border-radius:5px;cursor:pointer;flex-shrink:0;height:80px;object-fit:cover;transition:all .3s ease;width:80px}.thumbnail.active,.thumbnail:hover{border-color:#007bff}.thumbnail.active{box-shadow:0 0 8px #007bff80}.news-detail-content{color:#333;font-size:1.05rem;line-height:1.8}.news-html-content{word-wrap:break-word;white-space:pre-wrap}.news-html-content p{margin-bottom:1rem;text-align:justify}.error-message,.loading,.no-news{font-size:1.1rem;padding:2rem;text-align:center}.error-message{color:#d32f2f}@media (max-width:768px){.news-detail,.news-detail-article{padding:1rem}.news-detail-article h1{font-size:1.8rem}.news-share{margin-left:0;width:100%}.news-share-button{justify-content:center;width:100%}.news-share-options{left:0;right:auto;width:min(100%,280px)}.main-image{max-height:300px}.image-controls{flex-direction:column;gap:.5rem}}.projects-page{background:#f8f9fa;min-height:100vh}.pp-hero{background-color:#007bff;color:#fff;padding:2.5rem 2rem 2rem}.pp-hero-inner{margin:0 auto;max-width:1200px}.pp-hero-title{font-size:1.97rem;font-weight:700;letter-spacing:.01em;margin:0 0 .35rem}.pp-hero-subtitle{font-size:1rem;margin:0 0 .85rem;opacity:.88}.pp-hero-count{background:#ffffff2e;border-radius:4px;display:inline-block;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.pp-body{margin:0 auto;max-width:1200px;padding:2rem 2rem 4rem}.pp-loading{align-items:center;color:#6c757d;display:flex;flex-direction:column;gap:1rem;padding:4rem 0}.pp-spinner{animation:pp-spin .7s linear infinite;border:3px solid #dee2e6;border-radius:50%;border-top-color:#007bff;height:36px;width:36px}@keyframes pp-spin{to{transform:rotate(1turn)}}.pp-empty,.pp-error{color:#6c757d;font-size:.95rem;padding:4rem 0;text-align:center}.pp-error{color:#dc3545}.pp-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}.pp-card{background:#fff;border-radius:4px;box-shadow:0 1px 4px #00000012;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s,transform .2s}.pp-card:hover{box-shadow:0 6px 20px #007bff21;transform:translateY(-3px)}.pp-card-image{background:#e9ecef;height:190px;overflow:hidden;position:relative}.pp-card-image img{display:block;height:100%;object-fit:cover;transition:transform .35s ease;width:100%}.pp-card:hover .pp-card-image img{transform:scale(1.04)}.pp-card-image-placeholder{background:#dee2e6;height:100%;width:100%}.pp-card-ribbon{border-radius:3px;font-size:.75rem;font-weight:700;letter-spacing:.04em;padding:.25rem .65rem;position:absolute;right:.75rem;text-transform:uppercase;top:.75rem}.pp-statut-en-cours{background:#28a745;color:#fff}.pp-statut-prevu{background:#ffc107;color:#333}.pp-statut-termine{background:#6c757d;color:#fff}.pp-statut-autre{background:#e9ecef;color:#495057}.pp-card-body{display:flex;flex:1 1;flex-direction:column;padding:1.1rem 1.2rem 1rem}.pp-card-title{color:#111;font-size:1rem;font-weight:700;line-height:1.4;margin:0 0 .75rem}.pp-card-meta{border-bottom:1px solid #f0f0f0;display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem;padding-bottom:.75rem}.pp-meta-item{align-items:center;color:#6c757d;display:flex;font-size:.82rem;gap:.4rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-meta-icon{color:#007bff;flex-shrink:0;font-size:.9rem}.pp-card-desc{color:#555;flex:1 1;font-size:.875rem;line-height:1.6;margin:0 0 1rem}.pp-card-footer{margin-top:auto}.pp-btn-detail{align-items:center;color:#007bff;display:inline-flex;font-size:.875rem;font-weight:600;gap:.35rem;transition:gap .2s}.pp-card:hover .pp-btn-detail{gap:.55rem}.pp-pagination{align-items:center;border-top:1px solid #dee2e6;display:flex;gap:1.5rem;justify-content:center;padding-top:2rem}.pp-pag-btn{align-items:center;background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:.35rem;padding:.55rem 1.2rem;transition:background .2s}.pp-pag-btn:hover:not(:disabled){background:#0056b3}.pp-pag-btn:disabled{background:#dee2e6;color:#adb5bd;cursor:not-allowed}.pp-pag-info{color:#495057;font-size:.9rem}@media (max-width:992px){.pp-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.pp-grid{grid-template-columns:1fr}.pp-body{padding:1.25rem 1rem 3rem}.pp-hero{padding:1.5rem 1rem 1.25rem}.pp-pagination{gap:.75rem}}.mm-backdrop{align-items:center;background:#000000a6;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:9000}.mm-backdrop--fs{padding:0}.mm-window{background:#fff;border-radius:6px;box-shadow:0 8px 40px #00000059;display:flex;flex-direction:column;overflow:hidden;transition:width .25s ease,height .25s ease}.mm-window--normal{height:min(600px,88vh);width:min(860px,92vw)}.mm-window--fullscreen{border-radius:0;height:100vh;width:100vw}.mm-window--minimized{height:auto;width:min(380px,92vw)}.mm-titlebar{align-items:center;background:#007bff;color:#fff;cursor:default;display:flex;flex-shrink:0;height:40px;justify-content:space-between;padding:0 .75rem;-webkit-user-select:none;user-select:none}.mm-titlebar-title{flex:1 1;font-size:.85rem;font-weight:600;margin-right:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-titlebar-actions{align-items:center;display:flex;gap:2px}.mm-tb-btn{align-items:center;background:#0000;border:none;border-radius:3px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;height:28px;justify-content:center;text-decoration:none;transition:background .15s;width:30px}.mm-tb-btn:hover{background:#fff3}.mm-tb-btn--close:hover{background:#dc3545}.mm-body{background:#111;flex:1 1;flex-direction:column}.mm-body,.mm-content{display:flex;overflow:hidden;position:relative}.mm-content{align-items:center;flex:1 1;justify-content:center}.mm-img{object-fit:contain}.mm-img,.mm-video{display:block;max-height:100%;max-width:100%}.mm-video{background:#000}.mm-nav{align-items:center;background:#00000073;border:none;border-radius:3px;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;height:60px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:background .2s;width:40px;z-index:10}.mm-nav:hover{background:#007bffbf}.mm-nav--prev{left:.5rem}.mm-nav--next{right:.5rem}.mm-counter{background:#0000008c;border-radius:12px;bottom:.5rem;color:#fff;font-size:.75rem;font-weight:600;padding:.2rem .55rem;pointer-events:none;position:absolute;right:.75rem}.mm-thumbnails{background:#1a1a1a;display:flex;flex-shrink:0;gap:4px;overflow-x:auto;padding:6px 8px;scrollbar-color:#555 #0000;scrollbar-width:thin}.mm-thumb{background:#333;border:2px solid #0000;border-radius:3px;cursor:pointer;flex-shrink:0;height:48px;overflow:hidden;padding:0;transition:border-color .15s;width:64px}.mm-thumb img{display:block;height:100%;object-fit:cover;width:100%}.mm-thumb--active{border-color:#007bff}.mm-thumb-video{align-items:center;color:#aaa;display:flex;flex-direction:column;font-size:.6rem;gap:2px;height:100%;justify-content:center;width:100%}.mm-thumb-video svg{color:#007bff;font-size:1rem}@media (max-width:600px){.mm-window--normal{height:80vh;width:98vw}.mm-nav{font-size:1.1rem;height:48px;width:32px}}.project-detail-page{background-color:#f8f9fa;min-height:100vh;padding:2rem 2rem 4rem}.pdp-inner{margin:0 auto;max-width:1000px}.pdp-btn-back{align-items:center;background:#fff;border:2px solid #007bff;border-radius:4px;color:#007bff;cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:600;gap:.4rem;margin-bottom:1.75rem;padding:.6rem 1.5rem;text-decoration:none;transition:all .3s ease}.pdp-btn-back svg{font-size:1rem}.pdp-btn-back:hover{background:#007bff;color:#fff;transform:translateY(-2px)}.pdp-loading{align-items:center;color:#888;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:40vh}.pdp-spinner{animation:pdp-spin .8s linear infinite;border:4px solid #e0e0e0;border-radius:50%;border-top-color:#007bff;height:40px;width:40px}@keyframes pdp-spin{to{transform:rotate(1turn)}}.pdp-error{color:#d32f2f;font-size:1.1rem;padding:3rem;text-align:center}.pdp-hero{background-color:#007bff;border-radius:4px;color:#fff;margin-bottom:1.75rem;padding:2rem 2rem 1.75rem}.pdp-hero h1{color:#fff;font-size:1.97rem;font-weight:700;line-height:1.3;margin:.6rem 0 .4rem}.pdp-updated{color:#ffffffbf;font-size:.82rem;margin:0}.pdp-statut{border-radius:3px;display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.5px;padding:.3rem .9rem;text-transform:uppercase}.statut-en-cours{background:#28a745;color:#fff}.statut-prevu{background:#ffc107;color:#333}.statut-termine{background:#6c757d;color:#fff}.statut-autre{background:#ffffff40;border:1px solid #ffffff80;color:#fff}.pdp-info-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.75rem}.pdp-info-card{align-items:flex-start;background:#fff;border-left:4px solid #007bff;border-radius:4px;box-shadow:0 1px 4px #00000012;display:flex;gap:.85rem;padding:1.25rem 1.25rem 1.25rem 1.5rem}.pdp-info-icon{align-items:center;color:#007bff;display:flex;flex-shrink:0;font-size:1.1rem;margin-top:.2rem}.pdp-info-card>div{display:flex;flex-direction:column;gap:.2rem;min-width:0}.pdp-info-label{color:#007bff;font-size:.72rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.pdp-info-value{color:#333;font-size:.92rem;font-weight:500;line-height:1.5;word-break:break-word}.pdp-section{background:#fff;box-shadow:0 1px 4px #00000012;margin-bottom:1.5rem;padding:1.75rem 2rem}.pdp-section--accent{background-color:#f8f9fa}.pdp-section-title{align-items:center;border-bottom:2px solid #007bff;color:#333;display:flex;font-size:1.3rem;font-weight:700;gap:.6rem;margin:0 0 1.25rem;padding-bottom:.6rem}.pdp-section-title>svg{color:#007bff;flex-shrink:0;font-size:1.2rem}.pdp-section-line{display:none}.pdp-count{background:#007bff;border-radius:12px;color:#fff;font-size:.72rem;font-weight:700;margin-left:auto;padding:.2rem .6rem}.pdp-section-text{color:#555;font-size:.97rem;line-height:1.8;margin:0;text-align:justify}.pdp-image-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.pdp-image-thumb{aspect-ratio:4/3;background:#e9ecef;border-radius:4px;cursor:pointer;overflow:hidden;position:relative}.pdp-image-thumb img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.pdp-image-thumb:hover img{transform:scale(1.06)}.pdp-image-overlay{align-items:center;background:#00000059;color:#fff;display:flex;font-size:1.5rem;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .25s}.pdp-image-thumb:hover .pdp-image-overlay{opacity:1}.pdp-video-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.pdp-video-thumb{cursor:pointer}.pdp-video-thumb-inner{aspect-ratio:16/9;background:#222;border-radius:4px;overflow:hidden;position:relative}.pdp-video-thumb-bg{background:#2a2a2a;height:100%;width:100%}.pdp-video-thumb-inner video{display:block;height:100%;object-fit:cover;pointer-events:none;width:100%}.pdp-video-play{align-items:center;background:#00000061;color:#fff;display:flex;font-size:2rem;inset:0;justify-content:center;position:absolute;transition:background .2s}.pdp-video-thumb:hover .pdp-video-play{background:#007bff8c}.pdp-video-title{color:#555;font-size:.85rem;font-weight:500;margin:.4rem 0 0}.pdp-docs-list{display:flex;flex-direction:column;gap:.5rem}.pdp-doc-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;color:inherit;display:flex;gap:1rem;padding:.9rem 1.25rem;text-decoration:none;transition:all .25s ease}.pdp-doc-item:hover{background:#e8f0fe;border-color:#007bff;color:#007bff}.pdp-doc-main{background:#fff;border-left:4px solid #007bff}.pdp-doc-icon{align-items:center;color:#007bff;display:flex;flex-shrink:0;font-size:1.2rem}.pdp-doc-info{display:flex;flex:1 1;flex-direction:column;gap:.15rem;min-width:0}.pdp-doc-name{color:#333;font-size:.92rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdp-doc-item:hover .pdp-doc-name{color:#007bff}.pdp-doc-badge{color:#007bff;font-size:.7rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.pdp-doc-arrow{align-items:center;color:#007bff;display:flex;flex-shrink:0;font-size:1rem}@media (max-width:768px){.project-detail-page{padding:1rem 1rem 3rem}.pdp-info-grid{grid-template-columns:repeat(2,1fr)}.pdp-hero h1{font-size:1.6rem}.pdp-hero{padding:1.5rem}.pdp-section{padding:1.25rem}}@media (max-width:480px){.pdp-info-grid{grid-template-columns:1fr}.pdp-image-grid{grid-template-columns:repeat(2,1fr)}}.pdp-timeline{display:flex;flex-direction:column;gap:0;padding:.25rem 0}.pdp-tl-item{display:flex;gap:1.25rem;position:relative}.pdp-tl-marker{flex-direction:column}.pdp-tl-dot,.pdp-tl-marker{align-items:center;display:flex;flex-shrink:0;width:36px}.pdp-tl-dot{border:2px solid #0000;border-radius:50%;font-size:1rem;height:36px;justify-content:center;z-index:1}.pdp-tl-line{background:#dee2e6;flex:1 1;margin:4px 0;min-height:24px;width:2px}.etape-a-venir .pdp-tl-dot{background:#e9ecef;border-color:#ced4da;color:#6c757d}.etape-en-cours .pdp-tl-dot{background:#cfe2ff;border-color:#007bff;color:#0d6efd}.etape-terminee .pdp-tl-dot{background:#d1e7dd;border-color:#28a745;color:#198754}.etape-annulee .pdp-tl-dot{background:#f8d7da;border-color:#dc3545;color:#dc3545}.etape-en-cours .pdp-tl-line{background:#007bff}.etape-terminee .pdp-tl-line{background:#28a745}.pdp-tl-content{background:#fff;border-left:4px solid #dee2e6;border-radius:4px;box-shadow:0 1px 4px #0000000f;flex:1 1;margin-bottom:1rem;padding:.9rem 1.1rem}.etape-en-cours .pdp-tl-content{border-left-color:#007bff}.etape-terminee .pdp-tl-content{border-left-color:#28a745}.etape-annulee .pdp-tl-content{border-left-color:#dc3545}.pdp-tl-header{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.5rem}.pdp-tl-order{color:#adb5bd;flex-shrink:0;font-size:.72rem;font-weight:700;letter-spacing:.05em}.pdp-tl-title{color:#111;flex:1 1;font-size:.97rem;font-weight:700;margin:0}.pdp-tl-badge{align-items:center;border-radius:3px;display:inline-flex;flex-shrink:0;font-size:.72rem;font-weight:700;gap:.3rem;letter-spacing:.04em;padding:.2rem .6rem;text-transform:uppercase}.pdp-tl-badge.etape-a-venir{background:#e9ecef;color:#6c757d}.pdp-tl-badge.etape-en-cours{background:#cfe2ff;color:#0d6efd}.pdp-tl-badge.etape-terminee{background:#d1e7dd;color:#198754}.pdp-tl-badge.etape-annulee{background:#f8d7da;color:#dc3545}.pdp-tl-desc{color:#555;font-size:.875rem;line-height:1.6;margin:0 0 .65rem}.pdp-tl-dates{color:#6c757d;display:flex;flex-wrap:wrap;font-size:.8rem;gap:1.25rem}.pdp-tl-dates span{align-items:center;display:inline-flex;gap:.3rem}.pdp-tl-dates svg{color:#007bff;font-size:.85rem}@media (max-width:600px){.pdp-tl-header{align-items:flex-start;flex-direction:column}}.media-page{background:#f8f9fa;min-height:100vh}.mp-hero{background-color:#007bff;color:#fff;padding:2.5rem 2rem 2rem}.mp-hero-inner{margin:0 auto;max-width:1200px}.mp-hero-title{font-size:1.97rem;font-weight:700;letter-spacing:.01em;margin:0 0 .35rem}.mp-hero-subtitle{font-size:1rem;margin:0 0 1rem;opacity:.88}.mp-stats{flex-wrap:wrap;gap:.75rem}.mp-stat,.mp-stats{align-items:center;display:flex}.mp-stat{background:#ffffff2e;border-radius:4px;font-size:.9rem;font-weight:600;gap:.35rem;padding:.3rem .75rem}.mp-stat-sep{background:#ffffff59;height:18px;width:1px}.mp-body{margin:0 auto;max-width:1200px;padding:2rem 2rem 4rem}.mp-tabs{border-bottom:2px solid #dee2e6;display:flex;gap:.5rem;margin-bottom:2rem}.mp-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#6c757d;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.45rem;margin-bottom:-2px;padding:.65rem 1.3rem;transition:color .2s,border-color .2s}.mp-tab:hover{color:#007bff}.mp-tab--active{border-bottom-color:#007bff;color:#007bff}.mp-tab-count{background:#e9ecef;border-radius:20px;color:#495057;font-size:.75rem;font-weight:700;min-width:22px;padding:.1rem .5rem;text-align:center}.mp-tab--active .mp-tab-count{background:#007bff;color:#fff}.mp-loading{align-items:center;color:#6c757d;display:flex;flex-direction:column;gap:1rem;padding:4rem 0}.mp-spinner{animation:mp-spin .7s linear infinite;border:3px solid #dee2e6;border-radius:50%;border-top-color:#007bff;height:36px;width:36px}@keyframes mp-spin{to{transform:rotate(1turn)}}.mp-empty,.mp-error{align-items:center;color:#6c757d;display:flex;flex-direction:column;font-size:.95rem;gap:1rem;padding:4rem 0}.mp-image-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.mp-image-card{background:#fff;border-radius:4px;box-shadow:0 1px 4px #00000012;cursor:pointer;overflow:hidden;transition:box-shadow .2s,transform .2s}.mp-image-card:hover{box-shadow:0 4px 16px #007bff21;transform:translateY(-2px)}.mp-image-wrap{aspect-ratio:4/3;background:#e9ecef;overflow:hidden;position:relative}.mp-image-wrap img{display:block;height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.mp-image-card:hover .mp-image-wrap img{transform:scale(1.04)}.mp-image-overlay{align-items:center;background:#007bff73;color:#fff;display:flex;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .2s}.mp-image-card:hover .mp-image-overlay{opacity:1}.mp-video-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.mp-video-card{background:#fff;border-radius:4px;box-shadow:0 1px 4px #00000012;cursor:pointer;overflow:hidden;transition:box-shadow .2s,transform .2s}.mp-video-card:hover{box-shadow:0 4px 16px #007bff21;transform:translateY(-2px)}.mp-video-thumb{aspect-ratio:16/9;background:#1a1a1a;overflow:hidden;position:relative}.mp-video-bg{background:#222;inset:0;position:absolute}.mp-video-play{align-items:center;background:#0000004d;color:#fff;display:flex;font-size:2rem;inset:0;justify-content:center;position:absolute;transition:background .2s}.mp-video-card:hover .mp-video-play{background:#007bff80}.mp-card-info{display:flex;flex-direction:column;gap:.2rem;padding:.65rem .85rem .7rem}.mp-card-project{color:#007bff;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.mp-card-project,.mp-card-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mp-card-title{color:#495057;font-size:.85rem}@media (max-width:1024px){.mp-image-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.mp-image-grid,.mp-video-grid{grid-template-columns:repeat(2,1fr)}.mp-body{padding:1.5rem 1rem 3rem}}@media (max-width:480px){.mp-image-grid,.mp-video-grid{grid-template-columns:1fr}.mp-hero{padding:1.5rem 1rem 1.25rem}}.org-chart{display:flex;justify-content:center;min-height:500px;width:100%}.org-president,.org-root{align-items:center;display:flex;flex-direction:column;width:100%}.org-president{margin-bottom:3rem}.org-member-card{align-items:center;background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #007bff;border-radius:12px;box-shadow:0 4px 12px #007bff26;cursor:pointer;display:flex;flex-direction:column;height:100%;max-width:320px;min-width:220px;padding:1.5rem;text-align:center;transition:all .3s ease}.org-member-card:hover{border-color:#0056b3;box-shadow:0 8px 20px #007bff40;transform:translateY(-5px)}.org-member-card:focus-visible{outline:3px solid #007bff59;outline-offset:4px}.member-photo{background:#e9ecef;border:3px solid #007bff;border-radius:50%;height:100px;margin-bottom:1rem;overflow:hidden;width:100px}.member-photo img{height:100%;object-fit:cover;width:100%}.member-name{color:#1a1a2e;font-size:1rem;font-weight:700;line-height:1.3;margin:0 0 .5rem}.member-title{color:#666;font-size:.85rem;font-weight:500;margin:0}.org-group{background:linear-gradient(135deg,#f0f8ff,#e6f2ff);border:2px dashed #007bff;border-radius:8px;margin:1rem 0;min-width:280px;padding:1.5rem;width:100%}.group-title{border-bottom:2px solid #007bff;color:#0056b3;font-size:1.1rem;font-weight:700;letter-spacing:.5px;margin:0 0 1.5rem;padding-bottom:.75rem;text-transform:uppercase}.org-children{margin-top:2rem}.org-children,.org-node{align-items:center;display:flex;flex-direction:column;position:relative}.org-node{margin:1rem 0}.org-node:before{background:#007bff;content:"";height:1.5rem;left:50%;position:absolute;top:-1.5rem;transform:translateX(-50%);width:2px}.org-node:first-child:before{display:none}.org-connector{background:#007bff;height:2.5rem;left:50%;position:absolute;top:-2.5rem;transform:translateX(-50%);width:2px}.org-item{flex-direction:column;position:relative;width:100%}.expand-btn,.org-item{align-items:center;display:flex}.expand-btn{background:#fff;border:2px solid #007bff;border-radius:50%;box-shadow:0 2px 4px #007bff33;color:#007bff;cursor:pointer;font-size:1.2rem;font-weight:700;height:32px;justify-content:center;position:absolute;right:-1.5rem;top:-2.5rem;transition:all .3s ease;width:32px}.expand-btn:hover{background:#007bff;color:#fff;transform:scale(1.1)}.org-drawer-layer{align-items:stretch;background:#0f172a6b;bottom:0;display:flex;justify-content:flex-end;left:0;position:fixed;right:0;top:0;z-index:1200}.org-drawer{background:#fff;box-shadow:-12px 0 30px #0f172a33;max-width:420px;overflow-y:auto;padding:2rem;position:relative;width:min(420px,92vw)}.org-drawer-close{align-items:center;background:#f4f8ff;border:1px solid #d7e7ff;border-radius:50%;color:#0056b3;cursor:pointer;display:flex;font-size:1.6rem;font-weight:700;height:40px;justify-content:center;line-height:1;position:absolute;right:1rem;top:1rem;transition:background-color .25s ease,transform .25s ease;width:40px}.org-drawer-close:hover{background:#007bff;color:#fff;transform:rotate(90deg)}.org-drawer-photo{background:#e9ecef;border:4px solid #007bff;border-radius:50%;height:140px;margin-bottom:1.5rem;overflow:hidden;width:140px}.org-drawer-photo img{height:100%;object-fit:cover;width:100%}.org-drawer-kicker{color:#007bff;display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.08em;margin-bottom:.6rem;text-transform:uppercase}.org-drawer h2{color:#1a1a2e;font-size:1.65rem;line-height:1.25;margin:0 0 .75rem}.org-drawer-title{color:#5d6670;font-weight:700;line-height:1.5;margin:0 0 1.5rem}.org-drawer-description{background:#f4f8ff;border-left:4px solid #007bff;padding:1.1rem}.org-drawer-description h3{color:#0056b3;font-size:1rem;margin:0 0 .65rem}.org-drawer-description p{color:#1f2933;line-height:1.65;margin:0}.level-0{margin-left:0}.level-1{margin-left:20px}.level-2{margin-left:40px}.level-3{margin-left:60px}@media (min-width:1024px){.org-children{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));margin-top:2rem;width:100%}.org-node{margin:0;width:100%}.org-node:before{display:none}.org-group,.org-member-card{margin:0}.org-group .org-children{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.org-president>.org-children{align-items:center;display:flex;flex-direction:column;max-width:980px}.org-president>.org-children>.org-node{max-width:980px}.org-president>.org-children>.org-node>.org-connector{display:block}}@media (max-width:768px){.org-member-card{max-width:100%;min-width:180px;padding:1rem}.member-photo{height:80px;width:80px}.member-name{font-size:.9rem}.member-title{font-size:.8rem}.org-group{min-width:200px;padding:1rem}.expand-btn,.group-title{font-size:1rem}.expand-btn{height:28px;width:28px}.org-chart{min-height:auto}.org-drawer-layer{align-items:flex-end}.org-drawer{border-radius:16px 16px 0 0;max-height:88vh;max-width:none;padding:1.5rem;width:100%}.org-drawer-photo{height:110px;width:110px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.org-group,.org-member-card{animation:fadeIn .4s ease-in-out}@media print{.expand-btn{display:none}.org-chart{background:#fff}}.administration-page{background-color:#f5f7fa;min-height:100vh;width:100%}.admin-header{background:linear-gradient(135deg,#007bff,#0056b3);box-shadow:0 4px 6px #0000001a;color:#fff;padding:3rem 2rem;text-align:center}.admin-header h1{font-size:2.5rem;font-weight:800;letter-spacing:0;margin:0 0 1rem}.admin-subtitle{font-size:1.1rem;font-weight:300;margin:0;opacity:.95}.admin-divider{background:#ffffff80;border-radius:2px;height:4px;margin:1rem auto 0;width:80px}.admin-content{margin:3rem auto;max-width:1400px;padding:0 2rem}.admin-intro{background:#fff;border-left:5px solid #007bff;box-shadow:0 2px 8px #00000014;margin-bottom:2rem;padding:2rem}.admin-kicker{color:#007bff;display:inline-block;font-size:.82rem;font-weight:800;letter-spacing:.08em;margin-bottom:.65rem;text-transform:uppercase}.admin-intro h2{color:#1a1a2e;font-size:1.8rem;margin:0 0 .75rem}.admin-intro p{color:#555;line-height:1.7;margin:0;max-width:900px}.org-chart-container{overflow-x:auto}.loading,.org-chart-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:3rem 2rem}.loading{color:#666;font-size:1.1rem;text-align:center}.error-message{background-color:#f8d7da;border-left:4px solid #f5c6cb;border-radius:8px;color:#721c24;margin-bottom:2rem;padding:1.5rem}@media (max-width:768px){.admin-header h1{font-size:1.8rem}.admin-header{padding:2rem 1rem}.admin-content{margin:2rem auto;padding:0 1rem}.org-chart-container{padding:1.5rem 1rem}.admin-intro{padding:1.5rem}.admin-intro h2{font-size:1.4rem}}.auth-page{align-items:center;background:#f5f7fa;display:flex;justify-content:center;min-height:calc(100vh - 90px);padding:3rem 1.5rem}.auth-card{background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001a;max-width:780px;padding:2.5rem;width:100%}.auth-card-small{max-width:520px}.auth-header{margin-bottom:1.75rem;text-align:center}.auth-kicker{color:#007bff;display:inline-block;font-size:.82rem;font-weight:800;letter-spacing:.08em;margin-bottom:.7rem;text-transform:uppercase}.auth-header h1{color:#1a1a2e;font-size:2rem;margin:0 0 .6rem}.auth-header p{color:#5d6670;line-height:1.6;margin:0 auto;max-width:560px}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.auth-form label{color:#1f2933;display:flex;flex-direction:column;font-size:.9rem;font-weight:700;gap:.45rem}.auth-form input,.auth-form select{background:#fff;border:1px solid #d7dee8;border-radius:8px;color:#1a1a2e;font:inherit;padding:.85rem .95rem;transition:border-color .25s ease,box-shadow .25s ease}.auth-form input:focus,.auth-form select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff24;outline:none}.auth-form input[readonly]{background:#f4f8ff;color:#536273}.auth-submit{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:800;margin-top:.5rem;padding:.95rem 1.2rem;text-transform:uppercase;transition:background-color .25s ease,transform .25s ease}.auth-submit:hover:not(:disabled){background:#0056b3;transform:translateY(-2px)}.auth-submit:disabled{cursor:not-allowed;opacity:.7}.auth-error,.auth-success{border-radius:8px;font-weight:700;line-height:1.5;margin-bottom:1rem;padding:.95rem 1rem}.auth-success{background:#d4edda;color:#155724}.auth-error{background:#f8d7da;color:#721c24}.auth-switch{color:#5d6670;margin:1.3rem 0 0;text-align:center}.auth-switch a{color:#007bff;font-weight:800;text-decoration:none}.auth-switch a:hover{text-decoration:underline}@media (max-width:768px){.auth-page{padding:2rem 1rem}.auth-card{padding:1.5rem}.auth-grid{grid-template-columns:1fr}.auth-header h1{font-size:1.6rem}}.membership-page{background:#f5f7fa;min-height:calc(100vh - 90px);padding:4rem 1.5rem}.membership-shell{margin:0 auto;max-width:1180px}.membership-header{align-items:stretch;display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);margin-bottom:2.5rem}.membership-header-content{align-items:flex-start;background:#fff;display:flex;flex-direction:column;justify-content:center;padding:3rem}.membership-kicker{color:#007bff;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.membership-header h1{color:#1a1a2e;font-size:2.35rem;margin:.75rem 0 1rem}.membership-header p{color:#5d6670;line-height:1.7;margin:0}.membership-header-image{min-height:400px;overflow:hidden}.membership-header-image img{display:block;height:100%;object-fit:cover;width:100%}.membership-sections{grid-gap:0;display:grid;gap:0;grid-template-columns:repeat(3,minmax(0,1fr))}.membership-section{grid-gap:1rem;border-left:1px solid #dbe3ec;display:grid;gap:1rem;grid-template-columns:auto minmax(0,1fr);padding:.5rem 1.5rem 1rem}.membership-section-number{color:#007bff;font-size:.78rem;font-weight:900;padding-top:.2rem}.membership-section h2{color:#1a1a2e;font-size:1.1rem;margin:0 0 .9rem}.membership-section li,.membership-section p{color:#64748b;font-size:.9rem;line-height:1.65}.membership-section p{margin:0}.membership-section ul{grid-gap:.65rem;display:grid;gap:.65rem;list-style:none;margin:0;padding:0}.membership-section li{padding-left:1rem;position:relative}.membership-section li:before{background:#007bff;border-radius:50%;content:"";height:5px;left:0;position:absolute;top:.6rem;width:5px}.membership-price{background:#fff;border-radius:8px;display:flex;flex-direction:column;gap:.25rem;margin-top:1rem;padding:1rem}.membership-price strong{color:#007bff;font-size:1.6rem}.membership-price span{color:#1f2933;font-size:.82rem;font-weight:800}.membership-payment-button{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:800;margin-top:1rem;padding:.9rem 1.1rem;text-transform:uppercase;transition:background-color .25s ease,transform .25s ease}.membership-payment-button:hover{background:#0056b3;transform:translateY(-2px)}.membership-card-section .membership-rate-note{font-size:.72rem;margin-top:.6rem}.membership-rate-note a{color:#007bff}.membership-action{align-items:center;background:#007bff;display:flex;gap:2rem;justify-content:space-between;margin-bottom:3rem;padding:1.5rem 2rem}.membership-action div{display:flex;flex-direction:column;gap:.25rem}.membership-action strong{color:#fff;font-size:1.1rem}.membership-action span{color:#ffffffe0;font-size:.9rem}.membership-action button{background:#fff;border:none;border-radius:8px;color:#007bff;cursor:pointer;flex:0 0 auto;font-weight:900;padding:.9rem 1.2rem;transition:background-color .25s ease,transform .25s ease}.membership-action button:hover{background:#eef6ff;transform:translateY(-2px)}@media (max-width:950px){.membership-header,.membership-sections{grid-template-columns:1fr}.membership-header-image{min-height:340px}.membership-section{border-left:none;border-top:1px solid #dbe3ec;padding:1.5rem 0}}@media (max-width:680px){.membership-page{padding:3rem 1.25rem}.membership-header h1{font-size:2rem}.membership-header-content{padding:2rem 1.5rem}.membership-header-image{min-height:240px}.membership-action{align-items:stretch;flex-direction:column;padding:1.5rem}.membership-action button{width:100%}}.profile-page{align-items:center;background:#f5f7fa;display:flex;flex-direction:column;gap:1.5rem;justify-content:center;min-height:calc(100vh - 90px);padding:3rem 1.5rem}.profile-card,.profile-empty{background:#fff;border:none;border-radius:12px;box-shadow:none;max-width:1180px;padding:2.5rem;width:100%}.profile-empty{max-width:780px;text-align:center}.profile-empty h1{color:#1a1a2e;margin:0 0 .75rem}.profile-empty p{color:#5d6670;line-height:1.6;margin:0 0 1.5rem}.profile-top{justify-content:space-between;margin-bottom:2rem}.profile-identity,.profile-top{align-items:center;display:flex;gap:1.5rem}.profile-identity{min-width:0}.profile-top-actions{align-items:center;display:flex;flex:0 0 auto;gap:.8rem}.profile-avatar{align-items:center;background:#f4f8ff;border:4px solid #007bff;border-radius:50%;color:#007bff;display:flex;flex:0 0 130px;font-size:2.6rem;font-weight:800;height:130px;justify-content:center;overflow:hidden;width:130px}.profile-avatar img{height:100%;object-fit:cover;width:100%}.profile-qr{align-items:center;background:#fff;border:1px solid #d7e7ff;border-radius:8px;box-shadow:none;color:#007bff;display:flex;flex:0 0 150px;flex-direction:column;font-weight:800;justify-content:center;min-height:150px;padding:.75rem;text-align:center}.profile-qr img{background:#fff;height:130px;object-fit:contain;width:130px}.profile-qr span{background:#f4f8ff;height:130px;width:130px}.profile-buy-card,.profile-card-status,.profile-qr span{align-items:center;border-radius:8px;display:flex;justify-content:center}.profile-buy-card,.profile-card-status{flex:0 0 auto;font-weight:800;min-height:48px;padding:.85rem 1rem;text-align:center}.profile-buy-card{background:#007bff;border:none;color:#fff;cursor:pointer;transition:background-color .25s ease,transform .25s ease}.profile-buy-card:hover{background:#0056b3;transform:translateY(-2px)}.profile-card-status{background:#f4f8ff;color:#007bff}.profile-digital-card{background:radial-gradient(circle at 88% 8%,#f4c54273,#0000 24%),linear-gradient(135deg,#07111f,#111827 42%,#251149 72%,#070707);border-radius:24px;box-shadow:0 24px 50px #07111f47;color:#fff;margin-bottom:1.5rem;overflow:hidden;padding:1.6rem;position:relative}.profile-digital-card-shine{background:linear-gradient(120deg,#0000,#ffffff24,#0000);height:160%;left:18%;position:absolute;top:-30%;transform:rotate(18deg);width:120px}.profile-digital-card-grid,.profile-digital-card-top{position:relative;z-index:1}.profile-digital-card-top{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.profile-digital-card-label{color:#f4c542;display:block;font-size:.78rem;font-weight:900;letter-spacing:.16em;margin-bottom:.3rem}.profile-digital-card h2{font-size:1.55rem;margin:0}.profile-digital-card-badge{background:#f4c54229;border:1px solid #f4c5428c;border-radius:999px;color:#ffe7a3;flex:0 0 auto;font-size:.78rem;font-weight:900;padding:.5rem .75rem;text-transform:uppercase}.profile-card-chip{background:linear-gradient(135deg,#f7dd8f,#b6862d);border-radius:8px;display:grid;grid-template-columns:repeat(2,1fr);height:42px;margin:1.9rem 0 1.5rem;overflow:hidden;position:relative;width:58px;z-index:1}.profile-card-chip span{border:1px solid #37260942}.profile-digital-card-name{font-size:1.5rem;font-weight:900;margin-bottom:1.3rem;position:relative;text-transform:uppercase;z-index:1}.profile-digital-card-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr))}.profile-digital-card-grid div{min-width:0}.profile-digital-card-grid span{color:#ffffff9e;display:block;font-size:.72rem;font-weight:900;margin-bottom:.32rem;text-transform:uppercase}.profile-digital-card-grid strong{color:#fff;display:block;overflow-wrap:anywhere}.profile-no-card{background:#f4f8ff;border:1px solid #d8e8fb;border-radius:8px;color:#1f2933;font-weight:800;margin-bottom:1.5rem;padding:1rem}.profile-kicker{color:#007bff;display:inline-block;font-size:.82rem;font-weight:800;letter-spacing:.08em;margin-bottom:.6rem;text-transform:uppercase}.profile-top h1{color:#1a1a2e;font-size:2rem;margin:0 0 .4rem}.profile-top p{color:#5d6670;margin:0}.profile-details{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1.5rem}.profile-details div{background:#f4f8ff;border-radius:8px;padding:1rem}.profile-details span{color:#64748b;display:block;font-size:.78rem;font-weight:800;letter-spacing:.04em;margin-bottom:.35rem;text-transform:uppercase}.profile-details strong{color:#1f2933;overflow-wrap:anywhere}.profile-upload{border-top:1px solid #e2e8f0;display:flex;gap:1rem;margin-top:1rem;padding-top:1.5rem}.profile-upload label{color:#1f2933;display:flex;flex:1 1;flex-direction:column;font-size:.9rem;font-weight:800;gap:.5rem}.profile-upload input{border:1px solid #d7dee8;border-radius:8px;padding:.75rem}.profile-audience-button,.profile-logout,.profile-primary-link,.profile-upload button{border:none;border-radius:8px;cursor:pointer;font-weight:800;padding:.9rem 1.2rem;text-decoration:none;transition:background-color .25s ease,transform .25s ease}.profile-audience-button,.profile-primary-link,.profile-upload button{background:#007bff;color:#fff}.profile-primary-link,.profile-upload button{align-self:flex-end}.profile-audience-button:hover,.profile-primary-link:hover,.profile-upload button:hover:not(:disabled){background:#0056b3;transform:translateY(-2px)}.profile-upload button:disabled{cursor:not-allowed;opacity:.7}.profile-actions{align-items:center;border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:space-between;margin-top:1.25rem;padding-top:1rem}.profile-logout{background:#0000;color:#c0392b;padding-left:0}.profile-error,.profile-success{border-radius:8px;font-weight:700;line-height:1.5;margin-bottom:1rem;padding:.95rem 1rem}.profile-success{background:#d4edda;color:#155724}.profile-error{background:#f8d7da;color:#721c24}.profile-edit-header{align-items:center;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-top:1.25rem;padding-top:1.5rem}.profile-edit-header h2{color:#1a1a2e;font-size:1.15rem;margin:0}.profile-edit-form button,.profile-edit-header button{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:800;padding:.8rem 1rem;transition:background-color .25s ease,transform .25s ease}.profile-edit-form button:hover:not(:disabled),.profile-edit-header button:hover{background:#0056b3;transform:translateY(-2px)}.profile-edit-form{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.profile-edit-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.profile-edit-form label{color:#1f2933;display:flex;flex-direction:column;font-size:.9rem;font-weight:800;gap:.45rem}.profile-edit-form input,.profile-edit-form select{background:#fff;border:1px solid #d7dee8;border-radius:8px;color:#1a1a2e;font:inherit;padding:.85rem .95rem;transition:border-color .25s ease,box-shadow .25s ease}.profile-edit-form input:focus,.profile-edit-form select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff24;outline:none}.profile-edit-form button{align-self:flex-start}.profile-edit-form button:disabled{cursor:not-allowed;opacity:.7}@media (max-width:768px){.profile-card,.profile-empty{padding:1.5rem}.profile-identity,.profile-top,.profile-top-actions,.profile-upload{align-items:stretch;flex-direction:column}.profile-qr{flex-basis:auto}.profile-buy-card,.profile-card-status,.profile-qr{align-self:flex-start}.profile-digital-card{border-radius:18px;padding:1.25rem}.profile-digital-card-top{flex-direction:column}.profile-digital-card-grid{grid-template-columns:1fr}.profile-avatar{flex-basis:auto}.profile-details{grid-template-columns:1fr}.profile-edit-header{align-items:stretch;flex-direction:column;gap:1rem}.profile-edit-grid{grid-template-columns:1fr}.profile-actions{align-items:stretch;flex-direction:column}.profile-audience-button,.profile-logout{width:100%}}.audience-page{background:#f5f7fa;min-height:calc(100vh - 90px);padding:3rem 1.5rem}.audience-shell{max-width:1180px}.audience-auth-card,.audience-shell{background:#fff;border-radius:12px;box-shadow:none;margin:0 auto;padding:2.5rem;width:100%}.audience-auth-card{max-width:640px;text-align:center}.audience-kicker{color:#007bff;display:inline-block;font-size:.82rem;font-weight:800;letter-spacing:.08em;margin-bottom:.6rem;text-transform:uppercase}.audience-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1.25rem}.audience-auth-card h1,.audience-header h1{color:#1a1a2e;font-size:2rem;margin:0}.audience-auth-card p{color:#5d6670;line-height:1.6;margin:1rem 0 1.5rem}.audience-layout{display:block;width:100%}.audience-list{background:#f8fbff;border:none;border-radius:8px;padding:1.25rem}.audience-form{display:flex;flex-direction:column;gap:1rem}.audience-form h2,.audience-list h2{color:#1a1a2e;font-size:1.15rem;margin:0}.audience-form-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.audience-form label{color:#1f2933;display:flex;flex-direction:column;font-size:.9rem;font-weight:800;gap:.45rem}.audience-form input,.audience-form textarea{background:#fff;border:1px solid #d7dee8;border-radius:8px;color:#1a1a2e;font:inherit;padding:.85rem .95rem;transition:border-color .25s ease,box-shadow .25s ease}.audience-form textarea{resize:vertical}.audience-form input:focus,.audience-form textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff24;outline:none}.audience-file-name{color:#64748b;font-size:.82rem;font-weight:700}.audience-form button,.audience-primary-link{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:800;padding:.9rem 1.2rem;text-align:center;text-decoration:none;transition:background-color .25s ease,transform .25s ease}.audience-form button{align-self:flex-start}.audience-form button:hover:not(:disabled),.audience-primary-link:hover{background:#0056b3;transform:translateY(-2px)}.audience-form button:disabled{cursor:not-allowed;opacity:.7}.audience-error,.audience-success{border-radius:8px;font-weight:700;line-height:1.5;margin-bottom:1rem;padding:.95rem 1rem}.audience-success{background:#d4edda;color:#155724}.audience-error{background:#f8d7da;color:#721c24}.audience-list-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.audience-list-actions{align-items:center;display:flex;gap:.8rem}.audience-list-actions button{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:800;padding:.8rem 1rem;transition:background-color .25s ease,transform .25s ease;white-space:nowrap}.audience-list-actions button:hover{background:#0056b3;transform:translateY(-2px)}.audience-empty,.audience-list-actions span{color:#64748b;font-weight:700}.audience-empty{line-height:1.6;margin:0;padding:1.25rem}.audience-empty,.audience-table-wrap{background:#fff;border:none;border-radius:8px}.audience-table-wrap{overflow:hidden;width:100%}.audience-table{border-collapse:collapse;width:100%}.audience-table td,.audience-table th{padding:.95rem 1rem;text-align:left}.audience-table th{color:#64748b;font-size:.76rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.audience-table td{color:#1f2933;font-weight:800}.audience-table tbody tr{border-top:1px solid #edf2f7;cursor:pointer;transition:background-color .2s ease}.audience-table tbody tr:focus,.audience-table tbody tr:hover{background:#f4f8ff;outline:none}.audience-status{border-radius:999px;flex:0 0 auto;font-size:.75rem;font-weight:900;letter-spacing:.03em;padding:.45rem .7rem;text-transform:uppercase}.status-en_attente{background:#fff4c2;color:#8a5b00}.status-acceptee{background:#ccfbf1;color:#0f766e}.status-programmee{background:#dbeafe;color:#1d4ed8}.status-refusee{background:#fee2e2;color:#b91c1c}.status-cloturee{background:#dcfce7;color:#15803d}.audience-detail-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1rem}.audience-detail-grid div{background:#f4f8ff;border-radius:8px;padding:.8rem}.audience-detail-block span,.audience-detail-grid span{color:#64748b;display:block;font-size:.75rem;font-weight:800;letter-spacing:.04em;margin-bottom:.35rem;text-transform:uppercase}.audience-detail-grid strong{color:#1f2933;overflow-wrap:anywhere}.audience-detail-block{border-top:1px solid #e2e8f0;padding-top:.9rem}.audience-detail-block p{color:#1f2933;line-height:1.55;margin:0;overflow-wrap:anywhere}.audience-refusal{margin-top:.9rem}.audience-attachment{color:#007bff;display:inline-block;font-weight:800;margin-top:.9rem;text-decoration:none}.audience-attachment:hover{color:#0056b3;text-decoration:underline}.audience-drawer-overlay{background:#0f172a61;bottom:0;display:flex;justify-content:flex-end;left:0;position:fixed;right:0;top:0;z-index:3000}.audience-drawer{background:#fff;height:100%;max-width:460px;overflow-y:auto;padding:1.5rem;width:min(100%,460px)}.audience-drawer-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.audience-drawer-header h2{color:#1a1a2e;font-size:1.35rem;margin:0;overflow-wrap:anywhere}.audience-drawer-header button{align-items:center;background:#f4f8ff;border:none;border-radius:8px;color:#1f2933;cursor:pointer;display:inline-flex;flex:0 0 38px;font-size:1.5rem;font-weight:800;height:38px;justify-content:center;line-height:1;width:38px}.audience-drawer-status{margin-bottom:1rem}.audience-modal-overlay{align-items:center;background:#0f172a6b;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:3200}.audience-modal{background:#fff;border-radius:12px;max-height:min(88vh,760px);max-width:760px;overflow-y:auto;padding:1.5rem;width:min(100%,760px)}.audience-modal-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.2rem}.audience-modal-header h2{color:#1a1a2e;font-size:1.5rem;margin:0}.audience-modal-header button{align-items:center;background:#f4f8ff;border:none;border-radius:8px;color:#1f2933;cursor:pointer;display:inline-flex;flex:0 0 38px;font-size:1.5rem;font-weight:800;height:38px;justify-content:center;line-height:1;width:38px}.audience-modal-actions{align-items:center;display:flex;gap:.8rem;justify-content:flex-end}.audience-form .audience-secondary-button{background:#eef2f7;color:#1f2933}.audience-form .audience-secondary-button:hover{background:#e2e8f0;transform:translateY(-2px)}@media (max-width:980px){.audience-layout{display:block}}@media (max-width:640px){.audience-page{padding:2rem 1rem}.audience-auth-card,.audience-shell{padding:1.5rem}.audience-header,.audience-list-actions,.audience-list-header{align-items:stretch;flex-direction:column}.audience-list-actions button{width:100%}.audience-detail-grid,.audience-form-grid{grid-template-columns:1fr}.audience-table thead{display:none}.audience-table,.audience-table tbody,.audience-table td,.audience-table tr{display:block;width:100%}.audience-table tbody tr{padding:.75rem 0}.audience-table td{align-items:center;display:flex;justify-content:space-between;padding:.45rem 1rem}.audience-table td:before{color:#64748b;content:attr(data-label);font-size:.74rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.audience-drawer{max-width:none;width:100%}.audience-form button{width:100%}.audience-modal-overlay{align-items:stretch;padding:1rem}.audience-modal{max-height:none;width:100%}.audience-modal-actions{align-items:stretch;flex-direction:column-reverse}.audience-status{align-self:flex-start}}.admin-audience-page{background:#f5f7fa;min-height:calc(100vh - 90px);padding:3rem 1.5rem}.admin-audience-access,.admin-audience-shell{background:#fff;border-radius:8px;margin:0 auto;max-width:1280px;padding:2rem}.admin-audience-access{max-width:650px;text-align:center}.admin-audience-access h1{color:#172033}.admin-audience-access p{color:#64748b;margin-bottom:1.5rem}.admin-audience-access a{background:#007bff;border-radius:6px;color:#fff;display:inline-block;font-weight:800;padding:.8rem 1rem;text-decoration:none}.admin-audience-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.admin-audience-drawer header span,.admin-audience-header span{color:#007bff;font-size:.78rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.admin-audience-header h1{color:#172033;font-size:2rem;margin:.3rem 0}.admin-audience-header p{color:#64748b;margin:0}.admin-audience-actions button,.admin-audience-header button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:800;padding:.8rem 1rem}.admin-audience-actions button:disabled,.admin-audience-header button:disabled{cursor:not-allowed;opacity:.55}.admin-audience-error,.admin-audience-success{border-radius:6px;font-weight:700;margin-bottom:1rem;padding:.9rem 1rem}.admin-audience-success{background:#dcfce7;color:#166534}.admin-audience-error{background:#fee2e2;color:#991b1b}.admin-audience-filters{border-bottom:1px solid #e5e7eb;display:flex;gap:.25rem;margin-bottom:1.25rem;overflow-x:auto}.admin-audience-filters button{background:#0000;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;font-weight:800;padding:.8rem 1rem;white-space:nowrap}.admin-audience-filters button.active{border-bottom-color:#007bff;color:#007bff}.admin-audience-state{background:#f8fafc;color:#64748b;margin:0;padding:2rem;text-align:center}.admin-audience-table-wrap{overflow-x:auto}.admin-audience-table{border-collapse:collapse;min-width:880px;width:100%}.admin-audience-table td,.admin-audience-table th{border-bottom:1px solid #edf2f7;padding:.9rem;text-align:left}.admin-audience-table th{color:#64748b;font-size:.74rem;letter-spacing:.04em;text-transform:uppercase}.admin-audience-table tbody tr{cursor:pointer}.admin-audience-table tbody tr:hover{background:#f4f8ff}.admin-audience-table td{color:#334155}.admin-audience-table td:first-child span,.admin-audience-table td:first-child strong{display:block}.admin-audience-table td:first-child span{color:#64748b;font-size:.82rem;margin-top:.25rem}.admin-audience-pagination{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}.admin-audience-pagination button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:800;padding:.7rem 1rem}.admin-audience-pagination button:disabled{cursor:not-allowed;opacity:.45}.admin-audience-status{border-radius:999px;display:inline-block;font-size:.72rem;font-weight:900;padding:.4rem .65rem;text-transform:uppercase}.admin-audience-status.status-en_attente{background:#fef3c7;color:#92400e}.admin-audience-status.status-acceptee{background:#dbeafe;color:#1d4ed8}.admin-audience-status.status-refusee{background:#fee2e2;color:#b91c1c}.admin-audience-status.status-cloturee{background:#dcfce7;color:#15803d}.admin-audience-drawer-overlay{background:#0f172a66;inset:0;position:fixed;z-index:4000}.admin-audience-drawer{background:#fff;height:100%;margin-left:auto;max-width:560px;overflow-y:auto;padding:1.5rem;width:100%}.admin-audience-drawer header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.admin-audience-drawer header h2{color:#172033;margin:.3rem 0 0}.admin-audience-drawer header button{background:#eef2f7;border:none;border-radius:6px;cursor:pointer;font-size:1.4rem;height:38px;width:38px}.admin-audience-detail-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:1rem 0}.admin-audience-detail-grid div{background:#f4f8ff;border-radius:6px;padding:.8rem}.admin-audience-detail-grid span,.admin-audience-motif span{color:#64748b;display:block;font-size:.72rem;font-weight:800;margin-bottom:.3rem;text-transform:uppercase}.admin-audience-detail-grid strong{color:#263244;overflow-wrap:anywhere}.admin-audience-motif{border-top:1px solid #e5e7eb;padding:1rem 0}.admin-audience-motif p{color:#334155;line-height:1.6;margin:0}.admin-audience-actions{grid-gap:.8rem;border-top:1px solid #e5e7eb;display:grid;gap:.8rem;margin-top:.5rem;padding-top:1rem}.admin-audience-actions h3{color:#172033;font-size:1rem;margin:.5rem 0 0}.admin-audience-actions label{grid-gap:.35rem;color:#334155;display:grid;font-size:.82rem;font-weight:800;gap:.35rem}.admin-audience-actions input,.admin-audience-actions textarea{border:1px solid #cbd5e1;border-radius:6px;font:inherit;padding:.75rem}.admin-audience-form-grid,.admin-audience-presence{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-audience-actions .danger{background:#dc2626}.admin-audience-actions .close-action{background:#15803d}.admin-audience-delete-zone{align-items:center;border-top:1px solid #fecaca;display:flex;gap:1rem;justify-content:space-between;margin-top:1.5rem;padding-top:1rem}.admin-audience-delete-zone strong{color:#991b1b}.admin-audience-delete-zone p{color:#64748b;font-size:.82rem;line-height:1.5;margin:.3rem 0 0}.admin-audience-confirm .danger,.admin-audience-delete-zone button{background:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:800;padding:.75rem .9rem}.admin-audience-confirm-overlay{align-items:center;background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:4200}.admin-audience-confirm{background:#fff;border-radius:8px;max-width:500px;padding:1.5rem;width:100%}.admin-audience-confirm h2{color:#991b1b;margin:0 0 .75rem}.admin-audience-confirm p{color:#475569;line-height:1.6;margin:0 0 1.25rem}.admin-audience-confirm>div{display:flex;gap:.75rem;justify-content:flex-end}.admin-audience-confirm>div>button:first-child{background:#eef2f7;border:none;border-radius:6px;color:#334155;cursor:pointer;font-weight:800;padding:.75rem .9rem}@media (max-width:700px){.admin-audience-page{padding:1.5rem 1rem}.admin-audience-shell{padding:1.25rem}.admin-audience-header{align-items:stretch;flex-direction:column}.admin-audience-detail-grid,.admin-audience-form-grid{grid-template-columns:1fr}.admin-audience-drawer{max-width:none}.admin-audience-confirm>div,.admin-audience-delete-zone{align-items:stretch;flex-direction:column}}.forum-page{background:#eef2f6;display:grid;grid-template-columns:minmax(280px,340px) minmax(420px,1fr);height:calc(100vh - 90px);min-height:650px}.forum-page.info-open{grid-template-columns:minmax(280px,330px) minmax(420px,1fr) minmax(250px,300px)}.forum-auth{background:#f5f7fa;min-height:calc(100vh - 90px);padding:5rem 1.5rem;text-align:center}.forum-auth h1{color:#172033}.forum-auth p{color:#64748b;margin-bottom:1.5rem}.forum-auth a{background:#007bff;border-radius:6px;color:#fff;display:inline-block;font-weight:800;padding:.85rem 1.1rem;text-decoration:none}.forum-sidebar{background:#fff;border-right:1px solid #dfe5ec;display:flex;flex-direction:column;min-height:0}.forum-sidebar>header,.forum-thread-header{align-items:center;background:#fff;border-bottom:1px solid #e5eaf0;display:flex;gap:1rem;justify-content:space-between;min-height:78px;padding:1rem 1.25rem}.forum-sidebar>header span{color:#007bff;font-size:.7rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.forum-sidebar>header h1,.forum-thread-header h2{color:#172033;margin:.2rem 0 0}.forum-sidebar>header h1{font-size:1.45rem}.forum-thread-header h2{font-size:1.05rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forum-thread-header>div:nth-child(2){min-width:0}.forum-thread-header span{color:#64748b;font-size:.76rem}.forum-actions button,.forum-comment footer button,.forum-modal header button,.forum-sidebar-meta button,.forum-sidebar>header button,.forum-thread-header button{align-items:center;background:#0000;border:none;color:#64748b;cursor:pointer;display:inline-flex;font-size:1rem;justify-content:center}.forum-sidebar>header button{background:#007bff;border-radius:50%;color:#fff;font-size:1.2rem;height:42px;width:42px}.forum-sidebar-meta{align-items:center;background:#f8fafc;color:#64748b;display:flex;font-size:.78rem;font-weight:800;justify-content:space-between;padding:.65rem 1.25rem}.forum-message-search,.forum-search{align-items:center;background:#f1f5f9;border-radius:6px;color:#94a3b8;display:flex;gap:.55rem;margin:.7rem 1rem;padding:.6rem .75rem}.forum-message-search input,.forum-search input{background:#0000;border:none;color:#334155;flex:1 1;font:inherit;font-size:.8rem;font-weight:400;min-width:0;outline:none}.forum-message-search button,.forum-search button{background:#0000;border:none;color:#94a3b8;cursor:pointer;display:flex;padding:0}.forum-message-search{background:#fff;border:1px solid #dfe5ec;margin:.65rem 1rem 0;position:relative;z-index:2}.forum-topic-list{flex:1 1;overflow-y:auto}.forum-topic-list>button{background:#fff;border:none;border-bottom:1px solid #edf1f5;cursor:pointer;display:flex;gap:.7rem;padding:1rem 1.15rem;text-align:left;transition:background .18s ease;width:100%}.forum-topic-list>button.active,.forum-topic-list>button:hover{background:#eef6ff}.forum-topic-summary{grid-gap:.2rem;display:grid;flex:1 1;gap:.2rem;grid-template-columns:minmax(0,1fr) auto;min-width:0}.forum-topic-summary strong{color:#1f2937;font-size:.86rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forum-topic-summary time{color:#94a3b8;font-size:.65rem}.forum-topic-summary p{color:#64748b;font-size:.72rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forum-topic-summary>span{align-items:center;background:#007bff;border-radius:999px;color:#fff;display:flex;font-size:.62rem;font-weight:800;justify-content:center;min-width:19px;padding:.15rem .35rem}.forum-author{align-items:center;display:flex;gap:.6rem;min-width:0}.forum-author img{border-radius:50%;height:34px;object-fit:cover;width:34px}.forum-author div{display:flex;flex-direction:column;min-width:0}.forum-author strong{color:#263244;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forum-author span{color:#94a3b8;font-size:.65rem}.forum-author.compact>div{display:none}.forum-avatar-wrap{display:block;flex:0 0 auto;height:34px;position:relative;width:34px}.forum-avatar-wrap i{background:#22c55e;border:2px solid #fff;border-radius:50%;bottom:0;height:10px;position:absolute;right:0;width:10px}.forum-thread{display:flex;flex-direction:column;min-height:0;position:relative}.forum-thread:before{background-image:radial-gradient(circle at 12px 12px,#64748b38 1px,#0000 1.5px),radial-gradient(circle at 34px 28px,#007bff1f 1px,#0000 1.5px),linear-gradient(45deg,#0000 48%,#64748b12 49%,#64748b12 51%,#0000 52%);background-size:46px 46px,46px 46px,92px 92px;content:"";inset:0;opacity:.45;pointer-events:none;position:absolute}.forum-composer,.forum-messages,.forum-thread-header{position:relative;z-index:1}.forum-thread-header{flex:0 0 auto}.forum-thread-title{flex:1 1;min-width:0}.forum-thread-title p{-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#64748b;display:-webkit-box;font-size:.72rem;font-weight:400;line-height:1.35;margin:.2rem 0;max-width:680px;overflow:hidden}.forum-poll-status{align-items:center;display:inline-flex;gap:.3rem}.forum-poll-status:before{background:#22c55e;border-radius:50%;content:"";height:6px;width:6px}.forum-poll-status.offline:before{background:#f59e0b}.forum-thread-tools{display:flex;gap:.2rem}.forum-thread-tools button{background:#0000;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:grid;height:36px;place-items:center;width:36px}.forum-thread-tools button:hover{background:#eef6ff;color:#007bff}.forum-thread-tools button:last-child:hover{background:#fee2e2;color:#dc2626}.forum-mobile-back{display:none!important}.forum-welcome{align-items:center;color:#64748b;display:flex;flex:1 1;flex-direction:column;justify-content:center;position:relative;text-align:center;z-index:1}.forum-welcome svg{color:#007bff;font-size:3rem}.forum-welcome h2{color:#263244;margin:1rem 0 .3rem}.forum-welcome p{margin:0}.forum-messages{display:flex;flex:1 1;flex-direction:column;gap:.7rem;overflow-y:auto;padding:1.5rem clamp(1.25rem,4vw,4rem);scroll-behavior:smooth}.forum-comment,.forum-topic-message{align-self:flex-start;animation:forum-in .2s ease;background:#fff;border:1px solid #cbd5e1a6;border-radius:5px 10px 10px 10px;box-shadow:0 1px 3px #0f172a14;max-width:min(680px,82%);min-width:120px;padding:.65rem .75rem .45rem}.forum-topic-message{border-left:4px solid #007bff;max-width:min(850px,94%);width:100%}.forum-comment.mine:after,.forum-comment:before{background:#fff;border-bottom:1px solid #cbd5e1a6;content:"";height:10px;position:absolute;top:7px;transform:rotate(45deg);width:10px;z-index:0}.forum-comment:before{border-left:1px solid #cbd5e1a6;left:-5px}.forum-comment.mine{align-self:flex-end;background:#dceeff;border-color:#c7e1f8;border-radius:10px 5px 10px 10px}.forum-comment.mine:before{display:none}.forum-comment.mine:after{background:#dceeff;border:1px solid #c7e1f8;border-bottom:none;border-left:none;right:-5px}.forum-comment.mine .forum-author{display:none}.forum-comment.grouped{margin-top:-.45rem}.forum-comment.grouped .forum-author,.forum-comment.grouped:after,.forum-comment.grouped:before{display:none}.forum-comment.pinned{outline:2px solid #f2c94c}.forum-comment.pending{opacity:.72}.forum-topic-message h3{color:#172033;margin:.8rem 0 .4rem}.forum-comment>p,.forum-topic-message p{color:#253247;font-size:.88rem;font-weight:400;line-height:1.5;margin:.4rem 0 .25rem;overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.forum-comment time,.forum-topic-message time{color:#94a3b8;display:block;font-size:.65rem;margin-top:.5rem;text-align:right}.forum-comment footer{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end;min-height:18px}.forum-comment footer time{margin:0}.forum-comment footer span{align-items:center;display:flex;gap:.12rem}.forum-comment footer button{align-items:center;background:#0000;border:none;border-radius:4px;color:#64748b;cursor:pointer;display:inline-flex;font-size:.72rem;justify-content:center;padding:.25rem}.forum-comment footer button:hover{background:#ffffffb3;color:#007bff}.forum-comment footer>span{opacity:0;transition:opacity .18s ease}.forum-comment:hover footer>span{opacity:1}.forum-read{color:#007bff;font-size:.72rem}.forum-date-separator{align-items:center;display:flex;justify-content:center;margin:.35rem 0}.forum-date-separator span{background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;font-size:.68rem;font-weight:700;padding:.35rem .7rem}.forum-quote{background:#ffffff8c;border-left:3px solid #007bff;border-radius:4px;color:#64748b;font-size:.72rem;margin:.25rem 0 .5rem;overflow:hidden;padding:.4rem .55rem;text-overflow:ellipsis;white-space:nowrap}.forum-comment{position:relative}.forum-attachments{grid-gap:.4rem;display:grid;gap:.4rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.55rem;max-width:100%;overflow:hidden}.forum-image-attachment{aspect-ratio:16/10;background:#e2e8f0;border:none;border-radius:5px;cursor:pointer;overflow:hidden;padding:0}.forum-image-attachment img{height:100%;object-fit:cover;width:100%}.forum-video-attachment{border-radius:5px;max-height:260px;width:100%}.forum-document-attachment{align-items:center;background:#ffffffb3;border:1px solid #cbd5e1a6;border-radius:5px;color:#334155;display:flex;gap:.5rem;min-width:0;padding:.65rem;text-decoration:none}.forum-document-attachment span{flex:1 1;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forum-composer{align-items:flex-end;background:#f8fafc;border-top:1px solid #dfe5ec;display:flex;flex-wrap:wrap;gap:.65rem;padding:.8rem 1rem}.forum-composer label{align-items:center;color:#64748b;cursor:pointer;display:flex;font-size:1.25rem;height:42px;justify-content:center;width:42px}.forum-composer label input,.forum-file-picker input{display:none}.forum-composer textarea{border:1px solid #d8e0e8;border-radius:8px;flex:1 1;font:inherit;font-weight:400;max-height:120px;min-height:42px;min-width:150px;padding:.7rem .85rem;resize:vertical}.forum-composer>button{background:#007bff;border:none;border-radius:50%;color:#fff;font-size:1.1rem;height:42px;justify-content:center;width:42px}.forum-composer>button,.forum-new-messages{align-items:center;cursor:pointer;display:flex}.forum-new-messages{background:#fff;border:1px solid #cfe0ef;border-radius:999px;bottom:76px;box-shadow:0 5px 16px #0f172a24;color:#007bff;font-size:.75rem;font-weight:800;left:50%;padding:.55rem .9rem;position:absolute;transform:translateX(-50%);z-index:4}.forum-editing,.forum-selected-files{align-items:center;display:flex;flex:0 0 100%;gap:.4rem;overflow-x:auto}.forum-editing{color:#007bff;font-size:.76rem;justify-content:space-between}.forum-editing div{display:flex;flex-direction:column;gap:.15rem}.forum-editing strong{font-weight:700}.forum-editing span{color:#64748b;font-weight:400}.forum-editing button{background:none;border:none;cursor:pointer}.forum-selected-files span{align-items:center;background:#e8eef5;border-radius:4px;color:#475569;display:flex;flex:0 0 auto;font-size:.7rem;gap:.3rem;max-width:220px;overflow:hidden;padding:.4rem .55rem;text-overflow:ellipsis;white-space:nowrap}.forum-notice{border-radius:5px;font-size:.8rem;font-weight:700;margin:.6rem 1rem 0;padding:.7rem;position:relative;z-index:2}.forum-notice.success{background:#dcfce7;color:#166534}.forum-notice.error{background:#fee2e2;color:#991b1b}.forum-state{color:#64748b;padding:2rem 1rem;text-align:center}.forum-pagination{display:flex;gap:.5rem;justify-content:center;padding:.7rem}.forum-pagination button{background:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.72rem;font-weight:800;padding:.55rem .75rem}.forum-pagination button:disabled{opacity:.4}.forum-modal-overlay,.forum-preview{align-items:center;background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:5000}.forum-modal{grid-gap:1rem;background:#fff;border-radius:8px;display:grid;gap:1rem;max-height:90vh;max-width:650px;overflow-y:auto;padding:1.4rem;width:100%}.forum-modal header{align-items:center;display:flex;justify-content:space-between}.forum-modal h2{color:#172033;margin:0}.forum-modal label{grid-gap:.4rem;color:#334155;display:grid;font-size:.82rem;font-weight:800;gap:.4rem}.forum-modal input,.forum-modal textarea{border:1px solid #cbd5e1;border-radius:6px;font:inherit;font-weight:400;padding:.75rem}.forum-character-count{color:#94a3b8;font-size:.7rem;font-weight:400;text-align:right}.forum-file-picker{align-items:center!important;background:#eef6ff;border-radius:6px;color:#007bff!important;cursor:pointer;display:flex!important;justify-content:center;padding:.8rem}.forum-submit{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:800;padding:.8rem}.forum-info-panel{background:#fff;border-left:1px solid #dfe5ec;min-height:0;overflow-y:auto}.forum-info-panel>header{align-items:center;border-bottom:1px solid #e5eaf0;display:flex;height:78px;justify-content:space-between;padding:0 1rem}.forum-info-panel>header strong{color:#263244;font-size:.9rem}.forum-info-panel>header button{background:#0000;border:none;color:#64748b;cursor:pointer}.forum-room-profile{border-bottom:1px solid #edf1f5;padding:1.5rem 1rem;text-align:center}.forum-room-icon{align-items:center;background:#e8f3ff;border-radius:50%;color:#007bff;display:inline-flex;font-size:1.8rem;height:72px;justify-content:center;width:72px}.forum-room-profile h3{color:#263244;font-size:1rem;margin:.8rem 0 .25rem}.forum-room-profile p{color:#94a3b8;font-size:.72rem;margin:0}.forum-info-panel section{border-bottom:1px solid #edf1f5;padding:1rem}.forum-info-panel h4{align-items:center;color:#475569;display:flex;font-size:.78rem;gap:.4rem;margin:0 0 .8rem}.forum-info-panel h4 span{background:#e8f3ff;border-radius:999px;color:#007bff;font-size:.65rem;margin-left:auto;padding:.15rem .4rem}.forum-member-list{grid-gap:.65rem;display:grid;gap:.65rem}.forum-empty-info{color:#94a3b8;font-size:.72rem;line-height:1.5;margin:0}.forum-info-panel .forum-attachments{grid-template-columns:1fr}.forum-info-panel .forum-image-attachment{aspect-ratio:16/9}.forum-confirm{background:#fff;border-radius:8px;max-width:430px;padding:1.5rem;text-align:center;width:100%}.forum-confirm-icon{align-items:center;background:#fee2e2;border-radius:50%;color:#dc2626;display:inline-flex;font-size:1.5rem;height:54px;justify-content:center;width:54px}.forum-confirm h2{color:#172033;font-size:1.15rem;margin:1rem 0 .5rem}.forum-confirm p{color:#64748b;font-size:.82rem;line-height:1.55;margin:0 0 1.2rem}.forum-confirm>div{display:flex;gap:.6rem;justify-content:center}.forum-confirm button{border:none;border-radius:5px;cursor:pointer;font-weight:800;padding:.7rem 1rem}.forum-confirm button:first-child{background:#eef2f7;color:#334155}.forum-confirm button.danger{background:#dc2626;color:#fff}.forum-preview{z-index:6000}.forum-preview img{max-height:88vh;max-width:92vw;object-fit:contain}.forum-preview button{background:#fff;border:none;border-radius:50%;cursor:pointer;font-size:1.2rem;height:40px;position:fixed;right:1rem;top:1rem;width:40px}@keyframes forum-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (max-width:800px){.forum-page{display:block;height:calc(100vh - 145px);min-height:580px}.forum-sidebar,.forum-thread{height:100%}.forum-page.thread-open .forum-sidebar,.forum-page:not(.thread-open) .forum-thread{display:none}.forum-mobile-back{display:inline-flex!important;flex:0 0 36px}.forum-messages{padding:1rem .7rem}.forum-comment,.forum-topic-message{max-width:88%}.forum-attachments{grid-template-columns:1fr}.forum-info-panel{display:none}.forum-comment footer>span{opacity:1}}@media (min-width:801px) and (max-width:1180px){.forum-page,.forum-page.info-open{grid-template-columns:minmax(280px,320px) minmax(0,1fr)}.forum-info-panel{display:none}}.payment-page{background:#f5f7fa;min-height:calc(100vh - 90px);padding:3rem 1.5rem}.payment-card{background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001a;margin:0 auto;max-width:880px;padding:2.5rem;width:100%}.payment-login-card{align-items:flex-start;display:flex;flex-direction:column;gap:1rem;max-width:560px}.payment-header h1,.payment-login-card h1{color:#1a1a2e;margin:0}.payment-header p,.payment-login-card p{color:#5d6670;line-height:1.6;margin:0}.payment-login-card button,.payment-submit{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:800;padding:.95rem 1.2rem;text-transform:uppercase;transition:background-color .25s ease,transform .25s ease}.payment-login-card button:hover,.payment-submit:hover:not(:disabled){background:#0056b3;transform:translateY(-2px)}.payment-login-card a{color:#007bff;font-weight:800;text-decoration:none}.payment-kicker{color:#007bff;display:inline-block;font-size:.82rem;font-weight:800;letter-spacing:.08em;margin-bottom:.7rem;text-transform:uppercase}.payment-header{margin-bottom:1.5rem}.payment-header h1{font-size:2rem;margin-bottom:.6rem}.payment-methods{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.payment-method{align-items:center;background:#fff;border:1px solid #d7dee8;border-radius:8px;display:flex;height:64px;justify-content:center;padding:.45rem .65rem;width:112px}.payment-method.orange-money{background:#000;border-color:#000}.payment-method.airtel-money{background:#e20712;border-color:#e20712}.payment-method.mpesa{background:#fff}.payment-method img{display:block;max-height:48px;max-width:92px;object-fit:contain}.payment-tabs{grid-gap:.35rem;background:#eef4fb;border-radius:8px;display:grid;gap:.35rem;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1.5rem;padding:.35rem}.payment-tabs button{background:#0000;border:none;border-radius:6px;color:#425466;cursor:pointer;font:inherit;font-weight:800;padding:.75rem .6rem}.payment-tabs button.active{background:#fff;box-shadow:0 2px 8px #00000014;color:#007bff}.payment-tabs button:disabled{cursor:not-allowed;opacity:.45}.payment-blocked-card{background:#f4f8ff;border:1px solid #d8e8fb;border-radius:8px;padding:1.25rem}.payment-blocked-card h2{color:#1a1a2e;font-size:1.2rem;margin:0 0 .45rem}.payment-blocked-card p{color:#5d6670;line-height:1.6;margin:0 0 1rem}.payment-blocked-card button{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:800;padding:.85rem 1rem;transition:background-color .25s ease,transform .25s ease}.payment-blocked-card button:hover{background:#0056b3;transform:translateY(-2px)}.payment-error,.payment-success{border-radius:8px;font-weight:700;line-height:1.5;margin-bottom:1rem;padding:.95rem 1rem}.payment-success{background:#d4edda;color:#155724}.payment-error{background:#f8d7da;color:#721c24}.payment-form{display:flex;flex-direction:column;gap:1.25rem}.payment-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.payment-currency-field,.payment-form label{color:#1f2933;display:flex;flex-direction:column;font-size:.9rem;font-weight:700;gap:.45rem}.payment-currency-toggle{grid-gap:.35rem;background:#eef4fb;border-radius:8px;display:grid;gap:.35rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.35rem}.payment-currency-toggle button{background:#0000;border:none;border-radius:6px;color:#425466;cursor:pointer;font:inherit;font-weight:800;min-height:42px;padding:.65rem .75rem}.payment-currency-toggle button.active{background:#fff;box-shadow:0 2px 8px #00000014;color:#007bff}.payment-form input,.payment-form select,.payment-form textarea{background:#fff;border:1px solid #d7dee8;border-radius:8px;color:#1a1a2e;font:inherit;padding:.85rem .95rem;transition:border-color .25s ease,box-shadow .25s ease}.payment-form textarea{min-height:110px;resize:vertical}.payment-form input:focus,.payment-form select:focus,.payment-form textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff24;outline:none}.payment-form small{color:#6b7684;font-size:.78rem;font-weight:600}.payment-form input[readonly]{background:#f4f8ff;color:#536273}.payment-wide-field{grid-column:1/-1}.payment-submit:disabled{cursor:not-allowed;opacity:.7}.payment-status{grid-gap:1rem;background:#f4f8ff;border:1px solid #d8e8fb;border-radius:8px;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.5rem;padding:1rem}.payment-status div{display:flex;flex-direction:column;gap:.35rem}.payment-status span{color:#5d6670;font-size:.78rem;font-weight:800;text-transform:uppercase}.payment-status strong{color:#1a1a2e;overflow-wrap:anywhere}.payment-status p{color:#425466;grid-column:1/-1;margin:0}@media (max-width:768px){.payment-page{padding:2rem 1rem}.payment-card{padding:1.5rem}.payment-grid,.payment-status,.payment-tabs{grid-template-columns:1fr}.payment-header h1{font-size:1.6rem}}
/*# sourceMappingURL=main.963fd4bd.css.map*/