.vis-carte{background:#fff;border-radius:28px;flex-direction:column;gap:18px;padding:22px;display:flex;box-shadow:0 10px 30px #0e14300f}.vis-tete{align-items:center;gap:18px;display:flex}.vis-tete h2{letter-spacing:-.3px;margin:0 0 4px;font-size:20px;font-weight:800}.vis-tete .esp-texte{font-size:14px}.vis-anneau{--score:0;--couleur:var(--bleu);text-align:center;background:conic-gradient(var(--couleur) calc(var(--score) * 1%), var(--ligne) 0);border-radius:50%;flex-shrink:0;place-content:center;width:104px;height:104px;line-height:1;display:grid;position:relative}.vis-anneau:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:11px}.vis-anneau b,.vis-anneau small{position:relative}.vis-anneau b{letter-spacing:-1px;font-size:32px;font-weight:800}.vis-anneau small{color:var(--gris);margin-top:3px;font-size:12px;font-weight:700}.vis-anneau[data-complet]{--couleur:#14b86a}.vis-etapes{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.vis-etapes a,body.esp .vis-etapes a{background:var(--fond);color:var(--nuit);border-radius:20px;grid-template-columns:38px minmax(0,1fr) auto 16px;align-items:center;gap:12px;padding:10px 14px 10px 10px;text-decoration:none;display:grid}.vis-etapes a:hover{background:var(--bleu-fond);color:var(--nuit)}.vis-rond{border:2px solid var(--bord);width:38px;height:38px;color:var(--gris-clair);background:#fff;border-radius:50%;place-items:center;font-size:13px;font-weight:800;display:grid}.vis-etapes li[data-fait] .vis-rond{color:#fff;background:#14b86a;border-color:#14b86a}.vis-etapes li[data-partiel] .vis-rond{border-color:var(--bleu);color:var(--bleu)}.vis-nom{min-width:0}.vis-nom b{font-size:15px;font-weight:800;display:block}.vis-barre{background:#fff;border-radius:999px;height:6px;margin-top:6px;display:block;overflow:hidden}.vis-barre i{height:100%;width:calc(var(--p,0) * 100%);background:var(--bleu);border-radius:999px;display:block}.vis-etapes li[data-fait] .vis-barre i{background:#14b86a}.vis-points{color:var(--gris);white-space:nowrap;font-size:13px;font-weight:800}.vis-duo{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.vis-mini,body.esp a.vis-mini{color:var(--nuit);background:#fff;border-radius:26px;gap:10px;padding:18px;text-decoration:none;position:relative;overflow:hidden}.vis-mini:hover{color:var(--nuit);box-shadow:0 14px 34px #0e14301a}.vis-mini .esp-rond{width:46px;height:46px}.vis-mini h3{letter-spacing:-.2px;margin:0;font-size:17px;font-weight:800}.vis-mini p{color:var(--gris);overflow-wrap:anywhere;font-size:13px;line-height:1.45}.vis-mini.ferme,body.esp a.vis-mini.ferme{background:var(--nuit);color:#fff}.vis-mini.ferme h3,body.esp a.vis-mini.ferme:hover{color:#fff}.vis-mini.ferme p,body.esp a.vis-mini.ferme p{color:var(--clair)}.vis-mini.ferme .esp-rond{background:var(--jaune)}.cg-etat{color:#fff;background:radial-gradient(120% 140% at 100% 0%, #3b66ff 0%, var(--nuit) 62%);border-radius:28px;flex-direction:column;gap:14px;padding:24px 22px;display:flex;position:relative;overflow:hidden}.cg-etat:after{content:"";opacity:.18;background:#ffc93ce6;border-radius:50%;width:140px;height:140px;position:absolute;top:-34px;right:-34px}.cg-etat h2{letter-spacing:-.5px;margin:0;font-size:26px;font-weight:800;line-height:1.2;position:relative}.cg-etat .esp-pastille{background:var(--jaune);color:var(--nuit);align-self:flex-start;position:relative}.cg-bouton-clair,body.esp button.cg-bouton-clair{color:#fff;height:48px;font:inherit;cursor:pointer;background:0 0;border:1.5px solid #ffffff59;border-radius:999px;font-size:15px;font-weight:800;position:relative}.cg-bouton-clair:hover{background:#ffffff1a}.cg-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.esp-champ input[type=date]{border:1.5px solid var(--bord);width:100%;min-width:0;height:54px;font:inherit;color:var(--nuit);background:#fff;border-radius:999px;padding:0 16px;font-size:16px;font-weight:600}.esp-champ input[type=date]:focus{border-color:var(--bleu);outline:none}.ph-zone{background:linear-gradient(160deg, #fff 0%, var(--bleu-fond) 100%);text-align:center;cursor:pointer;border:2.5px dashed #aab7e8;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:220px;padding:28px 22px;transition:transform .15s,border-color .15s,background .15s;display:flex;position:relative}.ph-zone:hover,.ph-zone[data-survol]{border-color:var(--bleu);background:linear-gradient(160deg,#fff 0%,#d4defe 100%)}.ph-zone[data-survol]{transform:scale(1.015)}.ph-zone input[type=file]{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.ph-zone:focus-within{outline:3px solid var(--bleu);outline-offset:3px}.ph-icone{background:var(--bleu);border-radius:50%;place-items:center;width:72px;height:72px;display:grid;box-shadow:0 12px 26px #2f5bff59}.ph-zone h2{letter-spacing:-.3px;margin:0;font-size:20px;font-weight:800}.ph-zone .esp-texte{max-width:34ch}.ph-glisser{display:none}@media (hover:hover) and (pointer:fine){.ph-glisser{display:block}}.ph-grille{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.ph-vignette{aspect-ratio:1;background:var(--ligne);border-radius:22px;position:relative;overflow:hidden;box-shadow:0 6px 20px #0e143014}.ph-vignette img{object-fit:cover;width:100%;height:100%;display:block}.ph-vignette button{color:#fff;cursor:pointer;background:#0e1430c7;border:0;border-radius:50%;width:36px;height:36px;font-size:18px;line-height:1;position:absolute;top:6px;right:6px}.ph-vignette small{color:#fff;background:#0e1430c7;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700;position:absolute;bottom:6px;left:6px}.ph-vignette[data-erreur]{outline:3px solid #d63a3a}.ph-actions{flex-direction:column;gap:10px;display:flex}@media (width>=1024px){.esp-main.accueil>.vis-carte{order:7;grid-column:span 8;align-self:stretch;padding:26px}.esp-main.accueil>.vis-duo{order:8;grid-column:span 4;grid-template-columns:minmax(0,1fr);grid-auto-rows:1fr;align-self:stretch}.vis-etapes{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.vis-etapes li:last-child:nth-child(odd){grid-column:1/-1}.vis-anneau{width:124px;height:124px}.vis-anneau b{font-size:38px}.ph-zone{min-height:280px}}@media (width<=420px){.esp-champ input[type=date]{padding:0 10px;font-size:15px}}@media (width<=380px){.cg-dates{grid-template-columns:minmax(0,1fr)}}
