:root,:root[data-theme=sombre]{--fond-app: #161512;--fond-barre: #21201d;--fond-zone: #2a2825;--fond-carte: #34322e;--texte: #ececec;--texte-attenue: #a0988c;--accent: #7fa650;--accent-fort: #9dc84f;--bordure: #3d3a35;--lien-actif-fond: #3d4a2a}:root[data-theme=clair]{--fond-app: #f4f2ee;--fond-barre: #ffffff;--fond-zone: #ffffff;--fond-carte: #f0eee9;--texte: #2a2825;--texte-attenue: #6b6355;--accent: #5d8a3a;--accent-fort: #4a7a2c;--bordure: #dcd8d0;--lien-actif-fond: #e4edd6}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--fond-app);color:var(--texte)}.shell{display:flex;min-height:100vh}.barre-laterale{display:flex;flex-direction:column;width:240px;padding:20px 14px;background:var(--fond-barre);border-right:1px solid var(--bordure)}.marque{font-size:22px;font-weight:700;color:var(--accent-fort);padding:6px 10px 20px;letter-spacing:.5px}.navigation{display:flex;flex-direction:column;gap:4px;flex:1}.lien-nav{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:8px;color:var(--texte-attenue);text-decoration:none;font-weight:600;font-size:15px;transition:background .15s,color .15s}.lien-nav:hover{background:var(--fond-zone);color:var(--texte)}.lien-nav.actif{background:var(--lien-actif-fond);color:var(--accent-fort)}.lien-nav .icone{font-size:18px;width:22px;text-align:center}.bouton-theme{margin-top:12px;padding:10px 12px;border:1px solid var(--bordure);border-radius:8px;background:var(--fond-zone);color:var(--texte);font-weight:600;font-size:14px;cursor:pointer;transition:border-color .15s}.identite-invite{margin-top:auto;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--bordure);border-radius:8px;background:var(--fond-zone)}.identite-libelle{font-size:12px;color:var(--texte-attenue)}.identite-pseudo{font-size:15px;font-weight:700;color:var(--accent-fort)}.identite-etat{font-size:13px;color:var(--texte-attenue)}.bouton-theme:hover{border-color:var(--accent)}.zone-principale{flex:1;padding:40px 48px;background:var(--fond-zone);overflow-y:auto}.surface h1{margin:0 0 8px;font-size:30px}.description{color:var(--texte-attenue);font-size:16px;margin:0 0 24px}.carte-placeholder{padding:28px;border:1px dashed var(--bordure);border-radius:12px;background:var(--fond-carte);color:var(--texte-attenue);font-style:italic}
