.tool-hero > .container,
.klfacts > .container,
.k-vitrine > section:not([class]) > .wrap{
  width:100%;max-width:calc(var(--w-content) + 2*var(--gutter));
  margin-inline:auto;padding-inline:var(--gutter)}
.k-level-a,.k-level-b{padding-block:clamp(64px,8vw,96px)}
.k-level-c{padding-block:clamp(48px,6vw,72px)}
.k-level-a .display{font-size:clamp(2rem,3vw,2.75rem);line-height:1.05}
.k-level-b .display{font-size:clamp(1.75rem,2.4vw,2.25rem)}
.k-level-c .display{font-size:clamp(1.5rem,1.9vw,1.875rem)}
.k-level-c .k-lead{font-size:var(--fs-2)}
.k-vitrine > section:not([class]) .kicker,.k-sec-preuve .kicker,
.klfacts-date,.klfacts-src,
.steps .step > .n{
  display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--s-1) var(--s-2);
  font-family:var(--f-mono);font-size:var(--fs-0);letter-spacing:.02em;
  text-transform:uppercase;color:var(--c-ink-2);
  font-variant-numeric:tabular-nums;line-height:1.2}
.k-visuel,img.kl-visuel{
  display:block;width:100%;height:auto;
  border-radius:var(--r-2);border:1px solid var(--c-line-strong);
  background:var(--c-bg-2);filter:saturate(.88)}
.k-visuel--nu,.demo-mire img{
  display:block;width:100%;height:auto;filter:saturate(.88)}
.tho-visual-media{display:block;width:100%;height:auto;filter:saturate(.88)}
.tho-visual:not(:has(img:not([width="1"]),video,.k-scene)),
.doss-fig:not(:has(img:not([width="1"]))),
.demo-mire:not(:has(img:not([width="1"]),video)),
.concl .k-container > div + div:not(:has(img:not([width="1"]))){display:none}
.k-fil{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);
  min-height:var(--control-h);font-size:var(--fs-1);color:var(--c-ink-2)}
.k-fil__lien{display:inline-flex;align-items:center;min-height:var(--control-h);
  color:var(--c-ink-2);text-decoration:none}
.k-fil__lien:hover{color:var(--c-ink);text-decoration:underline}
.k-fil__sep{color:var(--c-ink-2)}
.k-fil__ici{color:var(--c-ink-2);min-width:0}
.k-outil,.rel .tool-crosslink-card{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;
  gap:var(--s-3);min-height:48px;padding:var(--s-2) var(--s-3);
  margin-inline:calc(-1 * var(--s-3));border-radius:var(--r-1);
  text-decoration:none;color:var(--c-ink);
  transition:background var(--t-fast) var(--ease)}
.k-outil__ic{width:22px;height:22px;color:var(--c-ink-3);flex:none;
  transition:color var(--t-fast) var(--ease)}
.k-outil__nom,.rel .tool-crosslink-card b{
  font-size:var(--fs-1);font-weight:var(--fw-ui);min-width:0;line-height:1.25}
.rel .tool-crosslink-card{grid-template-columns:minmax(0,1fr)}
.k-outil__go{opacity:1;color:var(--c-ink-3);transition:color var(--t-fast) var(--ease)}
.k-outil:hover,.k-outil:focus-visible,
.rel .tool-crosslink-card:hover,.rel .tool-crosslink-card:focus-visible{
  background:var(--c-surface-2);color:var(--c-ink)}
.k-outil:hover .k-outil__ic,.k-outil:focus-visible .k-outil__ic{color:var(--c-action)}
.k-outil:hover .k-outil__go,.k-outil:focus-visible .k-outil__go{color:var(--c-action)}
@media (min-width:960px){.k-outil,.rel .tool-crosslink-card{min-height:56px}}
.k-questions,.faq-grid{display:grid;grid-template-columns:minmax(0,1fr);
  align-content:start;border-top:1px solid var(--c-line)}
.faq-col{display:contents}
@media (min-width:960px){
  .faq-col{display:block}
  .k-questions,.faq-grid{grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:var(--s-8);
    align-items:start}}
.k-questions details,.faq-grid details{border-bottom:1px solid var(--c-line)}
.k-questions summary,.faq-grid summary{
  display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);
  min-height:56px;padding-block:var(--s-3);font-size:var(--fs-2);
  font-weight:var(--fw-title);line-height:var(--lh-snug);color:var(--c-ink);
  cursor:pointer;list-style:none}
.k-questions summary::-webkit-details-marker,
.faq-grid summary::-webkit-details-marker{display:none}
.k-questions summary::after,.faq-grid summary::after{
  content:"";flex:none;width:9px;height:9px;margin-inline-end:3px;
  border-right:1.75px solid var(--c-ink-2);border-bottom:1.75px solid var(--c-ink-2);
  transform:translateY(-3px) rotate(45deg);
  transition:transform 320ms cubic-bezier(0.4,0.0,0.2,1)}
.k-questions details[open] summary::after,.faq-grid details[open] summary::after{
  transform:translateY(2px) rotate(-135deg)}
.k-questions summary:hover,.faq-grid summary:hover{color:var(--c-action)}
.k-questions details > p,.faq-grid details > p{
  padding-bottom:var(--s-5);font-size:var(--fs-2);color:var(--c-ink-2);
  max-width:30rem}
@media (min-width:960px){
  .k-sec-faq .k-container{max-width:calc(64rem + 2*var(--gutter))}
  .k-vitrine .k-sec-faq .display{max-width:calc((100% - var(--s-8))/2)}
}
.k-releves,.klfacts-rows{display:grid;grid-template-columns:minmax(0,1fr);
  align-content:start;column-gap:var(--s-7)}
@media (min-width:720px){
  .k-releves,.klfacts-rows{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){
  .k-releves,.klfacts-rows{grid-template-columns:repeat(3,minmax(0,1fr))}}
.k-releves > li,.klfacts-rows > li{display:grid;gap:var(--s-2);align-content:start;
  padding-block:var(--s-5) var(--s-6);border-top:1px solid var(--c-line)}
.k-releves > li > b,.klfacts-rows > li > b{order:-1;font-family:var(--f-sans);
  font-size:var(--fs-5);font-weight:var(--fw-title);letter-spacing:var(--ls-title);
  line-height:1;color:var(--c-ink);font-variant-numeric:tabular-nums}
.k-releves > li > span,.klfacts-rows > li > span{
  font-size:var(--fs-1);color:var(--c-ink-2);line-height:var(--lh-snug);max-width:34ch}
@media (max-width:719px){
  .k-releves > li,.klfacts-rows > li{grid-template-columns:96px minmax(0,1fr);
    column-gap:var(--s-4);align-items:start;padding-block:var(--s-4)}
  .k-releves > li > b,.klfacts-rows > li > b{font-size:var(--fs-4);padding-top:2px}
  .k-releves > li > span,.klfacts-rows > li > span{max-width:none}}
.k-figure,.step-illu{display:flex;align-items:center;flex-wrap:wrap;
  gap:var(--s-3);min-height:88px;padding:var(--s-4);
  border:1px solid var(--c-line);border-radius:var(--r-2);
  background:var(--c-bg-2)}
.k-section--alt .k-figure,.k-section--alt .step-illu{background:var(--c-surface)}
.mini-drop{display:grid;place-items:center;width:40px;height:40px;flex:none;
  border:1.5px dashed var(--c-line-strong);border-radius:var(--r-1);
  color:var(--c-action)}
.mini-chips{display:flex;flex-wrap:wrap;gap:var(--s-1);min-width:0}
.levels{display:flex;align-items:center;gap:var(--s-2)}
.levels > span{width:34px;height:10px;border-radius:var(--r-pill);
  background:var(--c-surface-2)}
.levels > span.on{background:var(--c-action)}
.peek-lignes{display:grid;gap:var(--s-2);width:100%;max-width:180px}
.peek-lignes > span{display:block;height:10px;border-radius:var(--r-pill);
  background:var(--c-surface-2)}
.peek-lignes > span:nth-child(1){width:100%}
.peek-lignes > span:nth-child(2){width:72%}
.peek-lignes > span:nth-child(3){width:45%}
.mini-field{display:grid;gap:var(--s-2);width:100%;max-width:180px}
.mini-field > i{display:block;height:6px;border-radius:3px;background:var(--c-surface-2)}
.mini-field > i:nth-child(2){width:78%}
.mini-field > i:nth-child(3){width:52%}
.dl-row{display:flex;align-items:center;gap:var(--s-3)}
.dl-file{font-family:var(--f-mono);font-size:var(--fs-0);color:var(--c-ink-2);
  letter-spacing:.02em}
.dl-file b{font-weight:var(--fw-ui);color:var(--c-ink)}
.dl-btn{display:grid;place-items:center;width:28px;height:28px;flex:none;
  border-radius:var(--r-1);background:var(--c-action);color:var(--c-on-action)}
.k-etapes,.k-sec-etapes .steps{position:relative;display:grid;
  grid-template-columns:minmax(0,1fr);gap:var(--s-7);padding-inline-start:28px}
.k-etapes::before,.k-sec-etapes .steps::before{content:"";display:none;
  position:absolute;background:var(--c-line-strong)}
.k-etape,.k-sec-etapes .step{position:relative;display:grid;gap:var(--s-3);
  align-content:start}
.k-etape::before,.k-sec-etapes .step::before{content:"";position:absolute;
  inset-inline-start:-28px;top:5px;width:11px;height:11px;border-radius:50%;
  background:var(--c-bg-2);border:1.5px solid var(--c-ink);box-sizing:border-box}
.k-etape:first-child::before,.k-sec-etapes .step:first-child::before{
  background:var(--c-action);border-color:var(--c-action)}
.k-etape:not(:last-child)::after,.k-sec-etapes .step:not(:last-child)::after{
  content:"";position:absolute;inset-inline-start:-23px;top:16px;
  bottom:calc(-1*var(--s-7) - 5px);width:1px;background:var(--c-line-strong)}
.k-etape > .n,.k-sec-etapes .step > .n{justify-self:start}
.k-etape h3,.k-sec-etapes .step h3{font-size:var(--fs-3)}
.k-etape p,.k-sec-etapes .step p{font-size:var(--fs-1);color:var(--c-ink-2);
  max-width:38ch}
@media (min-width:720px){
  .k-etapes,.k-sec-etapes .steps{grid-template-columns:repeat(3,minmax(0,1fr));
    gap:var(--s-5);padding-inline-start:0;padding-top:34px}
  .k-sec-etapes .step-illu{min-height:134px}
  .k-etape:not(:last-child)::after,.k-sec-etapes .step:not(:last-child)::after{
    display:none}
  .k-etapes::before,.k-sec-etapes .steps::before{display:block;top:5px;left:5px;
    width:calc((200% + 2*var(--s-5))/3);height:1px}
  .k-etape::before,.k-sec-etapes .step::before{inset-inline-start:0;top:-34px}}
.k-atouts,.k-sec-atouts .steps,
.k-vitrine > section:not([class]) .steps{display:grid;
  grid-template-columns:minmax(0,1fr);gap:var(--s-7)}
.k-atout,.k-sec-atouts .step,
.k-vitrine > section:not([class]) .step{display:grid;gap:var(--s-2);
  align-content:start;padding-top:var(--s-4);border-top:1px solid var(--c-line)}
.k-atout h3,.k-sec-atouts .step h3,
.k-vitrine > section:not([class]) .step h3{font-size:var(--fs-3)}
.k-atout p,.k-sec-atouts .step p,
.k-vitrine > section:not([class]) .step p{font-size:var(--fs-1);
  color:var(--c-ink-2);max-width:46ch}
.feature-benefit-img{margin-top:var(--s-4);order:3}
.k-scene--atout{aspect-ratio:16/9;display:grid;
  grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);
  padding:var(--s-5);border-radius:22px;overflow:hidden}
.k-scene--atout{place-items:center}
.k-sec-atouts .feature-benefit-img{margin-top:var(--s-5)}
.k-sec-atouts .k-scene--atout::before{background:
  radial-gradient(circle at center,color-mix(in srgb,var(--c-ink) 20%,transparent) 1.2px,transparent 1.4px) 0 0/24px 24px,
  color-mix(in srgb,var(--c-action) 10%,color-mix(in srgb,var(--c-ink) 5%,var(--c-bg)))}
.k-scene--atout .k-atout__media{display:block;width:auto;height:auto;
  max-width:100%;max-height:100%;object-fit:contain}
@supports (grid-template-rows:subgrid){
  @media (min-width:720px){
    .k-sec-atouts .steps > .step{grid-row:span 3;grid-template-rows:subgrid;
      row-gap:0}
    .k-sec-atouts .steps > .step > h3{grid-row:1}
    .k-sec-atouts .steps > .step > p{grid-row:2;margin-top:var(--s-2)}
    .k-sec-atouts .steps > .step > .feature-benefit-img{grid-row:3;
      align-self:start}}}
@media (min-width:720px){
  .k-atouts,.k-sec-atouts .steps,
  .k-vitrine > section:not([class]) .steps{
    grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s-8);
    row-gap:var(--s-6)}}
@media (min-width:720px) and (max-width:1023.98px){
  .k-vitrine > section:not([class]) .steps{
    grid-template-columns:repeat(4,minmax(0,1fr))}
  .k-vitrine > section:not([class]) .step{grid-column:span 2}
  .k-vitrine > section:not([class]) .steps:has(> .step:nth-child(3):last-child) > .step:nth-child(3),
  .k-vitrine > section:not([class]) .steps:has(> .step:nth-child(5):last-child) > .step:nth-child(5){
    grid-column:2/span 2}}
@media (min-width:1024px){
  .k-atouts--4,.k-sec-atouts .steps{grid-template-columns:repeat(4,minmax(0,1fr));
    column-gap:var(--s-5)}
  .k-sec-atouts .steps:has(.feature-benefit-img){
    grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s-8)}
  .k-vitrine > section:not([class]) .steps{
    grid-template-columns:repeat(6,minmax(0,1fr));column-gap:var(--s-5)}
  .k-vitrine > section:not([class]) .step{grid-column:span 2}
  .k-vitrine > section:not([class]) .steps:has(> .step:nth-child(2):last-child) > .step,
  .k-vitrine > section:not([class]) .steps:has(> .step:nth-child(4):last-child) > .step{
    grid-column:span 3}
  .k-vitrine > section:not([class]) .steps:has(> .step:nth-child(5):last-child)
    > .step:nth-child(4){grid-column:2/span 2}
  .k-vitrine > section:not([class]) .steps:has(> .step:nth-child(5):last-child)
    > .step:nth-child(5){grid-column:4/span 2}
  .k-vitrine > section:not([class]) .steps:has(> .step:only-child) > .step{
    grid-column:1/span 3;max-width:var(--w-text)}}
.k-vitrine > section:not([class]) .step a{color:var(--c-action);
  text-decoration:underline;text-underline-offset:3px;
  text-decoration-thickness:1px;font-weight:var(--fw-ui)}
.k-vitrine > section:not([class]) .step a:hover{text-decoration-thickness:2px}
.k-vitrine > section:not([class]) .step a:focus-visible{outline:2px solid var(--c-focus);
  outline-offset:2px;border-radius:2px}
.k-avis,.quotes{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-6)}
.k-avis > *,.quote{display:grid;grid-template-rows:auto 1fr auto;gap:var(--s-3);
  align-content:start;padding-top:var(--s-4);border-top:1px solid var(--c-line)}
.k-avis .stars,.quote .stars{color:var(--c-ink-2);font-size:var(--fs-1);
  letter-spacing:.14em}
.k-avis p,.quote p{font-size:var(--fs-2);color:var(--c-ink);max-width:46ch}
.k-avis .who b,.quote .who b{display:block;font-size:var(--fs-1);
  font-weight:var(--fw-ui);color:var(--c-ink)}
.k-avis .who span,.quote .who span{font-family:var(--f-mono);font-size:var(--fs-0);
  letter-spacing:.02em;text-transform:uppercase;color:var(--c-ink-2)}
@media (min-width:720px){
  .k-avis,.quotes{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-5)}}
.k-posts{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-6)}
@media (min-width:720px){
  .k-posts{grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--s-5)}
  .k-posts > .post{grid-column:span 2}
  .k-posts:has(> .post:nth-child(2):last-child) > .post:first-child{
    grid-column:2/span 2}
  .k-posts:has(> .post:only-child) > .post{grid-column:3/span 2}
}
.post{display:flex;flex-direction:column;gap:var(--s-3);text-decoration:none;
  color:var(--c-ink)}
.post:hover{color:var(--c-ink)}
.post-media{position:relative;aspect-ratio:16/9;border-radius:var(--r-2);
  overflow:hidden;background:var(--c-surface-2);border:1px solid var(--c-line-strong)}
.post-media img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;
  display:block;filter:saturate(.88);
  transition:transform var(--t-base) var(--ease),filter var(--t-base) var(--ease)}
.post:hover .post-media img{transform:scale(1.02);filter:saturate(1)}
.post-body{display:grid;gap:var(--s-1)}
.post-tags{display:flex;flex-wrap:wrap;gap:var(--s-1);margin-bottom:var(--s-1)}
.post-tags span,.mini-chips span{display:inline-flex;align-items:center;
  min-height:22px;padding:0 var(--s-2);border-radius:var(--r-pill);
  border:1px solid var(--c-line);background:var(--c-surface);
  color:var(--c-ink-2);font-size:var(--fs-0);font-weight:var(--fw-ui)}
.blog-card-title{font-family:var(--f-sans);font-size:var(--fs-3);
  font-weight:var(--fw-ui);letter-spacing:-0.01em;line-height:var(--lh-snug)}
.post-body p{font-size:var(--fs-1);color:var(--c-ink-2);display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);
  margin-top:var(--s-1);font-family:var(--f-mono);font-size:var(--fs-0);
  letter-spacing:.02em;color:var(--c-ink-2)}
.post-meta b{font-weight:var(--fw-ui)}
.post-meta b::before{content:"\00b7";margin-inline-end:var(--s-2);
  color:var(--c-line-strong)}
@media (min-width:720px){
  .k-posts{grid-template-rows:auto auto auto auto auto;row-gap:0}
  .k-posts > .post{display:grid;grid-row:span 5;grid-template-rows:subgrid;
    row-gap:var(--s-1)}
  .k-posts > .post > .post-media{margin-bottom:calc(var(--s-3) - var(--s-1))}
  .k-posts > .post > .post-body{grid-row:span 4;grid-template-rows:subgrid;
    row-gap:var(--s-1)}
}
@media (max-width:719px){
  .k-posts{gap:var(--s-5)}
  .k-posts .post:nth-child(n+2){display:grid;
    grid-template-columns:clamp(104px,32vw,132px) minmax(0,1fr);gap:var(--s-3);
    align-items:start;padding-top:var(--s-5);border-top:1px solid var(--c-line)}
  .k-posts .post:nth-child(n+2) .post-body{gap:var(--s-1)}
  .k-posts .post:nth-child(n+2) .post-tags{margin-bottom:0}
  .k-posts .post:nth-child(n+2) .post-tags span{min-height:0;padding:0;border:0;
    background:none;font-family:var(--f-mono);font-size:var(--fs-0);
    letter-spacing:.02em;color:var(--c-ink-2)}
  .k-posts .post:nth-child(n+2) .post-meta{margin-top:0}
  .k-posts .post:nth-child(n+2) .blog-card-title{font-size:var(--fs-2);
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;
    overflow:hidden}
  .k-posts .post:nth-child(n+2) p{display:none}}
.k-import{border:1px solid var(--c-line-strong);border-radius:var(--r-2);
  background:var(--c-surface);padding:var(--s-3)}
.k-import__drop{min-height:148px;border-radius:var(--r-1)}
.k-import__drop .k-drop__state{gap:var(--s-2)}
.k-import__group{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s-2)}
@media (max-width:559px){
  .k-import__group{grid-template-columns:minmax(0,1fr)}
  .k-import__group .k-btn{width:100%}}
.k-import__champ{position:relative;display:block;min-width:0}
.k-import__skel .k-input{display:flex;align-items:center;
  color:var(--c-ink-2);padding-inline-start:38px}
.url-platforms .tho-sites{min-height:52px}
.k-import__champ .k-input{padding-inline-start:38px}
.k-import__lienic{position:absolute;top:50%;inset-inline-start:12px;
  transform:translateY(-50%);color:var(--c-ink-3);pointer-events:none}
.k-vitrine svg:not([width]),.klfacts svg:not([width]),
.proof svg:not([width]){width:20px;height:20px;flex:none}
.tool-hero{padding-block:var(--s-6) clamp(48px,6vw,72px)}
.tho-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-7);
  align-items:center}
@media (min-width:960px){
  .tho-grid:not(.tho-grid--solo):has(.tho-visual-box img:not([width="1"]),.tho-visual-box video,.tho-visual-box .k-scene){
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:clamp(32px,3.4vw,52px)}}
.tho-col{min-width:0;max-width:var(--w-text)}
.tho-visual{min-width:0}
.tho-visual-box{display:grid;justify-items:center}
@media (min-width:960px){
  .tho-grid:not(.tho-grid--solo):has(.tho-visual-box img:not([width="1"]),.tho-visual-box video,.tho-visual-box .k-scene){
    align-items:stretch}
  .tho-visual{min-height:0}
  .tho-visual-box{position:relative;height:100%;min-height:280px;width:100%}
  .tho-visual-box .tho-visual-media{position:absolute;inset:0;
    height:100%;width:100%;padding:var(--s-5);object-fit:contain}
  .tho-visual-box .k-scene{position:absolute;inset:0}}
@media (min-width:960px){
  .tho-grid:not(.tho-grid--solo):not(:has(.tho-visual-box img:not([width="1"]),.tho-visual-box video,.tho-visual-box .k-scene))
    > .tho-col:has(> .k-import){
      max-width:none;display:grid;
      grid-template-columns:minmax(0,1fr) minmax(0,1fr);
      column-gap:clamp(32px,3.4vw,52px);align-content:start}
  .tho-col > .tool-breadcrumb,.tho-col > .tho-down,
  .tho-col > .tool-maintenance,.tho-col > .upload-hero{grid-column:1/-1}
  .tho-col > .tho-head{grid-column:1}
  .tho-col > .k-import,.tho-col > .tho-under{grid-column:2}}
.tho-title{font-size:clamp(2rem,3.4vw,2.75rem);line-height:1.08;
  letter-spacing:var(--ls-title);max-width:13em;margin-top:var(--s-3);
  overflow-wrap:break-word}
.tho-subtitle{margin-top:var(--s-3);max-width:34rem}
.tho-warn{display:flex;align-items:flex-start;gap:var(--s-2);margin-top:var(--s-3);
  font-size:var(--fs-1);color:var(--c-ink-2);max-width:var(--w-text)}
.tho-warn-ic{display:inline-flex;flex:none;margin-top:3px;color:var(--c-warn)}
.k-import.tho-shell{margin-top:var(--s-5);cursor:pointer}
.k-import .tho-dropcall-title{font-size:var(--fs-2);font-weight:var(--fw-ui);
  color:var(--c-ink)}
.k-import.tho-drag .k-drop{border-style:solid;border-color:var(--c-action);
  background:var(--c-action-soft)}
.tho-dropwrap{width:100%}
.tho-dropcall-btnwrap{display:grid;margin-top:var(--s-4);width:100%}
.tho-dropcall-btnwrap .k-btn{width:100%}
.tool-hero .tho-dropcall-mobile{display:none}
.tho-linkrow-sep{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;gap:var(--s-3);margin-block:var(--s-3);
  color:var(--c-ink-2);font-size:var(--fs-0)}
.tho-linkrow-sep-line{height:1px;background:var(--c-line)}
.tho-field-clear{position:absolute;top:50%;inset-inline-end:var(--s-2);
  transform:translateY(-50%);display:grid;place-items:center;
  width:32px;height:32px;border-radius:var(--r-1);color:var(--c-ink-2)}
.tho-field-clear:hover{background:var(--c-surface-2);color:var(--c-ink)}
.tho-field-clear svg{width:16px;height:16px}
.tho-sites{display:flex;flex-wrap:wrap;gap:var(--s-1);margin-top:var(--s-3)}
.tho-site-degraded{color:var(--c-warn);border-color:var(--c-warn)}
.tho-site-down{color:var(--c-ink-2);text-decoration:line-through}
.tho-linkrow-err{margin-top:var(--s-3)}
.tho-linkrow-err-text{display:grid;gap:var(--s-2);justify-items:start;min-width:0}
.tho-linkrow-err-t{font-weight:var(--fw-ui);color:var(--c-ink)}
.tho-linkrow-info{margin-top:var(--s-2)}
.tho-spinner-sm{display:inline-block;width:16px;height:16px;border-radius:50%;
  border:2px solid currentColor;border-top-color:transparent;
  animation:k-spin .8s linear infinite}
.tho-prep{display:grid;gap:var(--s-3);padding:var(--s-4);cursor:default}
.tho-prep-head{display:flex;align-items:center;gap:var(--s-3);min-width:0}
.tho-prep-text{display:grid;gap:2px;min-width:0;flex:1}
.tho-prep-status{font-size:var(--fs-1);font-weight:var(--fw-ui);color:var(--c-ink)}
.tho-prep-name{font-size:var(--fs-1);color:var(--c-ink-2);overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap}
.tho-prep-pct{font-family:var(--f-mono);font-size:var(--fs-0);color:var(--c-ink-2);
  font-variant-numeric:tabular-nums}
.tho-prep-fill{display:block;height:100%;background:var(--c-action);
  border-radius:inherit}
.tho-prep-note{font-size:var(--fs-1);color:var(--c-ink-2)}
.tho-spin{display:inline-block;width:18px;height:18px;flex:none;border-radius:50%;
  border:2px solid var(--c-line);border-top-color:var(--c-action);
  animation:k-spin .8s linear infinite}
.tho-errbox{margin:0}
.tho-errbox-row{display:flex;gap:var(--s-3);align-items:flex-start;min-width:0}
.tho-errbox-text{display:grid;gap:var(--s-2);min-width:0}
.tho-errbox-title{font-weight:var(--fw-ui);color:var(--c-ink)}
.tho-errbox-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2)}
.tho-errbox-note{width:100%}
.tho-down-text{display:grid;gap:var(--s-2);justify-items:start}
.tho-down-title{font-weight:var(--fw-ui);color:var(--c-ink)}
.tho-down-body{color:var(--c-ink-2);font-size:var(--fs-1)}
.tool-maintenance{display:grid;gap:var(--s-3);justify-items:center;text-align:center;
  margin-top:var(--s-5)}
.tho-under{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-5);
  margin-top:var(--s-4);font-size:var(--fs-0);color:var(--c-ink-2)}
.tho-limits{font-family:var(--f-mono);letter-spacing:.02em;text-transform:uppercase;
  font-variant-numeric:tabular-nums}
.tho-reassure{display:inline-flex;align-items:center;gap:var(--s-2)}
.tho-reassure svg{flex:none;color:var(--c-action)}
.k-vitrine > section,.klfacts{border-top:1px solid var(--c-line)}
.k-vitrine > section:not([class]){padding-block:clamp(64px,8vw,96px)}
.k-sec-preuve:not(:has(.demo-mire img:not([width="1"]),.demo-mire video)){display:none}
.k-sec-faq:not(:has(.faq-grid details)){display:none}
.k-vitrine .kicker{display:inline-flex;margin-bottom:var(--s-3)}
.k-vitrine .display{margin-bottom:var(--s-6);max-width:24ch}
.k-vitrine .display:has(+ p),.doss-head .display{margin-bottom:var(--s-3)}
.proof{border-bottom:1px solid var(--c-line);padding-block:var(--s-4)}
.rating{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s-2) var(--s-3);
  font-size:var(--fs-1);color:var(--c-ink-2)}
.rating > b{font-size:var(--fs-3);font-weight:var(--fw-title);color:var(--c-ink);
  font-variant-numeric:tabular-nums}
.rating .stars{color:var(--c-ink-2);letter-spacing:.12em}
.rating strong{font-weight:var(--fw-ui);color:var(--c-ink)}
.klfacts{background:var(--c-bg-2);padding-block:clamp(48px,6vw,72px)}
.klfacts-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;
  gap:var(--s-2) var(--s-6);margin-bottom:var(--s-5)}
.klfacts-title{display:flex;align-items:flex-start;gap:var(--s-3);
  font-family:var(--f-display);font-size:clamp(1.5rem,1.9vw,1.875rem);
  font-weight:var(--fw-title);letter-spacing:var(--ls-title);
  line-height:var(--lh-snug);color:var(--c-ink)}
.klfacts-title svg{width:22px;height:22px;flex:none;margin-top:4px;
  color:var(--c-ink-2);stroke-width:1.75}
.klfacts-src{display:block;margin-top:var(--s-4);max-width:33rem;line-height:var(--lh-body)}
.doss-head{max-width:var(--w-text);margin-bottom:var(--s-6)}
.doss-lede p{font-size:var(--fs-3);color:var(--c-ink-2);
  line-height:var(--lh-body);max-width:var(--w-text)}
.doss-lede p strong{font-weight:var(--fw-title);color:var(--c-ink)}
.doss-item{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-6);
  align-items:start}
@media (min-width:1280px){
  .doss-item:has(.doss-fig img:not([width="1"])){
    grid-template-columns:minmax(0,33rem) minmax(0,1fr);gap:var(--s-8);
    align-items:start}
  .doss-fig{position:sticky;top:var(--s-8);justify-self:end;width:100%}
  .doss-fig > img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;
    object-position:50% 30%}
  .k-container:has(.doss-item):not(:has(.doss-fig img:not([width="1"]))){
    display:grid;grid-template-columns:repeat(2,minmax(0,33rem));
    column-gap:var(--s-8);align-items:start}
  .k-container:has(.doss-item):not(:has(.doss-fig img:not([width="1"]))) > .kicker,
  .k-container:has(.doss-item):not(:has(.doss-fig img:not([width="1"]))) .doss-head > .display{
    grid-column:1/-1}
  .k-container:has(.doss-item):not(:has(.doss-fig img:not([width="1"]))) > .doss-head{
    display:contents}
  .k-container:has(.doss-item):not(:has(.doss-fig img:not([width="1"]))) .doss-lede{
    grid-column:1}
  .k-container:has(.doss-item):not(:has(.doss-fig img:not([width="1"]))) > .doss-item{
    grid-column:2}}
@media (max-width:1279px){
  .k-vitrine .doss-head,.k-vitrine .doss-item{display:contents}
  .k-vitrine section:has(.doss-item) > .k-container{display:flex;flex-direction:column}
  .k-vitrine section:has(.doss-item) > .k-container > .kicker{order:1}
  .k-vitrine .doss-head > h2{order:2;margin-bottom:var(--s-5)}
  .k-vitrine .doss-fig{order:3;margin-bottom:var(--s-6)}
  .k-vitrine .doss-lede{order:4;margin-bottom:var(--s-6)}
  .k-vitrine .doss-txt{order:5}
  .doss-fig > img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;
    object-position:50% 30%;max-width:none}}
.doss-txt{max-width:33rem;min-width:0}
.doss-txt h3{font-size:var(--fs-3);margin-top:var(--s-6);padding-top:var(--s-5);
  border-top:1px solid var(--c-line);max-width:26ch}
.doss-txt > h3:first-child{margin-top:0;padding-top:0;border-top:0}
.doss-txt p{margin-top:var(--s-2);color:var(--c-ink-2)}
.doss-txt p strong{font-weight:var(--fw-title);color:var(--c-ink)}
.doss-fig{min-width:0}
.k-sec-preuve{background:var(--c-bg-2)}
.k-sec-preuve .k-container{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-6)}
.k-preuve__texte{text-align:center}
.k-preuve__texte .display{margin-bottom:0;margin-inline:auto}
.k-preuve__media{position:relative;justify-self:center;margin-top:var(--s-5)}
.k-preuve__meta{position:absolute;bottom:100%;margin-bottom:6px;inset-inline-start:var(--s-4);
  z-index:2;background:var(--c-frame);color:#fff;box-shadow:var(--sh-1)}
.k-preuve__meta:empty{display:none}
.k-sec-preuve .demo-mire{display:block;border-radius:var(--r-3);overflow:hidden;
  box-shadow:0 32px 64px -28px rgba(17,20,23,.65),var(--sh-2)}
.k-sec-preuve .demo-mire :is(img,video){display:block;width:auto;height:auto;
  max-width:100%;max-height:min(680px,78vh);border:0;border-radius:0;filter:none}
.k-cta-milieu{display:grid;justify-items:center;padding-block:0 var(--s-8)}
.rel{display:grid;grid-template-columns:minmax(0,1fr);padding-inline:var(--s-3)}
@media (min-width:720px){.rel{grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:var(--s-8)}}
@media (min-width:1024px){.rel{grid-template-columns:repeat(4,minmax(0,1fr));
  column-gap:var(--s-5)}}
@media (min-width:960px){
  .k-flux--suite{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto auto}
  .k-flux--suite .k-flux__phase{display:grid;grid-row:span 2;grid-template-rows:subgrid}
  .k-flux--suite .k-flux__tete{min-height:0;padding-block:var(--s-4) var(--s-5)}
  .k-flux--suite .k-flux__quoi{min-height:0}
}
.final .k-container{display:grid;justify-items:center;text-align:center;
  gap:var(--s-5);max-width:calc(var(--w-text) + 2*var(--gutter))}
.final .display{max-width:20ch;margin-inline:auto}
.final .sub{color:var(--c-ink-2)}
.final-actions{display:grid;justify-items:center;gap:var(--s-3);width:100%}
.final-micro{margin-top:var(--s-3)}
@media (min-width:560px){.final .k-btn{padding-inline:var(--s-7)}}
.final .k-btn{width:fit-content;min-width:235px;max-width:100%}
.concl .k-container{display:grid;grid-template-columns:minmax(0,1fr);
  gap:var(--s-6);align-items:center}
.concl p{color:var(--c-ink-2);max-width:33rem}
@media (min-width:960px){
  .concl .k-container:has(> div + div img:not([width="1"])){
    max-width:calc(64rem + 2*var(--gutter));
    grid-template-columns:minmax(0,33rem) auto;gap:var(--s-8);
    justify-content:center}
  .concl .k-container > div + div{justify-self:start;display:grid;
    justify-items:start;width:auto}
  .concl img{width:auto;max-width:100%;max-height:420px}}
@media (max-width:959px){
  .concl .k-container > div + div{display:grid;justify-items:center}
  .concl img{width:65%;height:auto;max-width:280px}}
@media (max-width:719px){
  .tool-hero{padding-block:var(--s-5) var(--s-7)}
  .k-vitrine .display{max-width:none}
  .tho-under{gap:var(--s-2) var(--s-4)}}
.tool-hero{overflow-x:clip}
.k-scene,.tho-visual-box{position:relative;margin:0;width:100%;
  --env-t:color-mix(in srgb,var(--c-ink) 24%,transparent);--env-e:20px}
.tho-visual-box > .k-scene::before,.tho-visual-box > .k-scene::after{content:none}
@media (max-width:959px){.tho-visual-box:not(:has(.k-scene)){padding:var(--s-5)}}
.k-scene::before,.tho-visual-box::before{content:"";position:absolute;inset:0;z-index:0;border-radius:22px;
  background:radial-gradient(circle at center,color-mix(in srgb,var(--c-ink) 13%,transparent) 1px,transparent 1.2px) 0 0/24px 24px,
    color-mix(in srgb,var(--c-action) 4%,var(--c-bg))}
.k-scene::after,.tho-visual-box::after{content:"";position:absolute;inset:13px;z-index:0;pointer-events:none;
  background:linear-gradient(var(--env-t),var(--env-t)) 0 0/var(--env-e) 1px no-repeat,
    linear-gradient(var(--env-t),var(--env-t)) 0 0/1px var(--env-e) no-repeat,
    linear-gradient(var(--env-t),var(--env-t)) 100% 0/var(--env-e) 1px no-repeat,
    linear-gradient(var(--env-t),var(--env-t)) 100% 0/1px var(--env-e) no-repeat,
    linear-gradient(var(--env-t),var(--env-t)) 0 100%/var(--env-e) 1px no-repeat,
    linear-gradient(var(--env-t),var(--env-t)) 0 100%/1px var(--env-e) no-repeat,
    linear-gradient(var(--env-t),var(--env-t)) 100% 100%/var(--env-e) 1px no-repeat,
    linear-gradient(var(--env-t),var(--env-t)) 100% 100%/1px var(--env-e) no-repeat}
.k-scene > *,.tho-visual-box > *{position:relative;z-index:1}
.k-scene__label{position:absolute;bottom:100%;margin-bottom:6px;inset-inline-start:0;z-index:4;
  color:#fff;background:var(--c-frame);padding:4px var(--s-3);border-radius:var(--r-pill);box-shadow:var(--sh-1)}
.k-scene__label b{color:rgba(255,255,255,.88);font-weight:var(--fw-text)}
.k-scene__media{position:relative;border-radius:var(--r-2);overflow:hidden;background:var(--c-frame);
  border:1px solid color-mix(in srgb,var(--c-ink) 16%,transparent);
  box-shadow:0 20px 40px -22px rgba(17,20,23,.5),var(--sh-1)}
.k-scene__media video{display:block;width:100%;height:auto;filter:saturate(.78) brightness(.94)}
.k-scene__sortie{overflow:visible;z-index:2;
  box-shadow:0 32px 64px -28px rgba(17,20,23,.65),var(--sh-2)}
.k-scene__sortie video{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.k-scene__cliptag{position:absolute;bottom:100%;margin-bottom:6px;inset-inline-start:var(--s-4);z-index:4;
  background:var(--c-action);color:var(--c-on-action);box-shadow:var(--sh-1)}
@media (min-width:960px){
  .k-scene--recadrage .k-scene__source{position:absolute;left:28px;right:28px;top:58px}
  .k-scene--recadrage .k-scene__sortie{position:absolute;top:39%;bottom:-24px;
    left:calc(28px + var(--fx)*(100% - 28px));aspect-ratio:9/16;
    max-width:calc((100% - 28px)*(1 - var(--fx)) - 8px)}}
@media (max-width:959px){
  .k-scene::before{inset:0 calc(-1*var(--gutter));border-radius:0}
  .k-scene::after{display:none}
  .k-scene--recadrage{padding:46px 0 0}
  .k-scene--recadrage .k-scene__sortie{position:relative;width:48%;aspect-ratio:9/16;
    margin-top:-24%;margin-bottom:-24px;margin-inline-start:calc(var(--fx)*100%)}}
.k-scene--paire{display:grid;grid-template-columns:minmax(0,1fr);
  grid-template-rows:repeat(2,minmax(0,1fr));gap:var(--s-4);padding:28px}
.k-scene--paire .k-scene__source,.k-scene--paire .k-scene__sortie{
  position:relative;min-height:0;display:grid;place-items:center}
.k-scene--paire .k-scene__media{width:100%;height:100%;
  border-radius:var(--r-2);overflow:hidden}
.k-scene--paire .k-scene__sortie{width:100%;height:100%;aspect-ratio:auto;
  border-radius:var(--r-2);overflow:hidden;box-shadow:var(--sh-2)}
.k-scene--paire video{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
@media (max-width:959px){.k-scene--paire{gap:var(--s-4);padding:20px}}
.k-scene--parole{display:flex;align-items:stretch;gap:var(--s-5)}
.k-scene__video{flex:none;box-shadow:0 32px 64px -28px rgba(17,20,23,.65),var(--sh-2)}
.k-scene__video video{display:block;height:100%;width:auto;border-radius:inherit}
.k-parole{flex:1 1 auto;min-width:0;position:relative}
.k-parole p{position:absolute;left:0;right:0;bottom:19%;font-family:var(--f-sans);
  font-size:var(--fs-3);font-weight:var(--fw-ui);line-height:1.45;letter-spacing:-0.005em;
  color:var(--c-ink-3);text-wrap:pretty}
.k-parole span{transition:color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease);
  border-radius:var(--r-1);padding:0 .12em;margin:0 -.12em}
.k-parole .is-past{color:var(--c-ink-2)}
.k-parole .is-now{color:var(--c-ink);background:var(--c-action-soft)}
.k-scene__lien{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:3;
  filter:drop-shadow(0 0 2px rgba(255,255,255,.9)) drop-shadow(0 0 5px rgba(255,255,255,.55))}
.k-scene__lien path{fill:none;stroke:var(--c-action);stroke-width:2;stroke-opacity:.85;
  stroke-linecap:round;stroke-linejoin:round}
@media (min-width:960px){
  .k-scene--parole{padding:28px;height:100%}
  .k-scene__video,.k-parole{height:100%}}
@media (min-width:960px) and (max-width:1339px){
  .tho-visual-box:has(.k-scene--parole) .k-scene{inset:50% 0 auto 0;height:auto;
    transform:translateY(-50%)}
  .k-scene--parole{height:auto;align-items:stretch}
  .k-scene__video{flex:0 0 46%;height:auto;aspect-ratio:9/16}
  .k-scene__video video{width:100%;height:100%;object-fit:cover}
  .k-scene__video,.k-parole{height:auto}}
@media (max-width:959px){
  .k-scene--parole{padding:16px 0 0;gap:var(--s-4)}
  .k-scene__video,.k-parole{margin-bottom:-24px}
  .k-scene__video{flex:0 0 54%}
  .k-scene__video video{height:auto;width:100%}
  .k-parole p{font-size:var(--fs-2);line-height:1.5}}
@media (max-width:959px){
  .tho-grid:has(.k-scene){row-gap:0}
  .tho-grid:has(.k-scene) > .tho-col{display:contents}
  .tho-grid:has(.k-scene) > .tho-col > *{order:4}
  .tho-grid:has(.k-scene) > .tho-col > .tool-breadcrumb{order:1}
  .tho-grid:has(.k-scene) > .tho-col > .tho-head{order:2}
  .tho-grid:has(.k-scene) > .tho-visual{order:3;margin-top:var(--s-5)}
  .tho-grid:has(.k-scene) .k-import.tho-shell{margin-top:var(--s-7)}}
.tool-hero svg:not([width]):not(.k-icon){width:20px;height:20px;flex:none}
.tho-shell--plain{border:1px solid var(--c-line-strong);border-radius:var(--r-2);
  background:var(--c-surface);padding:var(--s-3);margin-top:var(--s-5)}
.tho-linkrow-row{display:grid;grid-template-columns:minmax(0,1fr) auto;
  gap:var(--s-2);align-items:center}
@media (max-width:559px){
  .tho-linkrow-row{grid-template-columns:minmax(0,1fr)}}
.tho-field{position:relative;display:block;min-width:0}
.tho-field-input{width:100%}
.tho-field-paste{position:absolute;top:50%;inset-inline-end:var(--s-2);
  transform:translateY(-50%);border:0;background:transparent;cursor:pointer;
  padding:var(--s-1) var(--s-2);border-radius:var(--r-1);
  font:inherit;font-size:var(--fs-1);font-weight:var(--fw-ui);color:var(--c-action)}
.tho-field-paste:hover{background:var(--c-action-soft)}
.tho-field-ic{color:var(--c-ink-3)}
.tho-primary{display:inline-flex;align-items:center;justify-content:center;
  gap:var(--s-2);min-height:var(--control-h);padding:0 var(--s-5);
  border-radius:var(--r-1);border:1px solid transparent;cursor:pointer;
  background:var(--c-action);color:var(--c-on-action);
  font-family:inherit;font-weight:var(--fw-ui);font-size:var(--fs-2);
  line-height:1.2;white-space:nowrap;
  transition:background-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}
.tho-primary:hover:not(:disabled){background:var(--c-action-hover)}
.tho-primary:active:not(:disabled){transform:translateY(1px)}
.tho-primary:disabled{opacity:.55;cursor:not-allowed}
.tho-primary--auto{width:auto}
@media (max-width:559px){.tho-linkrow-row .tho-primary{width:100%}}
.tho-ghost{background:transparent;color:var(--c-ink);border:1px solid var(--c-line-strong)}
.tho-textrow{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-3)}
.tho-textfield{position:relative;display:block;min-width:0}
.tho-textfield-input{display:block;width:100%;min-height:96px;resize:vertical;
  padding:var(--s-3) var(--s-4);border:1px solid var(--c-line-strong);
  border-radius:var(--r-1);background:var(--c-surface);color:var(--c-ink);
  font-family:inherit;font-size:var(--fs-2);line-height:var(--lh-body);
  transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}
.tho-textfield-input::placeholder{color:var(--c-ink-2);opacity:1}
.tho-textfield-input:hover{border-color:var(--c-ink-2)}
.tho-textfield-input:focus-visible{outline:none;border-color:var(--c-focus);
  box-shadow:0 0 0 3px var(--c-action-soft)}
.tho-textrow .tho-primary,.tho-textrow .k-btn{width:100%}
.tho-charcount{display:flex;justify-content:flex-end;gap:var(--s-2);
  margin-top:var(--s-2);font-size:var(--fs-1);color:var(--c-ink-2)}
.tho-charcount-limit{color:var(--c-danger)}
.segmented-toggle{display:inline-flex;gap:var(--s-1);padding:var(--s-1);
  border:1px solid var(--c-line);border-radius:var(--r-1);
  background:var(--c-surface-2);flex-wrap:wrap}
.tho-mode-toggle{margin-bottom:var(--s-4)}
.segmented-btn{display:inline-flex;align-items:center;gap:var(--s-2);
  min-height:var(--control-h-sm);padding:0 var(--s-4);border:0;cursor:pointer;
  border-radius:calc(var(--r-1) - 2px);background:transparent;color:var(--c-ink-2);
  font-family:inherit;font-size:var(--fs-1);font-weight:var(--fw-ui);
  transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}
.segmented-btn:hover{color:var(--c-ink)}
.segmented-btn.active{background:var(--c-surface);color:var(--c-ink);
  box-shadow:var(--sh-1)}
.segmented-btn svg{width:16px;height:16px;flex:none}
.script-field-block{margin-top:var(--s-4)}
.script-field-label-row{display:flex;align-items:baseline;gap:var(--s-2);
  margin-bottom:var(--s-2)}
.script-field-label{margin:0 0 var(--s-2);font-size:var(--fs-1);
  font-weight:var(--fw-ui);color:var(--c-ink-2)}
.script-field-label-row .script-field-label{margin-bottom:0}
.script-field-optional{font-size:var(--fs-0);color:var(--c-ink-2)}
.pill-select-row{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.pill-select-btn{min-height:var(--control-h-sm);padding:0 var(--s-4);
  border:1px solid var(--c-line-strong);border-radius:var(--r-pill);cursor:pointer;
  background:var(--c-surface);color:var(--c-ink-2);
  font-family:inherit;font-size:var(--fs-1);font-weight:var(--fw-ui);
  transition:background-color var(--t-fast) var(--ease),
             border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}
.pill-select-btn:hover{border-color:var(--c-ink-2);color:var(--c-ink)}
.pill-select-btn.active{background:var(--c-action);border-color:var(--c-action);
  color:var(--c-on-action)}
.script-examples{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);
  margin-top:var(--s-3)}
.script-examples-label{font-size:var(--fs-1);color:var(--c-ink-2)}
.script-example-chip{min-height:var(--control-h-sm);padding:0 var(--s-3);
  border:1px solid var(--c-line);border-radius:var(--r-pill);cursor:pointer;
  background:var(--c-surface);color:var(--c-ink-2);
  font-family:inherit;font-size:var(--fs-1);
  transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}
.script-example-chip:hover{background:var(--c-action-soft);color:var(--c-ink)}
.script-generate-wrap{margin-top:var(--s-5)}
.script-generate-wrap .tho-primary,.script-generate-wrap .k-btn{width:100%}
.field-with-icon{position:relative;display:block}
.field-with-icon > svg{position:absolute;top:50%;inset-inline-start:12px;
  transform:translateY(-50%);width:18px;height:18px;
  color:var(--c-ink-3);pointer-events:none}
.field-with-icon .chevron-icon{inset-inline-start:auto;inset-inline-end:var(--s-3)}
.field-with-icon > :is(input,select){width:100%;min-height:var(--control-h);
  padding:0 var(--s-4) 0 38px;border:1px solid var(--c-line-strong);
  border-radius:var(--r-1);background:var(--c-surface);color:var(--c-ink);
  font-family:inherit;font-size:var(--fs-2);
  transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}
.field-with-icon > :is(input,select)::placeholder{color:var(--c-ink-2);opacity:1}
.field-with-icon > :is(input,select):hover{border-color:var(--c-ink-2)}
.field-with-icon > :is(input,select):focus-visible{outline:none;
  border-color:var(--c-focus);box-shadow:0 0 0 3px var(--c-action-soft)}
.field-with-icon:has(.chevron-icon) > :is(input,select){padding-inline-end:var(--s-7)}
.ia-badge{display:inline-flex;align-items:center;gap:var(--s-1);
  padding:2px var(--s-2);border-radius:var(--r-pill);
  border:1px solid var(--c-line);background:var(--c-surface);
  color:var(--c-ink-2);font-size:var(--fs-0);font-weight:var(--fw-ui)}
.tool-auth-hint{margin-top:var(--s-3);font-size:var(--fs-1);color:var(--c-ink-2)}
.url-platforms-label{margin:var(--s-4) 0 var(--s-2);font-size:var(--fs-1);
  font-weight:var(--fw-ui);color:var(--c-ink-2)}
.tho-site-chip:not(.k-tag){display:inline-flex;align-items:center;min-height:26px;
  padding:0 var(--s-3);border:1px solid var(--c-line);border-radius:var(--r-pill);
  background:var(--c-surface);color:var(--c-ink-2);font-size:var(--fs-0)}
.url-format-toggle{display:inline-flex;gap:var(--s-1);padding:var(--s-1);
  margin-bottom:var(--s-3);border:1px solid var(--c-line);
  border-radius:var(--r-1);background:var(--c-surface-2)}
.url-format-btn{display:inline-flex;align-items:center;gap:var(--s-2);
  min-height:var(--control-h-sm);padding:0 var(--s-4);border:0;cursor:pointer;
  border-radius:calc(var(--r-1) - 2px);background:transparent;color:var(--c-ink-2);
  font-family:inherit;font-size:var(--fs-1);font-weight:var(--fw-ui)}
.url-format-btn.active{background:var(--c-surface);color:var(--c-ink);
  box-shadow:var(--sh-1)}
.url-format-btn svg{width:16px;height:16px;flex:none}
.fmt-ext{font-family:var(--f-mono);font-size:var(--fs-0);color:var(--c-ink-2)}
.url-free-limit-notice{margin-top:var(--s-3);font-size:var(--fs-1);
  color:var(--c-ink-2)}
.url-dl-linkrow{display:grid;gap:var(--s-3)}
.url-dl-linkrow .tho-primary{width:fit-content}
.tho-visual-box:has(.k-scene--telecharge){height:100%}
.tho-visual-box .k-scene--telecharge{position:relative;inset:auto}
.k-scene--telecharge{display:grid;grid-template-columns:minmax(0,1fr);
  align-content:center;padding:14px;height:100%}
.dl-scene-file{position:relative;width:100%;border-radius:var(--r-2);
  overflow:hidden;background:var(--c-frame);
  box-shadow:0 20px 40px -22px rgba(17,20,23,.5),var(--sh-1)}
.dl-scene-file img{display:block;width:100%;height:100%;object-fit:cover}
.dl-scene-tag{position:absolute;inset-inline-start:var(--s-3);bottom:var(--s-3);
  background:var(--c-action);color:var(--c-on-action);box-shadow:var(--sh-1)}
.tho-shell:not(.tho-shell--plain):not(.k-import){
  border:1px solid var(--c-line-strong);border-radius:var(--r-2);
  background:var(--c-surface);padding:var(--s-3);margin-top:var(--s-5);
  cursor:pointer}
.tho-shell:not(.k-import) .tho-dropcall-desktop:not(.k-drop){
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:var(--s-2);min-height:148px;padding:var(--s-5);
  border:1.5px dashed var(--c-line-strong);border-radius:var(--r-1);
  background:var(--c-surface);text-align:center;
  transition:border-color var(--t-fast) var(--ease),
             background-color var(--t-fast) var(--ease)}
.tho-shell:not(.k-import):hover .tho-dropcall-desktop:not(.k-drop){
  border-color:var(--c-action);background:var(--c-bg-2)}
.tho-shell.tho-drag .tho-dropcall-desktop:not(.k-drop){
  border-style:solid;border-color:var(--c-action);background:var(--c-action-soft)}
.tho-shell .tho-dropcall-title{margin:0;font-size:var(--fs-2);
  font-weight:var(--fw-ui);color:var(--c-ink)}
.tho-shell .tho-dropcall-ic{color:var(--c-action)}
.tho-shell .tho-dropcall-btnwrap{display:grid;margin-top:var(--s-4);width:100%}
.tho-shell .tho-dropcall-btnwrap :is(.k-btn,.tho-primary){width:100%}
.klm-sec{background:var(--c-bg-2);border-top:1px solid var(--c-line);
  padding-block:var(--section-y)}
.klm-title{margin:0;font-size:var(--fs-4);font-weight:var(--fw-title);
  letter-spacing:var(--ls-title);line-height:var(--lh-tight);color:var(--c-ink)}
.klm-lede{margin:var(--s-2) 0 0;color:var(--c-ink-2);line-height:var(--lh-body)}
.klm-grid{--klm-cols:5;display:flex;flex-wrap:wrap;justify-content:center;
  gap:var(--s-3);margin-top:var(--s-5)}
.klm-grid > *{flex:0 0 calc((100% - (var(--klm-cols) - 1)*var(--s-3))/var(--klm-cols))}
@media (max-width:1224px){.klm-grid{--klm-cols:4}}
@media (max-width:992px){.klm-grid{--klm-cols:3}}
@media (max-width:736px){.klm-grid{--klm-cols:2}}
@media (max-width:488px){.klm-grid{--klm-cols:1}}
.klm-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;
  gap:var(--s-3);min-height:56px;padding:var(--s-3);
  border:1px solid var(--c-line);border-radius:var(--r-2);
  background:var(--c-surface);text-decoration:none;color:var(--c-ink);
  transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}
.klm-card:hover{background:var(--c-surface-2);border-color:var(--c-line-strong)}
.klm-card.klm-here{border-style:dashed;background:var(--c-surface-2);
  cursor:default;pointer-events:none}
.klm-ic{display:inline-flex;color:var(--c-ink-3);flex:none}
.klm-ic svg{width:22px;height:22px;flex:none}
.klm-card:hover .klm-ic{color:var(--c-action)}
.klm-tx{min-width:0}
.klm-tx b{display:block;font-size:var(--fs-1);font-weight:var(--fw-ui);
  line-height:1.25}
.klm-sub{display:block;margin-top:2px;font-size:var(--fs-0);color:var(--c-ink-2)}
.klm-here .klm-sub{color:var(--c-action)}
.klm-chips{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-5)}
.klm-chip{display:inline-flex;align-items:center;gap:var(--s-2);
  min-height:var(--control-h-sm);padding:0 var(--s-4);
  border:1px solid var(--c-line);border-radius:var(--r-pill);
  background:var(--c-surface);color:var(--c-ink-2);text-decoration:none;
  font-size:var(--fs-1);
  transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}
.klm-chip:hover{border-color:var(--c-action);background:var(--c-action-soft)}
.klm-chip b{font-weight:var(--fw-ui);color:var(--c-ink)}
.klm-chip svg,.klm-arw{width:14px;height:14px;flex:none;color:var(--c-ink-3);
  transition:color var(--t-fast) var(--ease)}
.klm-chip:hover svg,.klm-chip:hover .klm-arw{color:var(--c-action)}
.klm-chip-all{border-color:var(--c-line-strong)}
.klm-chip-here{border-style:dashed;border-color:var(--c-action);
  background:var(--c-action-soft);color:var(--c-action);
  cursor:default;pointer-events:none}
.klm-chip-here b,.klm-chip-here-tag{color:var(--c-action)}
.klm-chip-here-tag{font-size:var(--fs-0);font-weight:var(--fw-ui)}
.klm-to{color:var(--c-action)}
.ht-copy{display:inline-flex;align-items:center;gap:var(--s-2);
  min-height:var(--control-h-sm);padding:0 var(--s-4);cursor:pointer;
  border:1px solid var(--c-line-strong);border-radius:var(--r-1);
  background:var(--c-surface);color:var(--c-ink);
  font-family:inherit;font-size:var(--fs-1);font-weight:var(--fw-ui);
  transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}
.ht-copy:hover{background:var(--c-surface-2);border-color:var(--c-ink-2)}
.ht-copy svg{width:16px;height:16px;flex:none}
.tool-hashtag-cats{padding-block:var(--section-y);background:var(--c-bg-2)}
.tool-hashtag-cats .container{width:100%;
  max-width:calc(var(--w-content) + 2*var(--gutter));
  margin-inline:auto;padding-inline:var(--gutter)}
.tool-hashtag-cats .feature-section-title{
  font-size:clamp(1.75rem,2.4vw,2.25rem);line-height:1.1;
  font-weight:var(--fw-title);color:var(--c-ink);max-width:24ch;margin:0}
.ht-intro{margin:var(--s-3) 0 0;font-size:var(--fs-2);color:var(--c-ink-2);
  line-height:var(--lh-body);max-width:var(--w-text)}
.ht-grid{display:grid;gap:var(--s-5);margin-top:var(--s-7);
  grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr))}
.ht-cat{display:grid;align-content:start;gap:var(--s-3);
  padding:var(--s-5);border:1px solid var(--c-line);border-radius:var(--r-3);
  background:var(--c-surface);box-shadow:var(--sh-1)}
.ht-cat h3{font-size:var(--fs-2);font-weight:var(--fw-title);color:var(--c-ink)}
.ht-tags{font-size:var(--fs-1);line-height:1.6;color:var(--c-ink-2);
  overflow-wrap:break-word}
.ht-cat .ht-copy{justify-self:start}
.processing-progress,.modal-card{--text:var(--c-ink);--text-muted:var(--c-ink-2);
  --primary-ink:var(--c-action);--error-ink:var(--c-danger)}
.processing-progress{padding-block:var(--s-7) var(--s-9)}
.kfil-card{width:100%;max-width:40rem;margin-inline:auto;
  background:var(--c-surface);border:1px solid var(--c-line);
  border-radius:var(--r-3);box-shadow:var(--sh-1);
  padding:var(--s-6) var(--s-6) var(--s-5)}
@media (min-width:600px){.kfil-card{padding:var(--s-7) var(--s-7) var(--s-6)}}
.kfil-kick{display:flex;align-items:baseline;justify-content:flex-end;
  gap:var(--s-3);padding-bottom:var(--s-4);margin-bottom:var(--s-5);
  border-bottom:1px solid var(--c-line)}
.kfil-kick-l{margin-right:auto;font-size:var(--fs-1);font-weight:var(--fw-ui);
  color:var(--c-ink-2)}
.kfil-kick-r{font-size:var(--fs-3);font-weight:var(--fw-title);color:var(--c-ink);
  font-variant-numeric:tabular-nums;line-height:1}
.kfil{list-style:none;margin:0;padding:0;display:grid;gap:0}
.kfil li{position:relative;display:grid;grid-template-columns:1.75rem 1fr;
  gap:var(--s-4);padding-bottom:var(--s-5)}
.kfil li:last-of-type{padding-bottom:0}
.kfil li::before{content:"";position:absolute;left:calc(1.75rem / 2 - 1px);
  top:1.75rem;bottom:0;width:2px;
  background:var(--c-line);border-radius:1px}
.kfil li:last-of-type::before{content:none}
.kfil li.done::before{background:var(--c-action)}
.kfil-pip{grid-column:1;display:grid;place-items:center;
  width:1.75rem;height:1.75rem;border-radius:var(--r-pill);
  border:2px solid var(--c-line);background:var(--c-surface);
  font-size:var(--fs-0);font-weight:var(--fw-ui);color:var(--c-ink-2);
  line-height:1;position:relative;z-index:1}
.kfil li.done .kfil-pip{background:var(--c-action);border-color:var(--c-action);
  color:var(--c-on-action)}
.kfil-pip svg{width:.85rem;height:.85rem}
.kfil li.now .kfil-pip{border-color:var(--c-action);background:var(--c-action-soft)}
.kfil-dot{width:.5rem;height:.5rem;border-radius:var(--r-pill);
  background:var(--c-action);animation:kfil-breathe 2.4s var(--ease) infinite}
@keyframes kfil-breathe{0%,100%{opacity:1}50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){.kfil-dot{animation:none}}
.kfil-t{font-size:var(--fs-2);font-weight:var(--fw-ui);color:var(--c-ink-2);
  line-height:var(--lh-snug)}
.kfil li.done .kfil-t,.kfil li.now .kfil-t{color:var(--c-ink)}
.kfil-d{margin:var(--s-2) 0 0;font-size:var(--fs-1);color:var(--c-ink-2);
  line-height:var(--lh-body);max-width:38ch}
.kfil-mini{margin-top:var(--s-3);height:4px;border-radius:2px;
  background:var(--c-line);overflow:hidden}
.kfil-mini span{display:block;height:100%;border-radius:2px;
  background:var(--c-action);transform-origin:left center;
  transition:transform var(--t-base) var(--ease)}
.kfil-elapsed{margin:var(--s-3) 0 0;font-size:var(--fs-0);color:var(--c-ink-2);
  font-variant-numeric:tabular-nums}
.kfil-plain{height:6px;border-radius:3px;background:var(--c-line);overflow:hidden}
.kfil-plain span{display:block;height:100%;border-radius:3px;
  background:var(--c-action);transform-origin:left center;
  transition:transform var(--t-base) var(--ease)}
.kfil-queue{text-align:center;padding-block:var(--s-4) 0}
.kfil-queue-n{font-size:var(--fs-5);font-weight:var(--fw-title);color:var(--c-action);
  line-height:1;font-variant-numeric:tabular-nums}
.kfil-queue-n+p{margin:var(--s-2) 0 0;font-size:var(--fs-1);color:var(--c-ink-2)}
.kfil-queue-t{margin-top:var(--s-4);font-size:var(--fs-3);
  font-weight:var(--fw-title);color:var(--c-ink);line-height:var(--lh-snug)}
.kfil-queue>p{margin:var(--s-3) auto 0;max-width:36ch;font-size:var(--fs-1);
  color:var(--c-ink-2);line-height:var(--lh-body)}
.kfil-note{display:flex;align-items:flex-start;gap:var(--s-3);
  margin-top:var(--s-5);padding:var(--s-4);border-radius:var(--r-2);
  background:var(--c-bg-2);color:var(--c-ink-2)}
.kfil-note svg{flex:none;width:1.15rem;height:1.15rem;margin-top:1px;
  color:var(--c-ink-3)}
.kfil-note p{margin:0;font-size:var(--fs-1);line-height:var(--lh-body)}
.kfil-note.ok{background:var(--c-action-soft);color:var(--c-ink)}
.kfil-note.ok svg{color:var(--c-action)}
.kfil-note.ok p{font-weight:var(--fw-ui)}
.kfil-note.info{background:var(--c-warn-soft)}
.kfil-note.info svg{color:var(--c-warn)}
.kfil-truth{display:flex;align-items:flex-start;gap:var(--s-3);
  margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--c-line)}
.kfil-truth svg{flex:none;width:1.15rem;height:1.15rem;margin-top:2px;
  color:var(--c-ink-3)}
.kfil-truth p{margin:0;font-size:var(--fs-1);line-height:var(--lh-body);
  color:var(--c-ink-2)}
.kfil-truth b{color:var(--c-ink);font-weight:var(--fw-ui)}
.kfil-foot{margin-top:var(--s-5);text-align:center}
.kfil-link{background:none;border:0;padding:var(--s-2) var(--s-3);
  font-family:inherit;font-size:var(--fs-1);font-weight:var(--fw-ui);
  color:var(--c-ink-2);cursor:pointer;border-radius:var(--r-1)}
.kfil-link:hover{color:var(--c-danger);text-decoration:underline}
.kfil-link:focus-visible{outline:2px solid var(--c-focus);outline-offset:2px}
.kfil-confirm{margin-top:var(--s-5);padding:var(--s-5);border-radius:var(--r-2);
  background:var(--c-danger-soft)}
.kfil-confirm>p{margin:0 0 var(--s-4);font-size:var(--fs-1);color:var(--c-ink);
  line-height:var(--lh-body)}
.kfil-confirm-acts{display:flex;flex-wrap:wrap;gap:var(--s-3)}
.kfil-confirm-acts .btn{flex:1 1 10rem}
.kfil-warn{margin:var(--s-3) 0 0;font-size:var(--fs-1);color:var(--c-danger)}
.kfil-mailrow{display:flex;flex-wrap:wrap;align-items:center;
  justify-content:center;gap:var(--s-3);width:min(40rem,100%);
  margin:var(--s-5) auto 0}
.kfil-mailrow p{margin:0;font-size:var(--fs-1);color:var(--c-ink-2)}
.kfil-mailrow button{min-height:var(--control-h-sm);padding:0 var(--s-4);
  border-radius:var(--r-1);border:1px solid var(--c-line-strong);
  background:var(--c-surface);font-family:inherit;font-size:var(--fs-1);
  font-weight:var(--fw-ui);color:var(--c-ink);cursor:pointer}
.kfil-mailrow button:hover{background:var(--c-surface-2)}
.kfil-mailrow button:disabled{opacity:.55;cursor:default}
.kfil-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.processing-progress .btn,.modal-card .btn{display:inline-flex;
  align-items:center;justify-content:center;gap:var(--s-2);
  min-height:var(--control-h);padding:0 var(--s-5);border-radius:var(--r-1);
  border:1px solid transparent;font-family:inherit;font-size:var(--fs-2);
  font-weight:var(--fw-ui);line-height:1.2;cursor:pointer;text-decoration:none;
  transition:background-color var(--t-fast) var(--ease),
             border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}
.processing-progress .btn-primary,.modal-card .btn-primary{
  background:var(--c-action);color:var(--c-on-action)}
.processing-progress .btn-primary:hover,.modal-card .btn-primary:hover{
  background:var(--c-action-hover)}
.processing-progress .btn-secondary,.modal-card .btn-secondary{
  background:var(--c-surface);color:var(--c-ink);border-color:var(--c-line-strong)}
.processing-progress .btn-secondary:hover,.modal-card .btn-secondary:hover{
  background:var(--c-surface-2)}
.modal-card .auth-field{position:relative;margin-top:var(--s-4)}
.modal-card .auth-field>svg{position:absolute;left:var(--s-4);top:50%;
  transform:translateY(-50%);width:1.15rem;height:1.15rem;
  color:var(--c-ink-3);pointer-events:none}
.modal-card .auth-field input{width:100%;min-height:var(--control-h);
  padding:0 var(--s-4) 0 calc(var(--s-4) * 2 + 1.15rem);
  border:1px solid var(--c-line-strong);border-radius:var(--r-1);
  background:var(--c-surface);color:var(--c-ink);font-family:inherit;
  font-size:var(--fs-2)}
.modal-card .auth-field input::placeholder{color:var(--c-ink-3)}
.modal-card .auth-field input:focus-visible{outline:2px solid var(--c-focus);
  outline-offset:1px}
body.atelier-active .tool-hero .tool-breadcrumb{display:none}
body.tool-processing .tool-hero{background:var(--c-bg-2)}
.script-generating-card{margin-top:var(--s-4);padding:var(--s-5);
  border:1px solid var(--c-line);border-radius:var(--r-2);
  background:var(--c-surface);box-shadow:var(--sh-1)}
.script-generating-status{display:flex;align-items:center;gap:var(--s-2);
  margin-bottom:var(--s-4)}
.script-generating-dot{flex:none;width:.5rem;height:.5rem;border-radius:var(--r-pill);
  background:var(--c-action);animation:kfil-breathe 2.4s var(--ease) infinite}
@media (prefers-reduced-motion:reduce){.script-generating-dot{animation:none}}
.script-generating-label{font-size:var(--fs-1);font-weight:var(--fw-ui);
  color:var(--c-ink-2)}
.script-generating-card .skeleton-bar{height:.75rem;margin-bottom:var(--s-3);
  border-radius:var(--r-1);background:var(--c-surface-2)}
.script-generating-card .skeleton-bar:last-child{margin-bottom:0}
.segmented-btn,.pill-select-btn,.script-example-chip{min-height:var(--control-h)}
.upload-hero:has(.tho-textrow) .tho-limits{text-transform:none;
  font-family:inherit;letter-spacing:normal;font-size:var(--fs-1)}
