/* Visite guidée d'accueil, checklist de démarrage et états vides. Aucun script externe. */
.ob-shield{position:fixed;inset:0;z-index:9000;background:transparent}
.ob-spot{position:fixed;z-index:9001;border-radius:12px;pointer-events:none;box-shadow:0 0 0 9999px rgba(4,6,10,.78),0 0 0 2px var(--accent,#4169e1);transition:top .22s ease,left .22s ease,width .22s ease,height .22s ease}
.ob-spot.ob-plein{top:50%;left:50%;width:0;height:0;border-radius:0;box-shadow:0 0 0 9999px rgba(4,6,10,.78)}
.ob-bulle{position:fixed;z-index:9002;width:min(360px,calc(100vw - 24px));background:var(--panel2,#15181e);color:var(--text,#eef1f6);border:1px solid var(--line,#1f232b);border-radius:14px;padding:18px 18px 14px;box-shadow:0 18px 50px rgba(0,0,0,.55);font:14px/1.5 var(--font-ui,system-ui,sans-serif)}
.ob-bulle.ob-centre{top:50%;left:50%;transform:translate(-50%,-50%)}
.ob-etape{margin:0 0 4px;color:var(--muted,#7c8494);font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.ob-bulle h2{margin:0 0 6px;font-size:17px;line-height:1.3}
.ob-bulle p.ob-texte{margin:0 0 14px;color:#cfd6e4}
.ob-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ob-actions .ob-espace{flex:1}
.ob-bulle button{font:inherit;font-weight:650;border-radius:9px;padding:8px 14px;cursor:pointer;border:1px solid var(--line,#1f232b);background:var(--panel,#101216);color:var(--text,#eef1f6)}
.ob-bulle button:hover{background:var(--accent-soft,rgba(65,105,225,.15))}
.ob-bulle button.ob-principal{background:var(--accent,#4169e1);border-color:var(--accent,#4169e1);color:#fff}
.ob-bulle button.ob-principal:hover{background:var(--accent-hover,#5b7fe8)}
.ob-bulle button.ob-lien{border:0;background:transparent;color:var(--muted,#7c8494);padding:8px 4px;font-weight:600}
.ob-bulle button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.ob-points{display:flex;gap:5px;margin:0 0 12px}
.ob-points i{width:7px;height:7px;border-radius:50%;background:var(--line,#1f232b)}
.ob-points i.ob-fait{background:var(--accent,#4169e1)}

.ob-check{height:auto;position:fixed;right:16px;bottom:60px;z-index:60;width:min(340px,calc(100vw - 32px));background:var(--panel2,#15181e);color:var(--text,#eef1f6);border:1px solid var(--line,#1f232b);border-radius:14px;box-shadow:0 12px 36px rgba(0,0,0,.45);font:13.5px/1.45 var(--font-ui,system-ui,sans-serif);overflow:hidden}
.ob-check[hidden]{display:none}
.ob-check .ob-tete{display:flex;align-items:center;gap:8px;padding:11px 12px 11px 14px;cursor:pointer}
.ob-check .ob-tete b{flex:1;font-size:14px}
.ob-check .ob-tete button{background:transparent;border:0;color:var(--muted,#7c8494);cursor:pointer;font-size:16px;line-height:1;padding:4px 6px;border-radius:6px}
.ob-check .ob-tete button:hover,.ob-check .ob-tete button:focus-visible{color:var(--text,#eef1f6);background:var(--panel,#101216);outline:none}
.ob-barre{height:3px;background:var(--line,#1f232b)}
.ob-barre i{display:block;height:100%;background:var(--win,#3fd08a);transition:width .3s ease}
.ob-check ul{list-style:none;margin:0;padding:8px 10px 10px}
.ob-check li{display:flex;align-items:center;gap:9px;padding:6px 6px;border-radius:8px}
.ob-check li .ob-case{flex:none;width:18px;height:18px;border-radius:50%;border:2px solid var(--line,#2a3140);display:grid;place-items:center;font-size:11px;color:#06130c}
.ob-check li.ob-ok .ob-case{background:var(--win,#3fd08a);border-color:var(--win,#3fd08a)}
.ob-check li.ob-ok span.ob-libelle{color:var(--muted,#7c8494);text-decoration:line-through}
.ob-check li span.ob-libelle{flex:1}
.ob-check li button{background:transparent;border:1px solid var(--line,#1f232b);color:var(--text,#eef1f6);border-radius:7px;padding:3px 9px;font:inherit;font-size:12px;cursor:pointer}
.ob-check li button:hover,.ob-check li button:focus-visible{background:var(--accent-soft,rgba(65,105,225,.15));outline:none}
.ob-check .ob-pied{display:flex;gap:8px;padding:0 12px 12px}
.ob-check .ob-pied button{flex:1;background:var(--panel,#101216);border:1px solid var(--line,#1f232b);color:var(--text,#eef1f6);border-radius:8px;padding:7px;font:inherit;font-size:12.5px;cursor:pointer}
.ob-check .ob-pied button:hover{background:var(--accent-soft,rgba(65,105,225,.15))}
.ob-check.ob-replie ul,.ob-check.ob-replie .ob-pied{display:none}

.etat-vide{grid-column:1/-1;display:grid;gap:8px;justify-items:start;padding:22px;border:1px dashed var(--line,#2a3140);border-radius:14px;background:var(--panel,#101216);max-width:640px}
.etat-vide b{font-size:16px}
.etat-vide p{margin:0;color:#b7c0d1}
.etat-vide-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.etat-vide-actions a,.etat-vide-actions button{display:inline-flex;align-items:center;text-decoration:none;font:inherit;font-weight:650;border-radius:9px;padding:9px 14px;cursor:pointer;border:1px solid var(--line,#1f232b);background:var(--panel2,#15181e);color:var(--text,#eef1f6)}
.etat-vide-actions .primary{background:var(--accent,#4169e1);border-color:var(--accent,#4169e1);color:#fff}
.equipe-rejoindre{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
.equipe-rejoindre input{flex:1;min-width:220px;padding:9px 11px;border-radius:9px;border:1px solid var(--line,#1f232b);background:var(--panel,#101216);color:var(--text,#eef1f6);font:inherit}
.equipe-rejoindre small{flex-basis:100%;color:var(--error,#ef5f6b)}
@media (prefers-reduced-motion:reduce){.ob-spot,.ob-barre i{transition:none}}
