/* Stagyy app v2.6 : finitions « premium » (moments de réussite, choix de recherche, étoiles du profil, point de la semaine,
   avis, partage du CV, fiche entreprise). Mêmes variables que app.css ; mode sombre et mouvement réduit gérés. */

/* ---------- moments de réussite (le « ding ») ---------- */
#moments{position:fixed;left:0;right:0;bottom:84px;z-index:310;display:grid;justify-items:center;gap:10px;padding:0 16px;pointer-events:none}
.moment{display:flex;align-items:center;gap:14px;max-width:min(440px,100%);background:var(--surface);color:var(--text);border:2px solid var(--edge);border-radius:22px;padding:12px 20px 12px 12px;box-shadow:5px 5px 0 var(--sun),5px 5px 0 2px var(--edge);animation:moment-in .55s cubic-bezier(.2,1.25,.4,1) both;transition:opacity .35s,transform .35s}
.moment.out{opacity:0;transform:translateY(10px) scale(.97)}
.moment-ic{width:46px;height:46px;flex:none;border-radius:50%;background:var(--soft);display:grid;place-items:center}
.moment-ic svg{width:34px;height:34px}
.moment .bell-body{transform-origin:24px 12px;animation:bell-ring 1.1s .35s ease-out 1 both}
.moment-tx{display:grid;gap:2px;min-width:0}
.moment-tx b{font:800 17px/1.2 var(--display);font-variation-settings:"wdth" 88;letter-spacing:-.01em}
.moment-tx span{font-size:14px;color:var(--muted)}
.moment.still,.moment.still .bell-body{animation:none}
@keyframes moment-in{from{opacity:0;transform:translateY(26px) scale(.92)}to{opacity:1;transform:none}}
@keyframes bell-ring{0%{transform:rotate(0)}18%{transform:rotate(14deg)}36%{transform:rotate(-11deg)}54%{transform:rotate(7deg)}72%{transform:rotate(-4deg)}100%{transform:rotate(0)}}
@media (max-width:900px){#moments{bottom:150px}}

/* ---------- choix « je cherche » ---------- */
.seek-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.seek{position:relative;display:block}
.seek input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer;z-index:1}
.seek-in{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"ic t" "ic s";column-gap:12px;align-items:center;height:100%;padding:14px 16px;border:2px solid var(--line);border-radius:18px;background:var(--surface);transition:border-color .15s,box-shadow .15s,transform .15s}
.seek-ic{grid-area:ic;width:42px;height:42px;border-radius:14px;background:var(--soft);display:grid;place-items:center;color:var(--cobalt)}
.seek-ic svg{width:22px;height:22px}
.seek-in b{grid-area:t;font:800 17px/1.15 var(--display);font-variation-settings:"wdth" 88}
.seek-in span:last-child{grid-area:s;font-size:13.5px;color:var(--muted)}
.seek:hover .seek-in{border-color:var(--muted)}
.seek input:checked+.seek-in{border-color:var(--edge);background:var(--sun);color:#0F1A3A;box-shadow:4px 4px 0 var(--edge);transform:translate(-1px,-1px)}
.seek input:checked+.seek-in .seek-ic{background:#fff;color:#0F1A3A}
.seek input:checked+.seek-in span:last-child{color:#2B3556}
.seek input:focus-visible+.seek-in{outline:3px solid var(--cobalt);outline-offset:3px}
fieldset.field{border:0;padding:0;margin:0;min-width:0}
fieldset.field>legend{padding:0 0 6px}

/* ---------- accueil personnalisé ---------- */
.checkin .ck-head{display:flex;gap:16px;align-items:center}
.ck-bell{width:60px;height:60px;flex:none;border-radius:20px;background:var(--soft);display:grid;place-items:center;border:2px solid var(--edge);box-shadow:3px 3px 0 var(--sun)}
.ck-bell svg{width:40px;height:40px}
.checkin h2{font-size:26px}

/* ---------- inscription et coordonnées ---------- */
.phone-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:10px}
.dial{text-overflow:ellipsis}
.contact-block{gap:14px}
.su-ref{display:flex;gap:10px;align-items:flex-start}
.su-ref svg{width:20px;height:20px;flex:none;margin-top:1px}
.ts-box{min-height:0}
.ts-box:not(:empty){min-height:65px}

/* ---------- étoiles du profil ---------- */
.stars.lux{gap:6px}
.stars.lux svg{width:30px;height:30px;stroke:var(--line);stroke-width:1.2;fill:var(--soft);transition:fill .2s}
.stars.lux svg.on{fill:var(--sun);stroke:#0F1A3A;stroke-width:1.6;filter:drop-shadow(0 2px 0 rgba(15,26,58,.18))}
.stars-card{position:relative;overflow:hidden}
.stars-card.gold{border:2px solid var(--edge);background:linear-gradient(135deg,color-mix(in srgb,var(--sun) 32%,var(--surface)) 0,var(--surface) 62%);box-shadow:6px 6px 0 var(--sun),6px 6px 0 2px var(--edge)}
.stars-card.gold .stars.lux svg.on{animation:star-pop .5s both}
.stars-card.gold .stars.lux svg.on:nth-child(2){animation-delay:.07s}.stars-card.gold .stars.lux svg.on:nth-child(3){animation-delay:.14s}
.stars-card.gold .stars.lux svg.on:nth-child(4){animation-delay:.21s}.stars-card.gold .stars.lux svg.on:nth-child(5){animation-delay:.28s}
@keyframes star-pop{0%{transform:scale(.4) rotate(-20deg);opacity:0}70%{transform:scale(1.22) rotate(6deg)}100%{transform:none;opacity:1}}

/* ---------- le point de la semaine ---------- */
.weekly h3{font-size:17px}
.wk-row{cursor:default;flex-wrap:wrap}
.wk-main{display:flex;flex:1;min-width:0;align-items:center;gap:12px;background:none;border:0;padding:0;text-align:left;cursor:pointer;color:inherit}
.wk-main:hover b{text-decoration:underline}
.wk-row .grow{flex:1;min-width:0}
.wk-row .grow span{display:block}
.cal-btn svg{width:16px;height:16px}
.digest-switch{padding:12px 14px;border:1.5px solid var(--line);border-radius:16px;background:var(--soft)}
.link-btn.inline{padding:0}

/* ---------- avis ---------- */
.review-nudge .btn{background:#0F1A3A;color:#fff;border-color:#0F1A3A;box-shadow:3px 3px 0 #fff}
.review-nudge .link-btn{color:#0F1A3A}
.rating{display:flex;gap:6px;border:0;margin:0;padding:0;min-width:0}
.rating-star{position:relative;display:block;cursor:pointer;border-radius:10px}
.rating-star input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.rating-star svg{width:42px;height:42px;fill:var(--soft);stroke:var(--line);stroke-width:1.3;transition:transform .12s,fill .15s}
.rating-star.on svg{fill:var(--sun);stroke:#0F1A3A;stroke-width:1.6}
.rating-star:hover svg{transform:scale(1.14) rotate(-4deg)}
.rating:hover .rating-star svg{fill:var(--sun);stroke:#0F1A3A}
.rating .rating-star:hover~.rating-star svg{fill:var(--soft);stroke:var(--line)}
.rating-star:focus-within{outline:3px solid var(--cobalt);outline-offset:2px}
.rv-quote{margin:0;padding:12px 16px;border-left:4px solid var(--sun);background:var(--soft);border-radius:0 14px 14px 0;font-family:'Fraunces',Georgia,serif;font-style:italic;line-height:1.5;overflow-wrap:anywhere}
.review-dlg textarea{min-height:110px}

/* ---------- parrainage ---------- */
.referral .btn svg{width:16px;height:16px}
.referral input[readonly],.share-dlg input[readonly]{font-size:14px;text-overflow:ellipsis}

/* ---------- partage du CV ---------- */
.share-dlg .dlg-actions{margin-top:2px}

/* ---------- fiche entreprise ---------- */
.company-dlg{max-width:100%}
.company-sheet{gap:20px}
.cp-sec{display:grid;gap:8px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.cp-sec:last-of-type{border-bottom:0}
.cp-sec h3{font-size:16px;color:var(--cobalt)}
:root[data-theme="dark"] .cp-sec h3{color:var(--link)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .cp-sec h3{color:var(--link)}}
.cp-pitch{font-family:'Fraunces',Georgia,serif;font-size:18.5px;line-height:1.55;padding:14px 18px;border-left:4px solid var(--sun);background:var(--soft);border-radius:0 16px 16px 0}
.cp-q{display:grid;gap:12px;counter-reset:cpq}
.cp-q li{position:relative;padding-left:40px;display:grid;gap:3px;counter-increment:cpq}
.cp-q li::before{content:counter(cpq);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;background:var(--sun);color:#0F1A3A;font:800 14px/28px var(--display);text-align:center}
.cp-q li span{font-size:14.5px;color:var(--muted)}
.chips-static{display:flex;flex-wrap:wrap;gap:8px}
.tagchip{display:inline-block;padding:6px 12px;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);font-weight:600;font-size:14.5px}

/* ---------- aide import LinkedIn ---------- */
.li-help{margin-top:4px}
.li-steps{display:grid;gap:8px;counter-reset:li;padding-bottom:6px}
.li-steps li{position:relative;padding-left:34px;counter-increment:li}
.li-steps li::before{content:counter(li);position:absolute;left:0;top:1px;width:24px;height:24px;border-radius:50%;background:var(--soft);border:1.5px solid var(--line);font:800 13px/21px var(--display);text-align:center}

/* ---------- écrans étroits ---------- */
@media (max-width:560px){
  .seek-grid{grid-template-columns:minmax(0,1fr)}
  .phone-row{grid-template-columns:minmax(0,1fr)}
  .rating-star svg{width:46px;height:46px}
  .moment{padding-right:16px}
}

/* ---------- mouvement réduit ---------- */
@media (prefers-reduced-motion:reduce){
  .moment,.moment .bell-body,.stars-card.gold .stars.lux svg.on{animation:none}
  .moment,.seek-in,.rating-star svg{transition:none}
  .rating-star:hover svg{transform:none}
}
