/* Gutter — design system v2. Fuentes: Fraunces (logo), Space Grotesk (titulares),
   IBM Plex Sans (cuerpo), IBM Plex Mono (datos/utilidad). Paleta CMYK. */

:root{
  --paper:#FBFAF7; --surface:#FFFFFF; --surface-soft:#F1F1EC;
  --ink:#14171A; --ink-soft:#565A54; --ink-faint:#8A8D86;
  --cyan:#00AEEF; --magenta:#E5157A; --yellow:#FFCE00;
  --border:#E5E4DC;
  --shadow: 0 20px 50px -20px rgba(20,23,26,0.18);
  --shadow-sm: 0 8px 24px -12px rgba(20,23,26,0.14);
  --radius-lg: 20px; --radius-md: 12px; --radius-sm: 8px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--paper);color:var(--ink);font-family:'IBM Plex Sans',sans-serif;line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased;}
.wrap{max-width:1160px;margin:0 auto;padding:0 32px;}
a{color:inherit;}
img{max-width:100%;display:block;}

/* NAV */
header{padding:26px 0;}
nav.wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;}
.logo{font-family:'Fraunces',serif;font-weight:600;font-size:23px;letter-spacing:-0.01em;text-decoration:none;color:var(--ink);}
header .logo{display:inline-block;transform:translateY(-20%);}
.logo .dot{color:var(--magenta);}
.navlinks{display:flex;gap:32px;list-style:none;font-size:15px;}
.navlinks a{text-decoration:none;opacity:0.72;}
.navlinks a:hover{opacity:1;}
.navcta{font-family:'Space Grotesk',sans-serif;font-weight:500;font-size:14px;background:var(--ink);color:var(--paper);padding:11px 20px;border-radius:100px;text-decoration:none;white-space:nowrap;}
@media (max-width:760px){ .navlinks{display:none;} }

/* EYEBROW */
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:12.5px;background:#FDE9F1;color:#A30E52;padding:7px 14px;border-radius:100px;margin-bottom:20px;font-weight:500;}
.eyebrow-cyan{background:#E6F7FC;color:#00738F;}
.reg-dots{display:flex;gap:3px;}
.reg-dots span{width:6px;height:6px;border-radius:50%;display:block;}

/* TYPE */
h1{font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:-0.02em;line-height:1.05;}
h1.xl{font-size:52px;}
h1.lg{font-size:40px;}
h2{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:28px;letter-spacing:-0.01em;}
h3{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:19px;}
.hl{color:var(--magenta);}
p{color:var(--ink);}
.lede{font-size:18px;color:var(--ink-soft);max-width:60ch;}

/* SECTIONS */
section{padding:64px 0;border-top:1px solid var(--border);}
section.no-border{border-top:none;}
/* Respiro extra entre el hero y el separador de la sección siguiente: los badges de confianza
   (izq) y la tarjeta de precio (der) quedaban pegados a la línea. +44px sobre los 64 de base. */
.hero{padding-bottom:108px;}
@media (max-width:860px){ .hero{padding-bottom:80px;} }
.section-head{margin-bottom:36px;max-width:70ch;}

/* BUTTONS */
.btn-primary{background:var(--ink);color:var(--paper);font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:16px;padding:16px 26px;text-decoration:none;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:8px;border:none;cursor:pointer;}
.btn-secondary{font-family:'IBM Plex Mono',monospace;font-size:14px;text-decoration:none;padding:16px 4px;border-bottom:1px solid var(--border);}
.hero-ctas{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:28px;}

/* CARDS / BENTO */
.card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:28px;}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media (max-width:860px){ .grid-2,.grid-3,.grid-4{grid-template-columns:1fr;} }

/* CONSOLE (signature element) */
.console{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:28px;display:flex;flex-direction:column;}
.console-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;}
.console-title{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:0.05em;}
.reg-mark{display:flex;gap:6px;}
.reg-mark .d{width:10px;height:10px;border-radius:50%;opacity:0.25;transition:opacity .3s, transform .3s;}
.reg-mark .d.on{opacity:1;transform:scale(1.15);}
.d-c{background:var(--cyan);} .d-m{background:var(--magenta);} .d-y{background:var(--yellow);} .d-k{background:var(--ink);}
.log{flex:1;display:flex;flex-direction:column;gap:2px;font-family:'IBM Plex Mono',monospace;font-size:13.5px;}
.log-line{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:10px;opacity:0;transform:translateY(6px);transition:opacity .35s, transform .35s;}
.log-line.show{opacity:1;transform:translateY(0);}
.log-line.done{background:var(--surface-soft);}
.log-check{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;color:transparent;}
.log-line.done .log-check{background:var(--ink);border-color:var(--ink);color:var(--paper);}
.log-text{color:var(--ink-soft);}
.log-line.done .log-text{color:var(--ink);}
.console-foot{margin-top:20px;padding-top:18px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;}
.console-foot .price{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:26px;}
.console-foot .label{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--ink-soft);}

/* CALCULATOR (precio) */
.calc{display:grid;grid-template-columns:1.05fr 0.95fr;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;}
.calc-inputs{padding:36px;border-right:1px solid var(--border);}
.calc-output{padding:36px;background:var(--ink);color:var(--paper);}
.field{margin-bottom:26px;}
.field label{display:block;font-family:'IBM Plex Mono',monospace;font-size:12.5px;text-transform:uppercase;letter-spacing:0.04em;color:var(--ink-soft);margin-bottom:10px;}
.pages-row{display:flex;align-items:center;gap:16px;}
input[type="range"]{flex:1;accent-color:var(--magenta);height:2px;}
input[type="number"]{width:76px;font-family:'IBM Plex Mono',monospace;font-size:16px;border:1px solid var(--border);background:var(--paper);color:var(--ink);padding:8px;text-align:center;border-radius:var(--radius-sm);}
.help{font-size:13px;color:var(--ink-faint);margin-top:8px;}
.upload-btn{margin-top:10px;font-family:'IBM Plex Mono',monospace;font-size:13px;border:1px dashed var(--border);padding:10px 14px;display:inline-block;color:var(--cyan);cursor:pointer;background:none;border-radius:var(--radius-sm);}
.radios{display:flex;gap:10px;flex-wrap:wrap;}
.radio-pill,.mini-pill{font-family:'IBM Plex Sans',sans-serif;font-size:14px;border:1px solid var(--border);padding:9px 16px;cursor:pointer;background:var(--paper);color:var(--ink);border-radius:100px;}
.radio-pill.active,.mini-pill.active{background:var(--ink);color:var(--paper);border-color:var(--ink);}
select{width:100%;font-family:'IBM Plex Sans',sans-serif;font-size:14.5px;border:1px solid var(--border);background:var(--paper);color:var(--ink);padding:10px;border-radius:var(--radius-sm);}
.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid var(--border);}
.toggle-row .t-label{font-size:15px;}
.toggle-row .t-sub{font-size:13px;color:var(--ink-faint);}
.switch{position:relative;width:42px;height:24px;background:var(--border);cursor:pointer;flex-shrink:0;border-radius:100px;}
.switch.on{background:var(--magenta);}
.switch .knob{position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--paper);border-radius:50%;transition:left .15s;}
.switch.on .knob{left:21px;}
.price-big{font-family:'Space Grotesk',sans-serif;font-size:52px;font-weight:700;line-height:1;margin-bottom:4px;}
.price-caption{font-size:13px;color:#B9BCB5;margin-bottom:26px;}
.breakdown{border-top:1px solid rgba(251,250,247,0.15);padding-top:16px;}
.b-row{display:flex;justify-content:space-between;font-family:'IBM Plex Mono',monospace;font-size:13.5px;padding:6px 0;color:#CFD2C7;}
.b-row.total{color:var(--paper);border-top:1px solid rgba(251,250,247,0.15);margin-top:6px;padding-top:12px;font-size:14.5px;}
.includes{margin:20px 0;font-size:13.5px;color:#CFD2C7;}
.includes li{list-style:none;padding:4px 0;}
.cta-block{display:block;text-align:center;background:var(--paper);color:var(--ink);font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:16px;padding:16px;text-decoration:none;margin-top:22px;border-radius:var(--radius-md);}
.trust{font-size:12.5px;color:#9BA097;text-align:center;margin-top:14px;line-height:1.7;}
@media (max-width:860px){ .calc{grid-template-columns:1fr;} .calc-inputs{border-right:none;border-bottom:1px solid var(--border);} }

/* PRECIO · hero de dos columnas (copy + snippet | calculadora resumida) */
.price-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:stretch;}
.price-hero-copy{display:flex;flex-direction:column;}
.price-hero-copy .eyebrow{align-self:flex-start;}
.price-hero-copy .trust-bar{margin-top:auto;}
.price-mini{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;}
.price-mini-inputs{padding:30px 32px 28px;}
.price-mini-output{margin-top:auto;background:var(--ink);color:var(--paper);padding:26px 32px 30px;}
.price-mini-output .price-caption{margin-bottom:20px;}
.mini-cta{display:block;text-align:center;background:linear-gradient(120deg,var(--cyan),var(--magenta));color:#fff;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:15.5px;padding:15px;text-decoration:none;border-radius:var(--radius-md);}
@media (max-width:860px){ .price-hero{grid-template-columns:1fr;gap:28px;} .price-hero-copy .trust-bar{margin-top:20px;} }

/* STEPS (pliegos) */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.step{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:28px;}
.step .mark{display:flex;align-items:center;gap:8px;margin-bottom:16px;}
.mark-tick{width:9px;height:9px;border-radius:50%;background:var(--magenta);}
.mark-num{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--magenta);}
.step h3{margin-bottom:8px;}
.step p{font-size:15px;color:var(--ink-soft);}
@media (max-width:860px){ .steps{grid-template-columns:1fr;} }

/* LISTS */
.check-list{list-style:none;}
.check-list li{padding:14px 0;border-bottom:1px solid var(--border);font-size:15.5px;display:flex;gap:12px;}
.check-list li:last-child{border-bottom:none;}
.check-list .ico{color:var(--magenta);font-family:'IBM Plex Mono',monospace;flex-shrink:0;}

/* TABLES */
table.data{width:100%;border-collapse:collapse;font-size:15px;}
table.data th{font-family:'IBM Plex Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:0.04em;color:var(--ink-soft);text-align:left;padding:10px 14px;border-bottom:1px solid var(--ink);}
table.data td{padding:14px;border-bottom:1px solid var(--border);}
table.data td:first-child{}
.mono{font-family:'IBM Plex Mono',monospace;}
.badge-accent{color:var(--magenta);font-weight:500;}

/* FAQ */
.faq-item{border-bottom:1px solid var(--border);padding:20px 0;}
.faq-item h3{margin-bottom:8px;}
.faq-item p{font-size:15px;color:var(--ink-soft);}

/* CTA BANNER */
.cta-banner{background:var(--ink);color:var(--paper);border-radius:var(--radius-lg);padding:48px;text-align:center;}
.cta-banner h2{color:var(--paper);margin-bottom:14px;}
.cta-banner p{color:#C9CCC5;margin-bottom:24px;}
.cta-banner .btn-primary{background:var(--paper);color:var(--ink);}

/* FOOTER */
footer{padding:48px 0 32px;border-top:1px solid var(--border);}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px;margin-bottom:32px;}
.foot-col h4{font-family:'IBM Plex Mono',monospace;font-size:12.5px;text-transform:uppercase;letter-spacing:0.05em;color:var(--ink-faint);margin-bottom:14px;}
.foot-col ul{list-style:none;}
.foot-col li{padding:5px 0;}
.foot-col a{text-decoration:none;font-size:14.5px;opacity:0.8;}
.foot-col a:hover{opacity:1;}
.foot-legal{font-size:13px;color:var(--ink-faint);}
.foot-bottom{border-top:1px solid var(--border);padding-top:20px;display:flex;justify-content:space-between;font-size:13px;color:var(--ink-faint);font-family:'IBM Plex Mono',monospace;flex-wrap:wrap;gap:10px;}
@media (max-width:860px){ .foot-grid{grid-template-columns:1fr;} }

/* TRUST BAR */
.trust-bar{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px;}
.trust-badge{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:100px;padding:9px 16px;font-size:13.5px;font-family:'IBM Plex Sans',sans-serif;box-shadow:var(--shadow-sm);}
.trust-badge .ico{width:16px;height:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:var(--magenta);}
.security-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
@media (max-width:860px){ .security-grid{grid-template-columns:1fr;} }
.security-item{display:flex;gap:14px;align-items:flex-start;}
.security-item .num{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--magenta);flex-shrink:0;padding-top:3px;}
.security-item h3{font-size:16px;margin-bottom:4px;}
.security-item p{font-size:14.5px;color:var(--ink-soft);}
.legal-body h2{font-size:20px;margin:32px 0 12px;}
.legal-body h2:first-child{margin-top:0;}
.legal-body p, .legal-body li{font-size:15px;color:var(--ink-soft);margin-bottom:12px;}
.legal-body table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px;}
.legal-body table th, .legal-body table td{border:1px solid var(--border);padding:10px;text-align:left;}
.legal-body ul{padding-left:20px;}
.legal-updated{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--ink-faint);margin-bottom:32px;}

/* APP SHELL (área privada) */
body.app{background:var(--surface-soft);}
.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;}
.app-sidebar{background:var(--paper);border-right:1px solid var(--border);padding:24px 20px;display:flex;flex-direction:column;}
.app-sidebar .logo{margin-bottom:36px;}
.app-nav{list-style:none;display:flex;flex-direction:column;gap:2px;flex:1;}
.app-nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:var(--radius-sm);text-decoration:none;font-size:14.5px;color:var(--ink-soft);}
.app-nav a.active{background:var(--ink);color:var(--paper);}
.app-nav a:hover:not(.active){background:var(--surface-soft);}
.app-sidebar-foot{border-top:1px solid var(--border);padding-top:16px;font-size:13px;color:var(--ink-faint);}
.app-main{padding:36px 40px;max-width:960px;}
.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;}
.app-header h1{font-size:26px;}
@media (max-width:860px){ .app-shell{grid-template-columns:1fr;} .app-sidebar{display:none;} .app-main{padding:24px;} }

/* STATUS BADGES */
.status{display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:12px;padding:5px 12px;border-radius:100px;}
.status::before{content:"";width:6px;height:6px;border-radius:50%;}
.status-pagado{background:var(--surface-soft);color:var(--ink-soft);}
.status-pagado::before{background:var(--ink-faint);}
.status-procesando{background:#E6F7FC;color:#00738F;}
.status-procesando::before{background:var(--cyan);}
.status-listo{background:var(--surface-soft);color:var(--ink);}
.status-listo::before{background:var(--ink);}
.status-rechazado{background:#FDE9F1;color:#A30E52;}
.status-rechazado::before{background:var(--magenta);}

/* ORDERS TABLE */
.orders-table{width:100%;border-collapse:collapse;}
.orders-table th{font-family:'IBM Plex Mono',monospace;font-size:11.5px;text-transform:uppercase;letter-spacing:0.04em;color:var(--ink-faint);text-align:left;padding:10px 16px;border-bottom:1px solid var(--border);}
.orders-table td{padding:16px;border-bottom:1px solid var(--border);font-size:14.5px;}
.orders-table tr{cursor:pointer;}
.orders-table tr:hover td{background:var(--surface-soft);}
.orders-table .title{font-weight:500;}
.orders-table .meta{font-size:13px;color:var(--ink-faint);}

/* TIMELINE */
.timeline{display:flex;gap:0;margin:8px 0 32px;}
.tl-step{flex:1;text-align:center;position:relative;padding-top:22px;}
.tl-step::before{content:"";position:absolute;top:5px;left:0;right:0;height:2px;background:var(--border);}
.tl-step:first-child::before{left:50%;}
.tl-step:last-child::before{right:50%;}
.tl-dot{position:absolute;top:0;left:50%;transform:translateX(-50%);width:12px;height:12px;border-radius:50%;background:var(--border);}
.tl-step.done .tl-dot{background:var(--ink);}
.tl-step.done::before{background:var(--ink);}
.tl-step.current .tl-dot{background:var(--cyan);}
.tl-label{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--ink-faint);}
.tl-step.done .tl-label, .tl-step.current .tl-label{color:var(--ink);}

/* FORM (login/facturación) */
.form-field{margin-bottom:18px;}
.form-field label{display:block;font-family:'IBM Plex Mono',monospace;font-size:12.5px;text-transform:uppercase;letter-spacing:0.04em;color:var(--ink-soft);margin-bottom:8px;}
.form-field input[type="text"], .form-field input[type="email"], .form-field input[type="password"]{width:100%;font-family:'IBM Plex Sans',sans-serif;font-size:15px;border:1px solid var(--border);background:var(--paper);color:var(--ink);padding:12px 14px;border-radius:var(--radius-sm);}
.divider-or{display:flex;align-items:center;gap:12px;margin:22px 0;font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--ink-faint);}
.divider-or::before, .divider-or::after{content:"";flex:1;height:1px;background:var(--border);}

/* SEGURIDAD · barrido de verificación: una luz cian-magenta recorre las líneas del manuscrito de
   arriba a abajo en bucle, terminando cada pasada con un check en degradado de marca. */
.scan-wrap{position:relative;width:260px;max-width:100%;height:340px;background:var(--surface);
  border:1.5px solid var(--border);border-radius:10px;box-shadow:var(--shadow-sm);padding:34px 30px;overflow:hidden;}
.scan-line{height:6px;background:var(--surface-soft);border-radius:3px;margin-bottom:18px;}
.scan-beam{position:absolute;left:0;right:0;height:54px;
  background:linear-gradient(180deg,transparent,rgba(0,174,239,.18),rgba(229,21,122,.18),transparent);
  animation:sweep 2.8s ease-in-out infinite;}
@keyframes sweep{0%{top:-54px;} 100%{top:340px;}}
.scan-check{position:absolute;bottom:18px;right:18px;width:34px;height:34px;border-radius:50%;
  background:linear-gradient(135deg,var(--cyan),var(--magenta));color:#fff;font-size:17px;opacity:0;
  display:flex;align-items:center;justify-content:center;animation:appear 2.8s ease-in-out infinite;}
@keyframes appear{0%,70%{opacity:0;transform:scale(.6);} 85%,100%{opacity:1;transform:scale(1);}}
@media (prefers-reduced-motion:reduce){
  .scan-beam{animation:none;top:42%;}
  .scan-check{animation:none;opacity:1;transform:scale(1);}
}

/* HOME · más color de marca (F): acento CMYK en tarjetas, iconos de lista y botón secundario */
.card--accent{border-top:3px solid var(--cyan);}
.card--accent + .card--accent{border-top-color:var(--magenta);}
.check-list .ico{color:var(--magenta);font-weight:600;}
.btn-secondary.btn-secondary--accent{border-bottom-color:var(--cyan);color:var(--ink);}

/* FOOTER · hueco de reseñas verificadas (E) — sin logo ni puntuación hasta tener cuenta real */
.foot-reviews{display:inline-flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--ink-faint);border:1px dashed var(--border);border-radius:999px;padding:6px 14px;}
.foot-reviews .dots{display:flex;gap:3px;}
.foot-reviews .dots i{width:6px;height:6px;border-radius:50%;display:block;}

/* REGLA DEL SITIO · fila de animación: copy (h2 + texto) a la IZQUIERDA, animación grande a la DERECHA */
.anim-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;}
@media (max-width:860px){ .anim-grid{grid-template-columns:1fr;gap:30px;} }
.anim-copy h2{margin:10px 0 0;}
.anim-stage{display:flex;justify-content:center;align-items:center;}

/* PRECIO · decodificación tipográfica: manuscrito.docx se transforma carácter a carácter (scramble)
   en interior.pdf + libro.epub, en degradado de marca y con cursor parpadeante. El scramble lo mueve
   el JS (assets/js/main.js), respetando prefers-reduced-motion. */
.decode-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px;width:100%;max-width:440px;}
.decode-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;}
.decode-tag{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--ink-faint);letter-spacing:.04em;}
.decode-body{background:var(--paper);border:1px solid var(--border);border-radius:10px;padding:34px 26px;min-height:150px;display:flex;align-items:center;justify-content:center;}
.scramble{font-family:'IBM Plex Mono',monospace;font-weight:500;font-size:clamp(18px,3vw,26px);line-height:1.4;
  background:linear-gradient(120deg,var(--cyan),var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent;
  word-break:break-word;text-align:center;}
.scr-cursor{display:inline-block;width:2px;height:1.05em;vertical-align:-3px;margin-left:5px;background:var(--magenta);animation:scr-blink 1s steps(1) infinite;}
@keyframes scr-blink{50%{opacity:0;}}
@media (prefers-reduced-motion:reduce){
  .scr-cursor{animation:none;}
}

/* Bloque con fondo tenue (rompe el blanco) — p. ej. "Pensado para Amazon KDP" en Precio */
.section-tint{background:var(--surface-soft);}
/* Variante alta de la animación de decodificación (+110px) */
.decode-card.tall .decode-body{min-height:260px;}

/* HOME/PILAR · demo de chat en bucle: el usuario pide un cambio, la IA "piensa" (puntos) y responde.
   El ritmo lo controla el JS (assets/js/main.js). Respeta prefers-reduced-motion (muestra el hilo fijo). */
.chatd{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px 22px;width:100%;max-width:440px;}
.chatd-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border);}
.chatd-title{font-size:13.5px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:8px;}
.chatd-title .ai-dot{width:20px;height:20px;border-radius:50%;flex:0 0 auto;background:linear-gradient(120deg,var(--cyan),var(--magenta));}
.chatd-log{display:flex;flex-direction:column;gap:10px;min-height:236px;}
.chatd-msg{font-size:14px;line-height:1.45;padding:10px 14px;border-radius:14px;max-width:84%;opacity:0;transform:translateY(8px);animation:chatd-in .32s ease forwards;}
.chatd-msg.user{align-self:flex-end;background:var(--ink);color:var(--paper);border-bottom-right-radius:4px;}
.chatd-msg.ai{align-self:flex-start;background:var(--surface-soft);color:var(--ink);border-bottom-left-radius:4px;}
@keyframes chatd-in{to{opacity:1;transform:translateY(0);}}
.chatd-typing{align-self:flex-start;background:var(--surface-soft);border-radius:14px;border-bottom-left-radius:4px;padding:13px 16px;display:flex;gap:5px;}
.chatd-typing i{width:7px;height:7px;border-radius:50%;display:block;animation:chatd-blink 1.2s infinite;}
.chatd-typing i:nth-child(1){background:var(--cyan);} .chatd-typing i:nth-child(2){background:var(--magenta);animation-delay:.2s;} .chatd-typing i:nth-child(3){background:var(--yellow);animation-delay:.4s;}
@keyframes chatd-blink{0%,60%,100%{opacity:.3;transform:translateY(0);}30%{opacity:1;transform:translateY(-3px);}}

/* Chat en grande (hero del pilar KDP): +100px */
.chatd.tall .chatd-log{min-height:336px;}
/* Tabla con acento sutil de marca: subrayado magenta en la cabecera + códigos de tamaño en cian */
table.data--accent th{border-bottom:2px solid var(--magenta);}
.data--accent td.mono{color:var(--cyan);}

/* Selector de idioma en el header (ES/EN/PT). Enlaces root-relative a la página
   equivalente en cada idioma; el idioma actual va resaltado. */
.langsel{display:flex;align-items:center;gap:2px;margin-right:14px;
  font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:500;}
.langsel a{text-decoration:none;color:var(--ink);opacity:0.5;padding:3px 7px;
  border-radius:7px;letter-spacing:0.03em;transition:opacity .15s,background .15s;}
.langsel a:hover{opacity:1;background:rgba(0,0,0,0.05);}
.langsel a.active{opacity:1;font-weight:600;color:var(--magenta);}
@media (max-width:760px){ .langsel{margin-right:8px;font-size:12px;} .langsel a{padding:3px 5px;} }
