/* Feuille de widget « xa-art » — extraite des recettes de contenu (lot B, chantier 6) par
   tools/styles-check/extraire-styles-recettes.py ; valeurs = jetons de sk-tokens.css. */
/* Artisans (04/10/2026) — même charte que Repas ; carte à droite (en haut sur mobile) */
.xa-corps{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:1.2rem;align-items:start}
.xa-carte{height:calc(100vh - 200px);min-height:420px;border-radius:var(--sk-radius-lg);overflow:hidden;border:1px solid var(--xp-trait);position:sticky;top:90px;background:var(--sk-bg)}
@media(max-width:1000px){.xa-corps{grid-template-columns:minmax(0,1fr)}.xa-carte{position:relative;top:0;height:38vh;min-height:240px;order:-1}}
.xa-art{background:var(--sk-surface);border:1px solid var(--xp-trait);border-radius:var(--sk-radius-lg);overflow:hidden;cursor:pointer;transition:transform .15s,box-shadow .15s;display:flex;flex-direction:column}
.xa-art:hover,.xa-art:focus{transform:translateY(-2px);box-shadow:0 10px 24px rgba(14,14,40,.08);outline:0}
.xa-art .img{height:130px;background:var(--sk-bg) center/cover no-repeat;position:relative}
.xa-art .badge{position:absolute;left:.6rem;top:.6rem;color:var(--sk-on-primary);font-size:.72rem;font-weight:700;border-radius:var(--sk-radius-pill);padding:.2rem .6rem;display:inline-flex;gap:.3rem;align-items:center;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.xa-art .corps{padding:.75rem .85rem;display:flex;flex-direction:column;gap:.3rem}
.xa-art h3{font-size:1rem;margin:0;font-weight:700;color:var(--xp-encre)}
.xa-art .meta{font-size:.82rem;color:var(--xp-gris);display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}
.xa-art .note{color:var(--sk-warning);font-weight:700}
.xa-art .metiers{display:flex;gap:.3rem;flex-wrap:wrap}
.xa-art .metiers span{font-size:.72rem;background:var(--xp-fond);border:1px solid var(--xp-trait);border-radius:var(--sk-radius-pill);padding:.1rem .5rem;color:var(--xp-encre)}
.xa-art .prix{font-weight:700;color:var(--xp-encre);font-size:.9rem;margin-top:.15rem}
.xa-fiche .tete{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin:.6rem 0 1rem}
.xa-fiche .tete .logo{width:72px;height:72px;border-radius:var(--sk-radius-lg);background:var(--sk-bg) center/cover no-repeat;flex:0 0 72px}
.xa-fiche h2{margin:0;font-size:1.4rem;font-weight:800}
.xa-service{display:flex;gap:.8rem;align-items:center;justify-content:space-between;background:var(--sk-surface);border:1px solid var(--xp-trait);border-radius:var(--sk-radius);padding:.75rem .9rem;margin-bottom:.6rem}
.xa-service h4{margin:0 0 .2rem;font-size:.95rem}
.xa-service .s{font-size:.8rem;color:var(--xp-gris)}
.xa-service a{flex:0 0 auto}
.xa-niv{border:1px solid var(--xp-trait);border-radius:var(--sk-radius-pill);background:var(--sk-surface);padding:.45rem .8rem;font:inherit;font-size:.88rem}
#xp-artisans .xp-cuisine .ico{color:var(--sk-c-violet-1)}
#xp-artisans .xp-cuisine.actif .ico{background:var(--sk-bg);border-color:var(--sk-c-violet-1)}
.xa-etoiles{color:var(--sk-accent);letter-spacing:.05rem;font-size:.95rem}
.xa-etoiles .vide{color:var(--sk-border-strong)}
.xa-avis{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--xp-encre)}
.xa-avis b{font-weight:800}.xa-avis small{color:var(--xp-gris)}
.xa-conf{display:flex;align-items:center;gap:.45rem;font-size:.8rem;font-weight:700;padding:.35rem .55rem;border-radius:var(--sk-radius-sm);background:var(--xp-fond);flex-wrap:wrap}
.xa-conf .boucliers{display:inline-flex;gap:2px}.xa-conf .boucliers i{font-size:.82rem}
.xa-conf .boucliers i.off{color:var(--sk-border-strong)!important}
.xa-pin{background:none;border:0}.xa-pin div{width:30px;height:30px;border-radius:var(--sk-radius-round);color:var(--sk-on-primary);display:flex;align-items:center;justify-content:center;border:2px solid var(--sk-surface);box-shadow:0 2px 8px rgba(0,0,0,.3);font-size:.78rem}
.xa-carte .map{width:100%;height:100%}
.xa-art .img .badge{font-size:.78rem;padding:.25rem .7rem}
.xa-art.hi{box-shadow:0 0 0 3px var(--sk-c-violet-1),0 10px 24px rgba(124,58,237,.25);transform:translateY(-2px)}
.xa-zone{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--xp-gris);margin:.2rem 0 .6rem}
.xa-zone button{border:1px solid var(--xp-trait);background:var(--sk-surface);border-radius:var(--sk-radius-pill);padding:.2rem .7rem;font:inherit;font-size:.8rem;cursor:pointer}
.xa-pin.actif div{transform:scale(1.25);box-shadow:0 0 0 4px rgba(124,58,237,.35)}
.xa-dispo:empty{display:none}.xa-dispo{margin:.1rem 0}
