/* unealta.v2.css: ce au in plus cele 13 pagini de unelte (audit, cutia, calculatorul, cele 10 landinguri) fata de stiva paginii de
   vanzare. Nascuta 21 septembrie 2026, odata cu generatorul din JSON (construieste_unelte.py): un singur sablon al casei pentru toate
   uneltele, cu formularul in primul ecran si puntea catre biblioteca la capat. v1 era foaia propagatorului cu marcaje (antet, punte,
   podea de 44 px peste paginile vechi); ramane publicata, imutabila, nefolosita.
   Se incarca DUPA fonts.css, motor.v1.css, carcasa-plus.v1.css, tabel.v2.css, nivel3.v1.css si acces.v2.css (de unde vin .pagina,
   .sus, .eticheta, .erou, .sect, .grila, .rand, .dovada, .faq, .buton, .firimituri, .card-punte, .bara-cta, .pastila si keyframes
   `lucire`) si INAINTE de telefon.v1.css si subsol.v1.css. Aici stau: eroul uneltei cu MASINA (formularul) in primul ecran, bara de
   dovezi, randurile punctate, puntea cu pret, cutia, calculatorul si restilizarea fluxului auditului (clasele lui app.js).
   Nicio cifra nu sta aici: toate vin din JSON si de la proprietari, prin generator. /assets/* e imutabil un an: versiunea sta in nume. */

.sare-la{position:absolute;left:-9999px;z-index:100}
.sare-la:focus{left:1rem;top:1rem;background:var(--arde);color:var(--gol);padding:.5rem 1rem;border-radius:8px}

/* ---------- bara de dovezi: trei cifre cu proprietar, urca de la 0 (unealta.v2.js) ---------- */
.dovada--unealta{margin-top:26px;grid-template-columns:repeat(3,1fr)}
.dovada--unealta b{font-variant-numeric:tabular-nums;color:var(--lumina)}
.dovada--unealta > div{padding:22px 18px}

/* ---------- eroul: promisiunea in stanga, masina in dreapta; pe telefon masina vine imediat sub titlu ---------- */
.erou--unealta{min-height:auto;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:5vw;align-items:center;padding:34px 0 36px}
.erou--unealta h1{font-size:clamp(2.2rem,4.6vw,3.6rem);max-width:16ch}
.erou--unealta p.sub{margin-top:18px;max-width:46ch}
.erou__text{min-width:0}
.erou__obiect{min-width:0}
.erou--audit .erou__text .masina{margin-top:24px;max-width:520px}

/* ---------- masina: formularul uneltei, singurul loc cald al primului ecran ---------- */
.masina{position:relative;display:block;padding:22px 24px 22px;border-radius:18px;border:1px solid rgba(255,207,110,.44);
  background:linear-gradient(165deg,rgba(255,207,110,.1),rgba(238,242,248,.02));box-shadow:0 30px 80px -44px rgba(255,207,110,.35);
  color:inherit;text-decoration:none;max-width:560px;margin-left:auto}
.masina__et{display:block;margin:0 0 6px;font-family:'Geist Mono',monospace;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--lumina-2)}
.masina input[type=text],.masina input[type=email],.masina input[type=number]{width:100%;min-height:48px;padding:10px 14px;border-radius:12px;
  border:1px solid var(--metal);background:var(--carena-2);color:var(--lumina);font:inherit;font-size:17px;margin-bottom:14px}
.masina input::placeholder{color:var(--lumina-3)}
.masina input:focus-visible{outline:2px solid var(--sistem);outline-offset:2px}
.masina .caseta{display:flex;align-items:flex-start;gap:10px;min-height:44px;margin:2px 0 12px;font-size:13.5px;line-height:1.45;color:var(--lumina-2);cursor:pointer}
.masina .caseta input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--arde)}
.masina .caseta a{color:var(--lumina);text-decoration:none;box-shadow:inset 0 -1px 0 rgba(238,242,248,.35)}
.buton--masina{margin:0;width:100%;justify-content:center;position:relative;overflow:hidden;min-height:52px;font:inherit;font-size:15px;font-weight:500;
  cursor:pointer;color:inherit;border-radius:999px;border:1px solid rgba(255,207,110,.4);background:rgba(255,207,110,.08)}
.buton--masina:hover{background:rgba(255,207,110,.16);border-color:rgba(255,207,110,.7);transform:translateY(-2px)}
.buton--masina:disabled{opacity:.55;cursor:default;transform:none}
/* lucirea: aceeasi trecere de lumina ca pe butonul de plata (keyframes `lucire` din acces.v2.css); oprita la reduced-motion */
.buton--masina::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(115deg,transparent 30%,rgba(255,207,110,.3) 50%,transparent 70%);
  transform:translateX(-130%);animation:lucire 4.5s ease-in-out 1.2s infinite}
.masina .mesaj{margin:12px 0 0;min-height:1.4em;font-size:14.5px;color:var(--lumina)}
.masina .mesaj:empty{display:none}
.masina .mesaj.eroare{color:var(--arde)}
.masina__onest{margin:12px 0 0;font-size:12.5px;line-height:1.5;color:var(--lumina-3)}
.masina__onest a{color:var(--lumina-2);text-decoration:none;box-shadow:inset 0 -1px 0 rgba(238,242,248,.25)}
.masina__onest.demo{margin-top:6px}
.masina .eroare{margin:-6px 0 10px;font-size:13px;color:var(--arde)}

/* cutia: cardul bibliotecii in locul masinii */
.masina--hub{display:block}
.masina--hub .masina__cifra{display:flex;align-items:baseline;gap:14px;margin:6px 0 0}
.masina--hub .masina__cifra b{font-size:clamp(2.4rem,4vw,3.2rem);font-weight:500;letter-spacing:-.03em;line-height:1;color:var(--lumina)}
.masina--hub .masina__cifra span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lumina-2);line-height:1.5}
.masina--hub .masina__text{margin:14px 0 18px;font-size:14.5px;color:var(--lumina-2)}
.masina--hub .buton--masina{display:inline-flex;align-items:center;gap:14px;padding:14px 22px}
.masina--hub:hover .buton--masina{background:rgba(255,207,110,.16);border-color:rgba(255,207,110,.7)}

/* calculatorul: patru campuri, rezultatul mare */
.masina__grila{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.masina--calc input{margin-bottom:12px}
.rez{display:none;margin-top:6px;padding:18px 20px;border-radius:14px;border:1px solid rgba(111,240,200,.2);background:rgba(7,11,17,.85)}
.rez__scor{margin:0;font-size:clamp(2.6rem,4.4vw,3.4rem);font-weight:500;letter-spacing:-.03em;line-height:1;color:var(--arde)}
.rez__verdict{margin:10px 0 0;font-size:14.5px;line-height:1.5;color:var(--lumina)}

/* ---------- ce masuram: randurile punctate, din motor ---------- */
.verificari .rand{align-items:center}
.verificari .rand--verif{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:6px 14px}
.verificari .rand__nr{font-style:normal;font-size:12px;letter-spacing:.1em;color:var(--arde)}
.verificari .rand p{font-size:15.5px;font-weight:500}
.verificari .rand p small{font-weight:400}
.verificari .rand b{justify-self:end}

/* ---------- puntea: cardul cu pretul, la capatul fiecarei unelte ---------- */
.punte .punte__card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px 40px;align-items:center;padding:30px 32px;border-radius:18px;
  border:1px solid rgba(255,207,110,.44);background:linear-gradient(165deg,rgba(255,207,110,.1),rgba(238,242,248,.02));
  box-shadow:0 30px 80px -44px rgba(255,207,110,.35)}
.punte__et{display:flex;align-items:center;gap:10px;margin:0;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--lumina-2)}
.punte__et s{display:inline-block;width:22px;height:1px;background:var(--arde);text-decoration:none}
.punte h2{margin:14px 0 10px;font-size:clamp(1.6rem,3vw,2.3rem);max-width:22ch}
.punte__text p{margin:0;color:var(--lumina-2);font-size:15.5px;line-height:1.55;max-width:60ch}
.punte__scoala{margin-top:12px!important;color:var(--lumina)!important}
.punte__scoala b{color:var(--arde);font-weight:500}
.punte__actiuni{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:22px}
.punte__actiuni .buton{margin:0}
.punte__secundar{display:inline-flex;align-items:center;min-height:44px;padding:4px 0;color:var(--lumina-2);font-size:14.5px;text-decoration:none;
  box-shadow:inset 0 -1px 0 rgba(238,242,248,.25);transition:color .25s,box-shadow .25s}
.punte__secundar:hover{color:var(--lumina);box-shadow:inset 0 -1px 0 var(--lumina)}
.punte__pret{text-align:right;font-family:'Geist Mono',monospace;font-variant-numeric:tabular-nums}
.punte__pret b{display:block;font-size:clamp(2.6rem,4.4vw,3.6rem);font-weight:500;letter-spacing:-.03em;line-height:1;color:var(--lumina)}
.punte__unit{display:block;margin-top:8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lumina-2);line-height:1.5}
.punte__lectie{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:12px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--arde)}
.punte__lectie::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--arde);box-shadow:0 0 10px 2px rgba(255,207,110,.6);flex:none}

/* ---------- cutia: cardurile uneltelor ---------- */
.cutie{margin-top:34px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.unealta-card strong{font-size:1.15rem}

/* ---------- auditul: fluxul lui app.js, in limbajul casei ---------- */
.linie-handle{display:flex;align-items:center;min-height:48px;margin-bottom:14px;border:1px solid var(--metal);border-radius:12px;background:var(--carena-2)}
.linie-handle .at{padding:0 4px 0 14px;font-family:'Geist Mono',monospace;color:var(--lumina-3)}
.masina .linie-handle input{flex:1;min-width:0;margin:0;border:0;background:transparent;padding-left:4px;min-height:46px}
.linie-handle:focus-within{outline:2px solid var(--sistem);outline-offset:2px}
.masina .linie-handle input:focus-visible{outline:none}
.pedometru{display:grid;justify-items:center;gap:14px;margin-left:auto}
.cadran{width:clamp(220px,24vw,300px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 38%,var(--carena-2),var(--carena) 70%);
  border:1px solid var(--metal-2);position:relative;overflow:hidden;
  box-shadow:inset 0 0 0 10px var(--carena),inset 0 -18px 34px rgba(0,0,0,.6),0 30px 80px -30px rgba(255,207,110,.25)}
/* tamburul arata O cifra pe coloana (fereastra de 1em, ca un contor mecanic); app.js o muta cu translateY(-N em) */
.tambur{position:absolute;left:0;right:0;top:50%;height:1em;overflow:hidden;transform:translateY(-56%);display:flex;justify-content:center;
  font-size:clamp(3.4rem,7vw,4.4rem)}
.coloana{height:auto;overflow:visible;width:.95em;font-family:'Geist Mono',monospace;font-weight:500;
  font-variant-numeric:tabular-nums;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.coloana span{display:block;height:1em;line-height:1;text-align:center;color:var(--lumina)}
.fanta{position:absolute;left:14%;right:14%;top:auto;bottom:24%;height:1px;background:var(--arde);opacity:.7;box-shadow:0 0 10px 1px rgba(255,207,110,.5)}
.uri{display:flex;gap:6px}
.uri span{width:28px;height:6px;border-radius:3px;background:var(--metal)}
.uri span.plin{background:var(--arde);box-shadow:0 0 8px rgba(255,207,110,.7)}
.sub-cadran{margin:0;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lumina-3)}
.pas{padding:46px 0;border-top:1px solid rgba(238,242,248,.07)}
.pas h2{font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:22px;max-width:24ch}
.sub-pas{color:var(--lumina-2);margin-bottom:14px}
.grila-op{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:10px}
.grila-op button{min-height:56px;padding:14px 16px;text-align:left;font:inherit;font-size:15.5px;color:var(--lumina);cursor:pointer;border-radius:12px;
  border:1px solid rgba(238,242,248,.1);background:linear-gradient(165deg,rgba(238,242,248,.045),rgba(238,242,248,.012));
  transition:border-color .25s,transform .25s}
.grila-op button:hover{border-color:rgba(255,207,110,.6);transform:translateY(-2px)}
.platforme button{display:grid;gap:2px}
.platforme button strong{font-size:1.1rem;font-weight:500}
.platforme button small{color:var(--lumina-2);font-size:13px}
.bife{border:0;margin:22px 0 0;padding:0;display:grid;gap:10px}
.bifă{display:flex;gap:10px;align-items:flex-start;min-height:44px;font-size:15px;color:var(--lumina)}
.bifă input{width:20px;height:20px;margin-top:2px;accent-color:var(--arde);flex:none}
.scor{padding:46px 0;border-top:1px solid rgba(238,242,248,.07)}
.scor .pedometru{margin:0 auto 26px}
.scor h2{text-align:center;font-size:clamp(1.5rem,3vw,2.2rem);margin:0 auto 22px;max-width:26ch}
.sub-verdict{text-align:center;color:var(--lumina-2);font-size:14.5px;margin:-10px auto 26px;max-width:60ch}
.piloni{display:grid;gap:10px;margin-bottom:30px}
.pilon{display:grid;grid-template-columns:12rem minmax(0,1fr) 4rem;gap:14px;align-items:center}
.pilon .nume{font-size:14px;color:var(--lumina-2)}
.pilon .bara{height:8px;background:var(--carena-2);border-radius:6px;overflow:hidden}
.pilon .bara i{display:block;height:100%;background:var(--arde);box-shadow:0 0 10px rgba(255,207,110,.6);width:0;transition:width 1s ease}
.pilon .valoare{text-align:right;font-family:'Geist Mono',monospace;font-variant-numeric:tabular-nums;color:var(--lumina)}
.pilon .valoare small{color:var(--lumina-3);font-weight:400;font-size:11px}
.pilon.blocat .nume,.pilon.blocat .valoare{color:var(--lumina-3)}
.pilon.blocat .bara i{background:var(--metal-3);box-shadow:none}
.defecte{display:grid;gap:12px;margin-bottom:26px}
.defect{padding:18px 20px;border-radius:14px;border:1px solid rgba(238,242,248,.09);border-left:3px solid var(--arde);
  background:linear-gradient(165deg,rgba(238,242,248,.045),rgba(238,242,248,.012))}
.defect h4{font-size:1.05rem;font-weight:500;margin-bottom:6px}
.defect h4 small{color:var(--lumina-3);font-weight:400;font-family:'Geist Mono',monospace;font-size:11px;margin-left:6px}
.defect p{color:var(--lumina-2);font-size:15px}
.defect.blocat{border-left-color:var(--metal-3)}
.defect.blocat .text-blocat{filter:blur(4px);user-select:none}
.badge{display:inline-block;margin-top:8px;font-family:'Geist Mono',monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--lumina-2);border:1px solid rgba(238,242,248,.14);border-radius:999px;padding:4px 10px}
.prima-miscare{padding:20px 22px;border-radius:14px;border:1px solid rgba(111,240,200,.3);background:rgba(7,11,17,.85);margin-bottom:26px}
.prima-miscare h3{font-size:1.05rem;font-weight:500;margin-bottom:6px;color:var(--sistem)}
.prima-miscare p{font-size:15.5px;color:var(--lumina)}
.teaser{padding:18px 22px;border-radius:14px;border:1px dashed rgba(238,242,248,.18);margin-bottom:26px}
.teaser h3{font-size:1rem;font-weight:500;margin-bottom:8px}
.teaser ul{margin:0;padding:0;list-style:none;font-size:14.5px;color:var(--lumina-2)}
.teaser li{padding:5px 0 5px 18px;position:relative}
.teaser li::before{content:"";position:absolute;left:0;top:14px;width:7px;height:1px;background:var(--arde)}
.gate-email{max-width:560px;margin:0}
.gate-email h3{font-size:clamp(1.3rem,2.6vw,1.8rem);margin-bottom:8px}
.gate-email__p{color:var(--lumina-2);font-size:14.5px;margin-bottom:16px}
#form-lead{display:block}
.honeypot{position:absolute;left:-9999px;opacity:0;height:0;width:0}
#link-raport{display:inline-flex;align-items:center;gap:14px;padding:14px 22px;width:auto;margin-top:12px;text-decoration:none}
#link-raport[hidden]{display:none}
.spinner{width:42px;height:42px;border:3px solid var(--metal);border-top-color:var(--arde);border-radius:50%;margin:20px 0;animation:roteste .9s linear infinite}
@keyframes roteste{to{transform:rotate(360deg)}}
.pas .eroare,.scor .eroare{color:var(--arde);font-size:14px}
.reveala{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.reveala.vizibila{opacity:1;transform:none}
.bară-mica{display:none}

/* ---------- telefon si tableta ---------- */
@media(max-width:1000px){
  .erou--unealta{grid-template-columns:minmax(0,1fr);gap:0;padding-top:10px}
  .erou--unealta h1{font-size:clamp(1.95rem,8.2vw,2.7rem)}
  /* masina vine imediat sub titlu, ca sa stea in primul ecran; subtitlul coboara dupa ea */
  .erou__text,.erou__obiect{display:contents}
  .erou--unealta h1{order:1}
  .erou--unealta .masina{order:2;margin:18px 0 0;max-width:none;padding:18px 16px 18px}
  .erou--unealta p.sub{order:3;margin-top:18px}
  .erou--unealta .dovada--unealta{order:4;margin-top:18px}
  .erou--unealta .pedometru{order:5;display:none}
  /* primul ecran pe telefon: eticheta cu led si treapta „i-vory Studio” a firimiturilor pleaca (logoul e deja acolo), ca titlul si
     butonul masinii sa incapa la 375 pe 667 */
  .pagina--unealta .sus .eticheta{display:none}
  .pagina--unealta .firimituri > a:first-child,.pagina--unealta .firimituri > a:first-child + i{display:none}
  .dovada--unealta{grid-template-columns:repeat(3,1fr)}
  .dovada--unealta > div{padding:14px 10px 16px}
  .dovada--unealta b{font-size:1.25rem}
  .dovada--unealta span{font-size:11px;margin-top:5px}
  .masina__grila{grid-template-columns:1fr}
  .masina .caseta{font-size:13px}
  .buton--masina{width:100%}
  .verificari .rand--verif{grid-template-columns:28px minmax(0,1fr);gap:4px 10px;padding:14px 16px}
  .verificari .rand b{grid-column:2;justify-self:start;font-size:1rem}
  .punte .punte__card{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 18px}
  .punte__pret{text-align:left;padding-top:16px;border-top:1px solid rgba(238,242,248,.09)}
  .punte__lectie{justify-content:flex-start}
  .punte__actiuni .buton{width:100%;justify-content:center}
  .scor .pedometru{display:none}
  .bară-mica{display:flex;align-items:baseline;justify-content:center;gap:10px;margin:0 auto 22px;padding:14px 16px;border-radius:14px;
    border:1px solid var(--metal);background:var(--carena);font-family:'Geist Mono',monospace;font-size:2.2rem;font-weight:500;
    font-variant-numeric:tabular-nums;color:var(--lumina)}
  .bară-mica span:last-child{font-family:'Geist',sans-serif;font-size:13px;color:var(--lumina-2)}
  .pilon{grid-template-columns:7.5rem minmax(0,1fr) 3.2rem;gap:10px}
  .pilon .nume{font-size:13px}
  .grila-op{grid-template-columns:1fr}
  .grila-op button{min-height:52px}
  .pas{padding:34px 0}
}
@media(prefers-reduced-motion:reduce){
  .buton--masina::after{animation:none}
  .buton--masina,.grila-op button,.punte__secundar,.coloana,.pilon .bara i{transition:none}
  .reveala{opacity:1;transform:none;transition:none}
  .spinner{animation-duration:2.5s}
  .buton--masina:hover,.grila-op button:hover{transform:none}
}
