/* ============================================================
   IAEmprendedores.MX — estilo compartido de páginas interiores
   Mismos tokens que la portada: no toques los colores de marca.
   Azul #4fa8ff · Cian #00ccff · Violeta #6030c8
   ============================================================ */
:root{
  --bg:#06070d; --bg-elev:#0b0f1e; --bg-card:#101632; --bg-card-2:#0d1226;
  --line:#1f2748; --line-soft:#161c38;
  --blue:#4fa8ff; --cyan:#00ccff; --violet:#6030c8; --violet-soft:#8b5cf6;
  --text:#eef1fb; --text-muted:#8a93b8; --text-dim:#5b6389;
  --green:#7fd620; --gold:#ffc864; --red:#ff5d6c;
  --grad-text: linear-gradient(90deg, var(--cyan) 0%, var(--blue) 50%, var(--violet-soft) 100%);
  --grad-main: linear-gradient(115deg, var(--blue) 0%, var(--cyan) 45%, var(--violet) 100%);
  --radius:16px; --radius-sm:10px; --maxw:1180px; --readw:760px;
  --font-display:'Montserrat','Segoe UI',system-ui,-apple-system,sans-serif;
  --font-body:'Space Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-mono:'JetBrains Mono',ui-monospace,'SFMono-Regular',Consolas,monospace;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);
  font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
ul,ol{list-style:none;}
button{font-family:inherit;cursor:pointer;}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:4px;}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:900;letter-spacing:-0.01em;line-height:1.12;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.read{max-width:var(--readw);margin:0 auto;padding:0 28px;}
.grad-text{background:var(--grad-text);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;}
.eyebrow{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--cyan);display:inline-flex;align-items:center;gap:8px;font-weight:600;}
.eyebrow::before{content:'▸';color:var(--violet-soft);}
.skip-link{position:absolute;left:-9999px;background:var(--blue);color:#04060f;padding:10px 16px;
  border-radius:0 0 8px 0;font-weight:700;z-index:100;}
.skip-link:focus{left:0;top:0;}

/* ---------- barra superior ---------- */
.topbar{position:sticky;top:0;z-index:50;background:rgba(6,7,13,.86);
  backdrop-filter:blur(14px);border-bottom:1px solid var(--line-soft);}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;
  height:64px;max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.brand{display:flex;align-items:center;gap:9px;font-family:var(--font-display);
  font-weight:900;font-size:1.02rem;letter-spacing:-.02em;}
.brand-dot{width:11px;height:11px;border-radius:3px;background:var(--grad-main);}
.brand span{color:var(--blue);}
.topbar nav{display:flex;gap:20px;align-items:center;font-size:.9rem;color:var(--text-muted);}
.topbar nav a:hover{color:var(--text);}
.topbar .btn-sm{background:var(--grad-main);color:#04060f;font-weight:800;font-size:.83rem;
  padding:9px 15px;border-radius:9px;white-space:nowrap;}
.brand{min-width:0;}                    /* permite que se encoja en pantallas chicas */
.topbar nav{flex-shrink:0;}
@media(max-width:720px){
  .topbar nav .hide-sm{display:none;}
  .topbar-inner{padding:0 16px;gap:12px;}
  .brand{font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
}
@media(max-width:400px){
  .brand{font-size:.86rem;}
  .topbar .btn-sm{padding:8px 12px;font-size:.78rem;}
}

/* ---------- botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 24px;border-radius:11px;font-weight:700;font-size:.96rem;border:1px solid transparent;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.btn-primary{background:var(--grad-main);color:#04060f;
  box-shadow:0 8px 26px -10px rgba(79,168,255,.6);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 34px -10px rgba(79,168,255,.7);}
.btn-ghost{border-color:var(--line);color:var(--text);background:var(--bg-card-2);}
.btn-ghost:hover{border-color:var(--blue);}

/* ---------- cabecera de página ---------- */
.page-head{padding:64px 0 34px;border-bottom:1px solid var(--line-soft);position:relative;overflow:hidden;}
.page-head::after{content:'';position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(circle,rgba(79,168,255,.10) 1px,transparent 1px);
  background-size:26px 26px;
  mask-image:radial-gradient(ellipse 80% 70% at 50% 0%,black 30%,transparent 100%);}
.page-head h1{font-size:clamp(1.9rem,4.4vw,3rem);margin:14px 0 16px;position:relative;}
.page-head .lede{color:var(--text-muted);font-size:1.05rem;max-width:640px;position:relative;}
.crumbs{font-family:var(--font-mono);font-size:.72rem;color:var(--text-dim);
  letter-spacing:.08em;margin-bottom:6px;position:relative;}
.crumbs a{color:var(--blue);}

/* ---------- ficha técnica del tutorial ---------- */
.spec{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;position:relative;}
.spec-item{background:var(--bg-card);border:1px solid var(--line);border-radius:999px;
  padding:7px 14px;font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);}
.spec-item b{color:var(--cyan);font-weight:700;}

/* ---------- cuerpo del artículo ---------- */
.article{padding:44px 0 20px;}
.article h2{font-size:1.5rem;margin:44px 0 14px;}
.article h2:first-child{margin-top:0;}
.article h3{font-size:1.13rem;margin:28px 0 10px;color:var(--text);}
.article p{color:#c9cfe6;margin-bottom:16px;}
.article strong{color:var(--text);}
.article ul.bullets{margin:0 0 20px;}
.article ul.bullets li{position:relative;padding-left:22px;margin-bottom:9px;color:#c9cfe6;}
.article ul.bullets li::before{content:'▸';position:absolute;left:0;color:var(--violet-soft);}
.article a.inline{color:var(--blue);text-decoration:underline;text-underline-offset:3px;}

/* ---------- pasos numerados ---------- */
.step{border-left:2px solid var(--line);padding:0 0 34px 26px;position:relative;margin-left:8px;}
.step:last-child{border-left-color:transparent;padding-bottom:8px;}
.step::before{content:attr(data-step);position:absolute;left:-17px;top:0;
  width:32px;height:32px;border-radius:9px;background:var(--bg-card);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-mono);font-size:.78rem;font-weight:700;color:var(--cyan);}
.step h3{margin-top:2px;font-size:1.18rem;}

/* ---------- caja de prompt copiable ---------- */
.promptbox{background:var(--bg-card-2);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;margin:16px 0 20px;}
.promptbox-head{display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--bg-elev);border-bottom:1px solid var(--line);padding:10px 14px;}
.promptbox-head span{font-family:var(--font-mono);font-size:.72rem;color:var(--text-dim);letter-spacing:.06em;}
.copy-btn{background:transparent;border:1px solid var(--line);color:var(--cyan);
  font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.08em;
  padding:6px 12px;border-radius:7px;transition:all .18s ease;}
.copy-btn:hover{border-color:var(--cyan);background:rgba(0,204,255,.08);}
.copy-btn.done{color:var(--green);border-color:rgba(127,214,32,.5);}
.promptbox pre{padding:18px;font-family:var(--font-mono);font-size:.83rem;line-height:1.7;
  color:#d5dcf5;white-space:pre-wrap;word-break:break-word;}
.promptbox mark{background:rgba(139,92,246,.18);color:var(--violet-soft);
  border-radius:3px;padding:1px 4px;font-weight:700;}

/* ---------- resultado esperado ---------- */
.expect{background:rgba(79,168,255,.05);border:1px solid rgba(79,168,255,.2);
  border-left:3px solid var(--blue);border-radius:var(--radius-sm);padding:16px 18px;margin:0 0 20px;}
.expect b{display:block;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;
  color:var(--blue);text-transform:uppercase;margin-bottom:7px;}
.expect p{margin:0;font-size:.94rem;color:#c9cfe6;}

/* ---------- avisos ---------- */
.note{border-radius:var(--radius-sm);padding:15px 17px;margin:0 0 20px;font-size:.92rem;}
.note-warn{background:rgba(255,200,100,.06);border:1px solid rgba(255,200,100,.28);}
.note-warn b{color:var(--gold);}
.note-info{background:var(--bg-card);border:1px solid var(--line);}
.note-info b{color:var(--cyan);}
.note p{margin:0;color:#c9cfe6;}
.note p+p{margin-top:9px;}

/* ---------- tabla por giro ---------- */
.giros{width:100%;border-collapse:collapse;margin:6px 0 24px;font-size:.92rem;
  border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
.giros th{background:var(--bg-elev);text-align:left;padding:12px 14px;
  font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--cyan);border-bottom:1px solid var(--line);}
.giros td{padding:13px 14px;border-bottom:1px solid var(--line-soft);color:#c9cfe6;vertical-align:top;}
.giros tr:last-child td{border-bottom:0;}
.giros td:first-child{color:var(--text);font-weight:700;white-space:nowrap;}
.tabla-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}

/* ---------- tarjetas de tutorial ---------- */
.tut-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;margin-top:26px;}
.tut-card{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--line);
  border-radius:var(--radius);padding:24px 22px;transition:border-color .2s ease,transform .2s ease;}
.tut-card:hover{border-color:var(--blue);transform:translateY(-3px);}
.tut-card.soon{opacity:.62;}
.tut-card.soon:hover{transform:none;border-color:var(--line);}
.tut-num{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.12em;
  color:var(--violet-soft);font-weight:700;}
.tut-card h3{font-size:1.1rem;margin:9px 0 8px;}
.tut-card p{color:var(--text-muted);font-size:.92rem;flex:1;}
.tut-meta{margin-top:14px;font-family:var(--font-mono);font-size:.68rem;
  color:var(--text-dim);letter-spacing:.05em;}
.badge-soon{display:inline-block;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;
  border:1px solid var(--line);border-radius:999px;padding:3px 9px;color:var(--text-dim);margin-left:8px;}

/* ---------- bloque de venta contextual ---------- */
.sell{background:linear-gradient(140deg,var(--bg-card) 0%,var(--bg-card-2) 100%);
  border:1px solid var(--line);border-radius:var(--radius);padding:30px 28px;margin:46px 0 10px;
  display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;}
.sell h3{font-size:1.28rem;margin-bottom:9px;}
.sell p{color:var(--text-muted);font-size:.95rem;margin:0;}
.sell-price{font-family:var(--font-mono);font-size:.8rem;color:var(--text-dim);
  margin-top:12px;display:block;}
@media(max-width:760px){ .sell{grid-template-columns:1fr;} }

/* ---------- documentos legales ---------- */
.legal{padding:40px 0 60px;}
.legal h2{font-size:1.24rem;margin:38px 0 12px;padding-top:8px;}
.legal h3{font-size:1rem;margin:22px 0 8px;color:var(--cyan);}
.legal p,.legal li{color:#c9cfe6;font-size:.95rem;}
.legal ol.num{counter-reset:n;margin:0 0 18px;}
.legal ol.num li{counter-increment:n;position:relative;padding-left:26px;margin-bottom:9px;}
.legal ol.num li::before{content:counter(n)'.';position:absolute;left:0;
  color:var(--violet-soft);font-family:var(--font-mono);font-weight:700;font-size:.85rem;}
.legal ul.bullets li{position:relative;padding-left:22px;margin-bottom:9px;}
.legal ul.bullets li::before{content:'▸';position:absolute;left:0;color:var(--violet-soft);}
.legal .updated{font-family:var(--font-mono);font-size:.75rem;color:var(--text-dim);}
.legal a{color:var(--blue);text-decoration:underline;text-underline-offset:3px;}
.toc{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);
  padding:20px 22px;margin:26px 0 6px;}
.toc b{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;
  color:var(--cyan);text-transform:uppercase;display:block;margin-bottom:10px;}
.toc li{margin-bottom:6px;font-size:.92rem;}
.toc a{color:var(--text-muted);text-decoration:none;}
.toc a:hover{color:var(--blue);}

/* ---------- pie ---------- */
footer{border-top:1px solid var(--line-soft);padding:40px 0 46px;margin-top:60px;}
footer p{color:var(--text-dim);font-size:.82rem;line-height:1.7;}
.foot-links{display:flex;flex-wrap:wrap;gap:18px;margin:16px 0;font-size:.86rem;}
.foot-links a{color:var(--text-muted);}
.foot-links a:hover{color:var(--blue);}

@media(prefers-reduced-motion:reduce){
  *{animation:none !important;transition:none !important;}
  html{scroll-behavior:auto;}
}
