/* NessDocs — page « Créer mon compte » (identité Menthe). */
.ins-main{padding-top:1.5rem;padding-bottom:2.5rem}
.ins-body{padding:0;border-radius:inherit;overflow:hidden}
.ins{--ink:#0F172A;--t2:#475569;--t3:#64748B;--mint:#ADECA2;--mint-soft:#E3F8DF;--menthe:#F3FBF4;--line:#CDE9C8;--em:#047857;--em-d:#065F46;--em-b:#10B981;--bord:#E3EEE5;
  display:grid;grid-template-columns:minmax(0,1fr);min-width:0;color:var(--ink)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ── Panneau marque ── */
.ins-panel{position:relative;isolation:isolate;overflow:hidden;padding:1.4rem 1.25rem 1.25rem;
  background:linear-gradient(155deg,#DDF6D7 0%,#EEFAEC 45%,#F8FDF8 100%);border-bottom:1px solid var(--bord)}
.ins-grid{position:absolute;inset:-40px;z-index:-1;opacity:.55;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Cpath d='M22 15l7 7-7 7-7-7z' fill='none' stroke='%2310B981' stroke-opacity='.28' stroke-width='1'/%3E%3C/svg%3E");
  background-size:44px 44px;-webkit-mask-image:radial-gradient(120% 90% at 20% 10%,#000 30%,transparent 75%);mask-image:radial-gradient(120% 90% at 20% 10%,#000 30%,transparent 75%);
  animation:ins-drift 38s linear infinite}
.ins-glow{position:absolute;z-index:-1;width:420px;height:420px;right:-160px;bottom:-200px;border-radius:50%;
  background:radial-gradient(circle,rgba(173,236,162,.85),rgba(173,236,162,0) 65%);animation:ins-pulse 9s ease-in-out infinite}
@keyframes ins-drift{to{transform:translate(44px,44px)}}
@keyframes ins-pulse{0%,100%{transform:scale(1);opacity:.85}50%{transform:scale(1.12);opacity:1}}
.ins-panel-in{position:relative}
.ins-eyebrow{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 .7rem;padding:.3rem .7rem .3rem .5rem;border-radius:999px;
  background:rgba(255,255,255,.75);border:1px solid var(--line);font-size:.75rem;font-weight:700;color:var(--em-d)}
.ins-dot{width:8px;height:8px;border-radius:50%;background:var(--em-b);box-shadow:0 0 0 3px rgba(16,185,129,.2)}
.ins-headline{font-family:'Plus Jakarta Sans',Inter,system-ui,sans-serif;font-weight:800;letter-spacing:-.03em;line-height:1.08;
  font-size:1.55rem;margin:0 0 .85rem;color:var(--ink)}
.ins-headline em{font-style:normal;color:var(--em);background:linear-gradient(transparent 62%,rgba(173,236,162,.75) 62%);padding:0 .05em}
.ins-chip{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:.25rem .5rem;padding:.5rem .8rem;border-radius:12px;background:#fff;
  border:1px solid var(--line);box-shadow:0 10px 24px -18px rgba(4,120,87,.6);text-decoration:none;color:var(--ink);transition:transform .2s,box-shadow .2s}
.ins-chip:hover{transform:translateY(-1px);box-shadow:0 14px 28px -16px rgba(4,120,87,.6)}
.ins-chip-k{font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--em)}
.ins-chip-n{font-family:'Plus Jakarta Sans',Inter,sans-serif;font-weight:800;font-size:.95rem}
.ins-perks{display:none;list-style:none;margin:1.4rem 0 0;padding:0}
.ins-perks li{display:flex;gap:.75rem;align-items:flex-start;padding:.6rem 0;font-size:.9rem;line-height:1.4;color:var(--t2)}
.ins-perks li+li{border-top:1px dashed rgba(4,120,87,.18)}
.ins-perks b{display:block;color:var(--ink);font-weight:700}
.ins-dia{flex:none;width:10px;height:10px;margin-top:.3rem;transform:rotate(45deg);border-radius:2px;background:linear-gradient(135deg,var(--em-b),var(--em))}
.ins-timeline{list-style:none;margin:1rem 0 0;padding:0;display:flex;gap:.4rem;counter-reset:none}
.ins-timeline li{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem;font-size:.75rem;line-height:1.3;color:var(--t2)}
.ins-timeline b{display:block;color:var(--ink);font-size:.8125rem}
.ins-tl-n{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;transform:rotate(45deg);background:#fff;border:1.5px solid var(--em);
  font-family:'Plus Jakarta Sans',Inter,sans-serif;font-weight:800;font-size:.75rem;color:var(--em)}
.ins-tl-n{flex:none;line-height:1}
.ins-tl-n>span{transform:rotate(-45deg)}
.ins-timeline li:first-child .ins-tl-n{background:var(--em);color:#fff}
@media (max-width:991px){.ins-timeline li>span:last-child{font-size:.72rem}.ins-timeline li>span:last-child b{font-size:.78rem}}

/* ── Colonne formulaire ── */
.ins-form-col{min-width:0;padding:1.35rem 1.15rem 1.4rem}
.ins-head{margin-bottom:1rem}
.ins-title{font-family:'Plus Jakarta Sans',Inter,system-ui,sans-serif;font-weight:800;letter-spacing:-.03em;font-size:1.6rem;line-height:1.1;margin:.25rem 0 .4rem;color:var(--ink)}
.ins-lead{margin:0;font-size:.9375rem;line-height:1.5;color:var(--t2)}
.ins-msg{margin-bottom:1rem;padding:.75rem 1rem;border-radius:12px;font-size:.875rem;font-weight:600;background:var(--menthe);border:1px solid var(--line);color:var(--em-d)}
.ins-msg.is-bad{background:#FEF2F2;border-color:#FECACA;color:#B91C1C}

.ins-progress{display:none;margin:0 0 1.15rem}
.ins-js .ins-progress{display:block}
.ins-progress-labels{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}
.ins-pl{display:inline-flex;align-items:center;gap:.45rem;font-size:.8125rem;font-weight:600;color:var(--t3);transition:color .25s}
.ins-pl-n{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1.5px solid #CBD5E1;font-size:.6875rem;font-weight:800;color:var(--t3);background:#fff;transition:all .25s}
.ins[data-step="1"] [data-pl="1"],.ins[data-step="2"] .ins-pl{color:var(--ink)}
.ins[data-step="1"] [data-pl="1"] .ins-pl-n,.ins[data-step="2"] .ins-pl-n{border-color:var(--em);background:var(--em);color:#fff}
.ins-bar{height:6px;border-radius:99px;background:#E8F1EA;overflow:hidden}
.ins-bar-fill{display:block;height:100%;width:50%;border-radius:inherit;background:linear-gradient(90deg,var(--em-b),var(--em));transition:width .45s cubic-bezier(.2,.7,.2,1)}
.ins[data-step="2"] .ins-bar-fill{width:100%}

.ins-form{margin:0}
.ins-step{border:0;margin:0;padding:0;min-width:0}
.ins-step+.ins-step{margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid var(--bord)}
.ins-js .ins-step+.ins-step{margin-top:0;padding-top:0;border-top:0}
.ins-step[hidden]{display:none}
.ins.is-ready .ins-step:not([hidden]){animation:ins-in .35s ease both}
@keyframes ins-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.ins-step-t{display:block;padding:0;margin:0 0 .75rem;font-family:'Plus Jakarta Sans',Inter,sans-serif;font-weight:800;font-size:1.1rem;letter-spacing:-.02em;color:var(--ink);outline:none}
.ins-step-k{display:block;font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--em);margin-bottom:.15rem}
.ins-sub{margin:0 0 .6rem;font-size:.8125rem;line-height:1.45;color:var(--t3)}

.ins-offers{display:grid;grid-template-columns:minmax(0,1fr);gap:.6rem;margin-bottom:1.1rem}
.ins-offer{position:relative;display:flex;align-items:center;gap:.8rem;min-width:0;padding:.8rem 2.6rem .8rem .8rem;border-radius:14px;cursor:pointer;
  background:#fff;border:1.5px solid #E2E8F0;transition:border-color .2s,box-shadow .2s,transform .2s,background .2s}
.ins-offer:hover{border-color:var(--line);transform:translateY(-1px);box-shadow:0 12px 26px -20px rgba(4,120,87,.55)}
.ins-offer input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.ins-offer:focus-within{border-color:var(--em);box-shadow:0 0 0 4px rgba(173,236,162,.5)}
.ins-offer:has(input:checked){border-color:var(--em);background:linear-gradient(135deg,#fff,var(--menthe));box-shadow:0 14px 30px -22px rgba(4,120,87,.7)}
.ins-offer-ico{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--mint-soft);color:var(--em);transition:background .2s,color .2s}
.ins-offer-ico svg{width:22px;height:22px}
.ins-offer input:checked~.ins-offer-ico{background:var(--em);color:#fff}
.ins-offer-txt{min-width:0}
.ins-offer-name{display:block;font-weight:700;font-size:.9375rem;line-height:1.25;color:var(--ink)}
.ins-offer-tag{display:block;margin-top:.1rem;font-size:.8125rem;color:var(--t3)}
.ins-check{position:absolute;top:50%;right:.8rem;width:22px;height:22px;margin-top:-11px;border-radius:50%;border:1.5px solid #CBD5E1;background:#fff;display:grid;place-items:center;transition:all .2s}
.ins-check svg{width:13px;height:13px;fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:16;stroke-dashoffset:16;transition:stroke-dashoffset .3s .05s ease}
.ins-offer input:checked~.ins-check{border-color:var(--em);background:var(--em);transform:scale(1.08)}
.ins-offer input:checked~.ins-check svg{stroke-dashoffset:0}

.ins-field{min-width:0;margin-bottom:.95rem}
.ins .auth-input{width:100%;min-width:0;box-sizing:border-box;padding:.75rem .9rem;line-height:1.4;font-size:.9375rem}
.ins .auth-input.has-toggle{padding-right:2.9rem}
.ins .auth-input:focus,.ins .auth-input:focus-visible{outline:none!important;border-color:var(--em);box-shadow:0 0 0 4px rgba(173,236,162,.5)!important}
.ins .auth-input[aria-invalid="true"]{border-color:#DC2626;background:#FFFBFB}
.ins .auth-input[aria-invalid="true"]:focus{box-shadow:0 0 0 4px rgba(254,202,202,.7)!important}
.ins-area{min-height:6.5rem;resize:vertical}
.ins-row{display:grid;grid-template-columns:minmax(0,1fr);gap:0 .85rem}
.ins-opt{font-weight:600;text-transform:none;letter-spacing:0;color:var(--t3)}
.ins-req{color:#B91C1C}
.ins-err{display:flex;gap:.4rem;align-items:flex-start;margin:.4rem 0 0;font-size:.8125rem;font-weight:600;line-height:1.4;color:#B91C1C}
.ins-err::before{content:"";flex:none;width:15px;height:15px;margin-top:.1rem;border-radius:50%;
  background:#DC2626 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 4.5v4.2M8 11.2v.1' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/15px no-repeat}
.ins-err[hidden]{display:none}
.ins-err a{color:var(--em);text-decoration:underline;text-underline-offset:2px}

.ins-tel{position:relative}
.ins-tel-pre{display:none}
.ins-js .ins-tel-pre{display:flex;align-items:center;position:absolute;left:1px;top:1px;bottom:1px;padding:0 .7rem;border-radius:11px 0 0 11px;background:var(--menthe);
  border-right:1px solid var(--bord);font-weight:700;font-size:.875rem;color:var(--em-d);transition:opacity .2s}
.ins-js .ins-tel .auth-input{padding-left:4.2rem}
.ins-js .ins-tel.is-intl .ins-tel-pre{opacity:0;pointer-events:none}
.ins-js .ins-tel.is-intl .auth-input{padding-left:.9rem}
.ins-hint{margin:.4rem 0 0}

.ins-pass{position:relative}
.ins-eye{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:10px;background:transparent;color:var(--t3);cursor:pointer}
.ins-eye:hover{color:var(--em);background:var(--menthe)}
.ins-eye svg{width:20px;height:20px}
.ins-eye .eye-off,.ins-eye[aria-pressed="true"] .eye-on{display:none}
.ins-eye[aria-pressed="true"] .eye-off{display:block}
.ins-only-js{display:none!important}
.ins-js .ins-only-js{display:flex!important}
.ins-js .ins-match.ins-only-js{display:block!important}
.ins-meter{align-items:center;gap:.6rem;margin-top:.5rem}
.ins-meter-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;width:96px;flex:none}
.ins-meter-bars i{height:5px;border-radius:9px;background:#E2E8F0;transition:background .25s}
.ins-meter[data-meter="1"] i:nth-child(-n+1){background:#DC2626}
.ins-meter[data-meter="2"] i:nth-child(-n+2){background:#D97706}
.ins-meter[data-meter="3"] i:nth-child(-n+3){background:var(--em-b)}
.ins-meter[data-meter="4"] i{background:var(--em)}
.ins-meter-t{font-size:.75rem;font-weight:600;color:var(--t3)}
.ins-match{margin:.5rem 0 0;min-height:1.1em;font-size:.75rem;font-weight:700}
.ins-match.is-ok{color:var(--em)}
.ins-match.is-ok::before{content:"✓ "}
.ins-match.is-bad{color:#B91C1C}

.ins-legal{margin:.2rem 0 1rem;font-size:.75rem;line-height:1.5;color:var(--t3)}
.ins-legal a,.ins-alt a{color:var(--em);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.ins-nav{display:flex;align-items:center;gap:.75rem}
.ins-nav .auth-btn{flex:1;min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}
.ins-back{flex:none;min-height:50px;padding:0 1rem;border-radius:14px;border:1.5px solid var(--line);background:#fff;color:var(--em-d);font-weight:700;font-size:.9rem;cursor:pointer;align-items:center;gap:.35rem}
.ins-back:hover{background:var(--menthe);border-color:var(--em)}
.ins-next span{transition:transform .2s}
.ins-next:hover span{transform:translateX(3px)}
.ins-submit-l{display:none;align-items:center;gap:.5rem}
.ins-submit.is-loading .ins-submit-t{display:none}
.ins-submit.is-loading .ins-submit-l{display:inline-flex}
.ins-spin{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:ins-rot .8s linear infinite}
@keyframes ins-rot{to{transform:rotate(360deg)}}
.ins-reassure{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:.8rem 0 0;font-size:.8125rem;font-weight:600;color:var(--em-d);text-align:center}
.ins-reassure .ins-dia{margin-top:0;width:8px;height:8px}
.ins-alt{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--bord);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem;font-size:.875rem;color:var(--t2)}
.ins-alt p{margin:0}

@media (min-width:560px){
  .ins-offers{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ins-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ins-form-col{padding:1.8rem 1.9rem}
  .ins-panel{padding:1.6rem 1.9rem 1.4rem}
}
@media (min-width:992px){
  .ins{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}
  .ins-panel{padding:2.6rem 2.3rem;border-bottom:0;border-right:1px solid var(--bord)}
  .ins-panel-in{position:sticky;top:2rem}
  .ins-headline{font-size:2.15rem;margin-bottom:1.1rem}
  .ins-perks{display:block}
  .ins-timeline{flex-direction:column;gap:0;margin-top:1.6rem;padding-top:1.3rem;border-top:1px solid rgba(4,120,87,.15)}
  .ins-timeline li{flex-direction:row;align-items:center;gap:.9rem;padding:.45rem 0;font-size:.85rem;position:relative}
  .ins-timeline li:not(:last-child)::after{content:"";position:absolute;left:12px;top:36px;height:14px;border-left:1.5px dashed rgba(4,120,87,.4)}
  .ins-timeline b{display:inline;margin-right:.3rem;font-size:.875rem}
  .ins-form-col{padding:2.4rem 2.5rem 2rem}
  .ins-title{font-size:1.9rem}
}
@media (max-width:479px){
  .ins-nav{flex-wrap:wrap}
  .ins-nav .auth-btn{flex:1 1 100%}
  .ins-back{order:2;flex:1 1 100%;justify-content:center;min-height:44px}
}
@media (max-width:380px){.ins-headline{font-size:1.35rem}}
@media (prefers-reduced-motion:reduce){
  .ins *,.ins *::before,.ins *::after{animation:none!important;transition:none!important}
}
