:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;display:flex;justify-content:center;align-items:center;min-height:100vh}#root{width:100%;max-width:1280px;margin:10px;padding:2rem;box-sizing:border-box;background-color:transparent}.matrix-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}.header{display:flex;justify-content:space-between;align-items:center;padding:12px;background-color:#ffffff50;color:#0f0;font-family:Courier New,Courier,monospace;border-radius:20px}.header .header-content{display:flex;justify-content:space-between;width:100%;align-items:center;padding:13px 50px}.header .header-content .header-left{display:flex;flex-direction:column;align-items:flex-start}.header .header-content .header-left h1{font-size:1.5rem;margin:0}.header .header-content .header-left h2{font-size:1rem;margin:0}.header .header-content .header-left .header__welcome{margin-top:.5rem;font-family:Arial,sans-serif;font-size:1rem}.header .header-content nav ul{list-style:none;display:flex;gap:1.5rem}@media (max-width: 768px){.header .header-content nav ul{flex-direction:column;align-items:flex-end;gap:12px}}.header .header-content nav ul li a,.header .header-content nav ul li .header__logout{color:#0f0;text-decoration:none;font-weight:700;font-size:1rem;transition:text-shadow .3s ease}.header .header-content nav ul li a:hover,.header .header-content nav ul li .header__logout:hover{text-shadow:0 0 10px lime}.header__logo{width:175px;height:150px;border-radius:50%;object-fit:cover;margin:15px 15px 15px 70px}@media (max-width: 480px){.header__logo{display:none}}.footer{background-color:#000;color:#00ff41;text-align:center;padding:20px;font-family:Courier New,monospace}.footer a{color:#00ff41;text-decoration:none}.footer a:hover{text-shadow:0 0 10px #00ff41}.home{display:flex;flex-direction:column;align-items:center;padding:24px}.home h1{margin-bottom:32px;font-size:1.5rem;color:#0f0;text-shadow:0 0 10px lime}.home p{margin-bottom:16px;font-size:1rem;color:#9f9}.home .filters{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}.home .filters select,.home .filters button{background-color:#000;color:#ffffff50;border:2px solid lime;border-radius:6px;cursor:pointer;font-weight:700;text-transform:uppercase;font-family:Arial,sans-serif;transition:background-color .3s,box-shadow .3s,color .3s;width:auto;padding:6px 12px;margin:0;text-transform:none}.home .filters select:hover,.home .filters button:hover{background-color:#6f6;color:#000;box-shadow:0 0 15px #0f0,0 0 30px #0f0}.home .filters select:active,.home .filters button:active{background-color:#0c0;box-shadow:0 0 10px #0f0}.home .filters select:hover,.home .filters button:hover{box-shadow:0 0 10px #6f6}.home .projects{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:32px}.home .projects .preview-card{width:30%;margin-bottom:16px;background-color:#ffffff50;border-radius:6px;overflow:hidden;box-shadow:0 0 10px #0f03}.home .projects .preview-card:hover{transform:scale(1.02);transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 0 20px #0f0}@media (max-width: 768px){.home .projects .preview-card{width:45%}}@media (max-width: 480px){.home .projects .preview-card{width:90%}}.contact{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;max-width:800px;margin:16px auto;padding:24px;background-color:#ffffff50;color:#0f0;font-family:Courier New,Courier,monospace}.contact__buttons{display:flex;justify-content:center;margin-bottom:16px}.contact__buttons .contact__button{margin:0 6px;background-color:#000;color:#ffffff50;border:2px solid lime;padding:12px;border-radius:6px;cursor:pointer;font-weight:700;text-transform:uppercase;font-family:Arial,sans-serif;transition:background-color .3s,box-shadow .3s,color .3s}.contact__buttons .contact__button:hover{background-color:#6f6;color:#000;box-shadow:0 0 15px #0f0,0 0 30px #0f0}.contact__buttons .contact__button:active{background-color:#0c0;box-shadow:0 0 10px #0f0}.contact__buttons .contact__button.active{text-shadow:0 0 10px lime}.contact__textarea,.contact__form{width:100%;max-width:600px}.contact__textarea textarea,.contact__textarea input,.contact__textarea select,.contact__form textarea,.contact__form input,.contact__form select{width:100%;padding:12px;margin-bottom:12px;border:2px solid lime;background-color:transparent;color:#0f0;border-radius:6px;outline:none;font-family:Courier New,Courier,monospace;font-size:1rem}.contact__textarea textarea::placeholder,.contact__textarea input::placeholder,.contact__textarea select::placeholder,.contact__form textarea::placeholder,.contact__form input::placeholder,.contact__form select::placeholder{color:#9f9}.contact__textarea textarea:focus,.contact__textarea input:focus,.contact__textarea select:focus,.contact__form textarea:focus,.contact__form input:focus,.contact__form select:focus{box-shadow:0 0 10px #0f0}.contact__send{background-color:#000;color:#ffffff50;border:2px solid lime;padding:12px;border-radius:6px;cursor:pointer;font-weight:700;text-transform:uppercase;font-family:Arial,sans-serif;transition:background-color .3s,box-shadow .3s,color .3s}.contact__send:hover{background-color:#6f6;color:#000;box-shadow:0 0 15px #0f0,0 0 30px #0f0}.contact__send:active{background-color:#0c0;box-shadow:0 0 10px #0f0}@media (max-width: 1024px){.contact{max-width:90%}}@media (max-width: 768px){.contact{padding:12px}}@media (max-width: 480px){.contact__buttons{flex-direction:column}.contact__buttons .contact__button{margin:12px 0}}.authentication{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;margin:10px auto;max-width:500px;background-color:#000c;border-radius:8px;box-shadow:0 4px 10px #0000004d;color:#0f0}.authentication h2{margin-bottom:20px;color:#0f0;font-size:1.8rem;text-align:center}.authentication form{display:flex;flex-direction:column;gap:15px;width:100%}.authentication form input{padding:10px;font-size:1rem;border:1px solid lime;border-radius:5px;background-color:#1a1a1a;color:#0f0}.authentication form input:focus{outline:none;box-shadow:0 0 5px #0f0}.authentication form button{padding:10px;font-size:1.1rem;font-weight:700;color:#fff;background-color:#0f0;border:none;border-radius:5px;cursor:pointer;transition:all .3s ease}.authentication form button:hover{background-color:#0c0;box-shadow:0 0 10px #0f0}.authentication .error{color:red;font-size:.9rem;text-align:center}.projets{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;max-width:800px;margin:16px auto;padding:24px;background-color:#ffffff50;color:#0f0;font-family:Courier New,Courier,monospace}.projets h2{margin-bottom:16px;font-size:1.5rem}.projets form{width:100%;max-width:600px}.projets form input,.projets form textarea,.projets form select{width:100%;padding:12px;margin-bottom:12px;border:2px solid lime;background-color:transparent;color:#0f0;border-radius:6px;outline:none;font-family:Courier New,Courier,monospace;font-size:1rem}.projets form input::placeholder,.projets form textarea::placeholder,.projets form select::placeholder{color:#9f9}.projets form input:focus,.projets form textarea:focus,.projets form select:focus{box-shadow:0 0 10px #0f0}.projets form button{background-color:#000;color:#ffffff50;border:2px solid lime;padding:12px;border-radius:6px;cursor:pointer;font-weight:700;text-transform:uppercase;font-family:Arial,sans-serif;transition:background-color .3s,box-shadow .3s,color .3s}.projets form button:hover{background-color:#6f6;color:#000;box-shadow:0 0 15px #0f0,0 0 30px #0f0}.projets form button:active{background-color:#0c0;box-shadow:0 0 10px #0f0}
