:root{--bordeaux: #862A36;--bordeaux-fonce: #5E1C26;--noir: #211112;--fond: #F7F4F2;--carte: #FFFFFF;--bord: #E6DDD7;--bord2: #D9CEC8;--gris: #6B5853;--gris2: #4A3A36;--ligne: #EFE8E4}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Montserrat,system-ui,sans-serif;color:var(--noir);background:var(--fond);font-size:14px}a{color:var(--bordeaux)}a:hover{color:var(--bordeaux-fonce)}h1{margin:0;font-size:28px;font-weight:700}h2{margin:0;font-size:16px;font-weight:700}.app{display:flex;min-height:100vh}.nav{width:240px;flex:0 0 240px;background:var(--noir);color:#f3ece8;padding:24px 16px;display:flex;flex-direction:column;gap:22px;position:sticky;top:0;height:100vh}.nav .logo{padding:0 10px}.nav .logo b{display:block;font-size:20px;letter-spacing:3px}.nav .logo small{font-size:10px;letter-spacing:2px;color:#b8a49b;text-transform:uppercase}.nav a{display:block;text-decoration:none;color:#d8cbc5;font-weight:500;padding:10px 14px;border-radius:8px}.nav a.actif{background:var(--bordeaux);color:#fff;font-weight:600}.nav .moi{margin-top:auto;border-top:1px solid #3A2326;padding:12px 10px 0;font-size:12px;color:#b8a49b;display:flex;flex-direction:column;gap:8px}.nav .moi b{color:#f3ece8;font-size:13px}.badge-invite{background:#fbf0c8;color:var(--noir);border-radius:6px;padding:5px 8px;font-weight:600;font-size:11px}.nav .burger{display:none}main.page{flex:1;min-width:0;padding:28px 36px;display:flex;flex-direction:column;gap:18px}.entete{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}.sous{font-size:13px;color:var(--gris)}.barre{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.btn{font-family:inherit;font-size:14px;font-weight:600;min-height:42px;padding:0 16px;border-radius:8px;border:1px solid var(--bord2);background:#fff;color:var(--noir);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.btn:hover{border-color:var(--gris)}.btn.plein{background:var(--bordeaux);border-color:var(--bordeaux);color:#fff}.btn.noir{background:var(--noir);border-color:var(--noir);color:#fff}.btn.petit{min-height:34px;padding:0 10px;font-size:12px}.btn:disabled{opacity:.5;cursor:default}.puce{font-family:inherit;font-size:13px;font-weight:600;min-height:40px;padding:0 14px;border-radius:22px;border:1px solid var(--bord2);background:#fff;color:var(--noir);cursor:pointer}.puce.on{background:var(--noir);border-color:var(--noir);color:#fff}.carte{background:var(--carte);border:1px solid var(--bord);border-radius:12px;padding:18px}.carte.sans-padding{padding:0;overflow:hidden}.grille{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.kpi .l{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--gris)}.kpi .v{font-size:26px;font-weight:700;margin-top:4px}.kpi .s{font-size:12px;color:var(--gris);margin-top:2px}.champ{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--gris)}.champ input,.champ select,.champ textarea{font-family:inherit;font-size:14px;min-height:42px;padding:0 12px;border:1px solid var(--bord2);border-radius:8px;background:#fff;color:var(--noir)}.champ textarea{padding:10px 12px;min-height:80px;resize:vertical}.form-grille{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.table-box{background:#fff;border:1px solid var(--bord);border-radius:12px;overflow-x:auto}table.t{width:100%;border-collapse:collapse;font-size:13px;min-width:760px}table.t th{text-align:left;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--gris);padding:12px;border-bottom:1px solid var(--bord);background:#fff;position:sticky;top:0}table.t td{padding:10px 12px;border-bottom:1px solid #fff;vertical-align:top}table.t tr.clic{cursor:pointer}table.t tr.clic:hover td{filter:brightness(.97)}.nom{font-weight:600}.petit-gris{font-size:12px;color:var(--gris2)}.gras{font-weight:700}.legende{display:flex;flex-wrap:wrap;gap:6px;font-size:12px;font-weight:600}.legende span{padding:4px 9px;border-radius:6px;border:1px solid var(--bord)}.message{border-radius:8px;padding:10px 12px;font-size:13px}.message.ok{background:#ddeedc;color:#244c2c}.message.erreur{background:#fbe4e6;color:var(--bordeaux-fonce)}.message.info{background:#fbf0c8;color:var(--noir)}.deux-col{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-start}.deux-col>.gauche{flex:3 1 440px;min-width:0;display:flex;flex-direction:column;gap:18px}.deux-col>.droite{flex:2 1 320px;min-width:0}.panneau-titre{background:var(--bordeaux);color:#fff;padding:12px 18px;font-weight:700}.panneau-corps{padding:18px;display:flex;flex-direction:column;gap:12px}.ligne-journal{display:flex;gap:14px;padding:10px 0;border-top:1px solid var(--ligne)}.ligne-journal .d{min-width:90px;font-size:12px;color:var(--gris)}.tag{font-size:11px;font-weight:600;padding:3px 8px;border-radius:12px;background:#efe8e4;color:var(--gris2)}.etapes{display:grid;gap:10px;grid-template-columns:repeat(7,minmax(140px,1fr));min-width:1040px}.col-etape{background:var(--fond);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:220px}.col-etape .t{display:flex;justify-content:space-between;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--bordeaux)}.fiche-cand{text-decoration:none;border-radius:6px;padding:8px;display:flex;flex-direction:column;gap:2px;color:var(--noir)}.connexion{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--noir);padding:20px}.connexion .carte{width:100%;max-width:420px;display:flex;flex-direction:column;gap:14px}@media (max-width: 860px){.app{flex-direction:column}.nav{width:100%;flex:none;height:auto;position:relative;padding:14px 16px;gap:10px}.nav .liens{display:none}.nav.ouvert .liens{display:block}.nav .burger{display:inline-flex;position:absolute;right:16px;top:14px}.nav .moi{display:none}main.page{padding:18px 16px}}.document-pdf{background:#fff;color:#211112;max-width:794px;width:100%;margin:0 auto;padding:40px 48px;border:1px solid var(--bord);box-shadow:0 2px 10px #21111214;font-family:Montserrat,sans-serif}@media (max-width: 860px){.document-pdf{padding:20px 16px}}@media print{@page{size:A4;margin:12mm}body{background:#fff}.nav,.pas-imprime{display:none!important}main.page{padding:0}.document-pdf{border:0;box-shadow:none;padding:0;max-width:none}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
